使用 Oracle® Solaris 11.2 目录和命名服务:LDAP

退出打印视图

更新时间: 2014 年 7 月
 
 

使用 Member 属性指定组成员关系

RFC 草稿 rfc2307bis 指定 groupOfMembers 对象类还可以用作组服务的 LDAP 项的方便结构化类。然后,组项可以具有以标识名 (Distinguished Names, DN) 指定组成员关系的 member 属性值。Oracle Solaris LDAP 客户机支持这样的组项并使用 member 属性值进行组成员关系解析。

LDAP 客户机还支持使用 groupOfUniqueNames 对象类和 uniqueMember 属性的组项。不过,建议不要使用此对象类和属性。

为组项定义 posixGroup 对象类和 memberUid 属性的现有方法仍然受支持。这种类型的组项仍然是在为组服务置备 LDAP 服务器时由 ldapaddent 命令创建的。它不向组项添加 member 属性。

要为组项添加 groupOfMembers 对象类和 member 属性值,请使用 ldapadd 工具和类似于以下内容的一个输入文件:

dn: cn=group1,ou=group,dc=mkg,dc=example,dc=com
objectClass: posixGroup
objectClass: groupOfNames
objectClass: top
cn: group1
gidNumber: 1234
member: uid=user1,ou=people,dc=mkg,dc=example,dc=com
member: uid=user2,ou=people,dc=mkg,dc=example,dc=com
member: cn=group2,ou=group,dc=mkg,dc=example,dc=com

LDAP 客户机将在不使用 memberUidmemberuniqueMember 属性或者使用它们中的任意属性或使用所有这些属性的情况下处理组项。成员关系评估结果将是,组的成员为所有三个成员的合集,其中删除了重复项。也就是说,如果组项 G 具有一个引用了用户 U1U2memberUid 值,一个引用了用户 U2member 值和一个引用了用户 U3uniqueMember 值,则组 G 具有三个成员 U1U2U3。还支持嵌套组,也就是说,member 属性可以具有指向其他组的值。

为有效地评估组成员关系以确定用户所属的组(包括嵌套的组),必须在 LDAP 服务器上配置并启用 memberOf 插件。如果没有,则将只会解析包含组,而不会解析嵌套的组。缺省情况下,memberOf 插件由 ODSEE 服务器启用。如果该插件未启用,请使用 ODSEE 的 dsconf 工具将其启用。