2016-01-27 2 views
1

Я использую openldap для создания простой пользовательской и простой группы.Как добавить атрибут memberof к пользователю ldap через phpldapadmin

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 objectclass пользователю, groupOfNames находится в core.schema , но он может добавить этот objectclass пользователю ни через phpldapadmin, ни ldapmodify. я получил ошибку:

LDAP said: Object class violation 
Error number: 0x41 (LDAP_OBJECT_CLASS_VIOLATION) 

Я уверен, что core.schema импортирован успешно OpenLDAP.

Какова возможная причина? Как добавить атрибут memberof пользователям?

Спасибо!

-SG-

ответ

2

Вы не можете. Атрибут memberOf - это эксплуатационный атрибут, автоматически поддерживаемый наложением memberof. Вы не можете установить его самостоятельно.

Добавление класса объекта groupOfNames к записи пользователя также не имеет смысла. Этот класс объекта предназначен для, err, групп имен, таких как роли, и имеет атрибут member, к которому вы добавляете DN пользователя. Затем атрибут memberOf пользователя автоматически обновляется для включения DN группы.

Вы делаете это все назад.

+0

спасибо, проверит накладную часть –