LDAP 的乐趣 - objectClass 属性

作者:Tom Adelstein

好的 - 我实际上喜欢并享受 LDAP,但请不要让它影响您的判断。 我学习 LDAP 花费的时间和精力比 Bind 和/或 DNS 多得多。 我还记得坐在 DNS 章节前,想知道为什么我们需要另一种语言来做像将友好的名称映射到 IP 地址这样简单的事情。 尽管如此,这种术语的东西还是有价值的,例如可以抑制失眠。

所以,如果您需要一些睡眠,并且不介意使用“多得多”之类的短语的作者,那么我们可以继续讨论 objectClass 的概念。 我们玩得开心吗?

LDAP 目录中的条目,就像电话簿或联系人列表中的条目一样,需要 objectClass 属性,并且至少需要一个值。 这不是很合乎常理吗?

将 objectClass 值视为一个模板,用于存储在条目中的信息,或者使术语在命名空间中完整。

我们还没有涉及专有名称和相对专有名称,但请假装您知道它们的含义。 在下面的示例中,将“组织单元”视为一个分层文件系统的顶部,其下有分支。

我们的目录的顶部是 ou=computers,dc=centralsoft,dc=org。 因此,如果您想查找 centralsoft.org 中计算机的列表,您将在目录中找到一个名为 computers 的区域。 Computers 将以纯英文形式显示在您的 LDAP 浏览器中,简单地显示为“Computers”,其下方是一个或多个计算机。

用 LDAP 术语来说,设置计算机目录区域如下所示:


dn: ou=computers,dc=centralsoft,dc=org
objectclass: organizationalUnit
ou: computers
pc: wkst01
description: Container for all computers existing within the centralsoft.org domain (centralsoft.org 域中所有计算机的容器)

我们在本例中使用的 objectClass 属性是 "pc"。目录目前只包含一个 "pc",即 "wkst01"。 您也可以轻松地使用 "srv01" 代表 "server01"。 但这不是重点。

当然,从技术上讲,RFC 定义了我们在 LDAP 模式中找到的许多属性。 例如,RFC 2256 定义了 telephoneNumber 的属性,这对于联系人列表的普通用户来说,直观上是完全合理的(反讽)。

我们只是触及了 objectClass 讨论的表面。 如果此时没有太多意义,请不要担心。 只要知道在 LDAP 的语言或术语中,您必须了解 objectClass 属性,否则您将无法构建 LDAP 目录。

加载 Disqus 评论