我正在使用openldap来创建一个简单的用户和简单的组。
dn: cn=User2 Engineer,ou=users,dc=example,dc=net
cn: User2 Engineer
gidnumber: 501
givenname: User2
homedirectory: /home/users/u2engineer
loginshell: /bin/sh
objectclass: inetOrgPerson
objectclass: posixAccount
objectclass: top
sn: Engineer
uid: u2engineer
uidnumber: 1002
userpassword: {MD5}xxxxxxx
# Entry 1: cn=network engineers,ou=groups,dc=example,dc=net
dn: cn=network engineers,ou=groups,dc=example,dc=net
cn: network engineers
gidnumber: 501
memberuid: user1ene
memberuid: u2engineer
objectclass: posixGroup
objectclass: top
我想通过将memberof属性添加到用户条目来将用户与组关联起来。 这意味着我需要将groupOfNames对象类添加到用户,groupOfNames位于core.schema中 但它既不能通过phpldapadmin也不能通过ldapmodify将该对象类添加到用户。 我收到了错误:
LDAP said: Object class violation
Error number: 0x41 (LDAP_OBJECT_CLASS_VIOLATION)
我确信core.schema已成功导入openldap。
可能的原因是什么? 如何向用户添加memberof属性?
谢谢!
-SG -
答案 0 :(得分:2)
你做不到。 memberOf
属性是由memberof
叠加层自动维护的操作属性。你不能自己设置它。
将groupOfNames
对象类添加到用户条目也没有意义。该对象类用于错误的名称组(例如角色),并且它具有member
属性,您可以向其添加用户的DN。然后,用户的memberOf
属性会自动更新,以包含该组的DN。
你这一切都是回到了前面。