Sun Java System Directory Server Enterprise Edition 6.0 管理指南

间接 CoS 的示例

间接 CoS 命名 cosIndirectSpecifier 属性中的某个属性,以查找特定于每个目标的模板。间接 CoS 的模板条目可以是目录中的任何条目,包括其他用户条目。此间接 CoS 示例使用目标条目的 manager 属性标识 CoS 模板条目。模板条目是经理的用户条目。经理的用户条目包含要生成的属性的值。在本案例中,该值为 departmentNumber 的值。

以下命令将创建间接 CoS 定义条目,此条目包含 cosIndirectDefinition 对象类:


$ ldapmodify -a -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w -
dn: cn=generateDeptNum,ou=People,dc=example,dc=com
objectclass: top
objectclass: LDAPsubentry
objectclass: cosSuperDefinition
objectclass: cosIndirectDefinition
cosIndirectSpecifier: manager
cosAttribute: departmentNumber

接下来,将 cosTemplate 对象类添加到模板条目,并确保这些条目定义要生成的属性。在此示例中,所有经理条目都是模板:


$ ldapmodify -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w -
dn: cn=Carla Fuentes,ou=People,dc=example,dc=com
changetype: modify
add: objectclass
objectclass: cosTemplate
-
add: departmentNumber
departmentNumber: 318842

使用此 CoS,包含 manager 属性的目标条目(位于 ou=People,dc=example,dc=com 下的条目)将自动包含经理的部门编号。将在目标条目上计算 departmentNumber 属性,因为服务器中不存在该属性。但是,departmentNumber 属性将作为目标条目的一部分返回。例如,如果将 Babs Jensen 的经理定义为 Carla Fuentes,其部门编号如下所示:


$ ldapsearch -h host1 -p 1389 -D cn=admin,cn=Administrators,cn=config -w - \
 -b "ou=People,dc=example,dc=com" -s sub "(cn=*Jensen)"
dn: cn=Babs Jensen,ou=People,dc=example,dc=com
cn: Babs Jensen
...
manager: cn=Carla Fuentes,ou=People,dc=example,dc=com
departmentNumber: 318842