对于每个映射的 NIS+ 对象,nisplusLDAPobjectDN 都会设置对象数据在 LDAP DIT 中所处的位置。它还允许指定在删除 LDAP 项之后要执行的操作。每个 nisplusLDAPobjectDN 值都有三部分。第一部分指定从何处读取 LDAP 数据,第二部分指定将 LDAP 数据写入何处,第三部分指定在删除 LDAP 数据时应当发生的情况。请参阅以下示例:
nisplusLDAPobjectDN rpc_table:\ cn=rpc,ou=nisPlus,?base?\ objectClass=nisplusObjectContainer:\ cn=rpc,ou=nisPlus,?base?\ objectClass=nisplusObjectContainer,\ objectClass=top |
以上示例说明应当从 DN cn=rpc,ou=nisPlus 读取 rpc.org_dir 表对象(由于该值以逗号结尾,并附加了 defaultSearchBase 属性的值),搜索范围为 base,ObjectClass 属性的值为 nisplusObjectContainer 的项处于选中状态。
将该表对象写入同一个位置中。缺少删除规范,这表示执行缺省操作,如下所示。如果该 NIS+ 表对象被删除,则整个 LDAP 项也应当被删除。
如果应当从 LDAP 读取数据,而不应当向其中写入数据,请忽略写入部分(以及用于将写入部分与读取部分分开的冒号)。
nisplusLDAPobjectDN rpc_table:\ cn=rpc,ou=nisPlus,?base?\ objectClass=nisplusObjectContainer |
请注意,nisplusObjectContainer 对象类不属于 RFC 2307。为了使用它,必须按照映射表项以外的 NIS+ 对象中的详细说明来配置 LDAP 服务器。
对于 rpc.org_dir 表项,可以使用以下示例:
nisplusLDAPobjectDN rpc:ou=Rpc,?one?objectClass=oncRpc:\ ou=Rpc,?one?objectClass=onRpc,objectClass=top |
以上示例说明如何从基 ou=Rpc 读取和向其中写入表项。而且,结尾的逗号还会附加 defaultSearchBase 值。选择 objectClass 属性的值为 oncRpc 的项。当在 LDAP 中的 ou=Rpc 容器中创建项时,还必须将 top 指定为 objectClass 值。
请考虑以下示例中说明的非缺省删除规范:
nisplusLDAPobjectDN user_attr:\ ou=People,?one?objectClass=SolarisUserAttr,\ solarisAttrKeyValue=*:\ ou=People,?one?objectClass=SolarisUserAttr:\ dbid=user_attr_del |
user_attr.org_dir 数据驻留在 ou=People LDAP 容器中,该容器由这些数据和来自其他源(如 passwd.org_dir NIS+ 表)的帐户信息共享。
在该容器中选择具有 solarisAttrKeyValue 属性的项,因为只有这些项才包含 user_attr.org_dir 数据。nisplusLDAPobjectDN 的 dbid=user_attr_del 部分说明在删除 user_attr.org_dir NIS+ 表中的某个项时,应当按照 user_attr_del 数据库 ID 所标识的规则集内的规则删除相应的 LDAP 项(如果有的话)。有关更多信息,请参见nisplusLDAPcolumnFromAttribute 属性。