2016-09-06 4 views
1

Я попытался создать код для ввода данных в Active Directory. Btw Я использую Zend Framerowk 2, а для служб каталогов я использую Active Directory. Я попытался создать некоторую функцию для добавления данных в Active Directory, но у меня возникла проблема. Сообщение об ошибке всегда отображаютсяКак добавить элемент атрибута/memberOf в ldap Active Directory (AD) с помощью ZF2

Сообщения об ошибках

0x35 (сервер не желает выполнять; 0000209A: SvcErr: DSID-031A1081, проблемы 5003 (WILL_NOT_PERFORM)

Вот мой код

$ldap = new Ldap($ldap_config); 
$ldap->bind(); 

//add member user into role  
$entry = array();   
Attribute::setAttribute($entry, 'objectclass', 'top'); 
Attribute::setAttribute($entry, 'objectclass', 'person'); 
Attribute::setAttribute($entry, 'objectclass', 'organizationalPerson'); 
Attribute::setAttribute($entry, 'objectclass', 'user'); 
Attribute::setAttribute($entry, 'cn', '123ABCD'); 
Attribute::setAttribute($entry, 'distinguishedname', "CN=123ABCD,OU=Staff,DC=project,DC=company,DC=go,DC=id"); 
Attribute::setAttribute($entry, 'dn', "CN=123ABCD,OU=Staff,DC=project,DC=company,DC=go,DC=id"); 
Attribute::setAttribute($entry, 'instancetype', 4); 
Attribute::setAttribute($entry, 'displayName', "FebryFairuz"); 
Attribute::setAttribute($entry, 'sAMAccountName', "123ABCD"); 
Attribute::setAttribute($entry, 'employeeID', "123ABCD"); 
Attribute::setAttribute($entry, 'givenName', "Febry"); 
Attribute::setAttribute($entry, 'mail', "[email protected]"); 
Attribute::setAttribute($entry, 'memberOf', "CN=Default,OU=Role,DC=project,DC=company,DC=go,DC=id"); 
$result_update = $ldap->add("CN=123ABCD,OU=Staff,DC=project,DC=company,DC=go,DC=id", $entry); 
var_dump($result_update); 

Если я удалю Attribute::setAttribute($entry, 'memberOf', "CN=Default,OU=Role,DC=project,DC=company,DC=go,DC=id"); это хорошо работать, а также вставлять в AD. Но если я попытался добавить атрибут memberOf, у меня получилась ошибка. Итак, что-то не так с моим кодом? Или что-то я могу сделать для решения этой проблемы? Я надеюсь, что вы захотите мне помочь ..

ответ

0

Вы не можете изменять атрибут memberOf напрямую, так как он является атрибутом обратной ссылки в AD. Что вам нужно сделать, это изменить атрибут member группы и добавить пользователя к этому.

+0

Thx для объяснения u'r, я не могу изменить 'memberOf', поэтому я попытался изменить' member'. Thx u очень много для u'r помощи. –

+0

Не могли бы вы объяснить, как вам удается изменять группы? Я пробовал *** член *** после *** memberof *** показал проблему –

 Смежные вопросы

  • Нет связанных вопросов^_^