使用 ext/ldap 我正在尝试将条目添加到 Active Directory。只要我只使用一个结构对象类,一切都会按预期工作,但是一旦我尝试添加带有第二个辅助对象类的条目,服务器就会报告错误:
服务器不愿意执行;00002040:SvcErr:DSID-030F0AA0,问题 5003 (WILL_NOT_PERFORM),数据 0
以下代码有效:
ldap_add($ldap, 'OU=Test,OU=Test,DC=domain,DC=example,DC=local', array(
'ou' => 'Test',
'objectClass' => 'organizationalUnit',
'l' => 'location'
));
这不会:
ldap_add($ldap, 'OU=Test,OU=Test,DC=domain,DC=example,DC=local', array(
'ou' => 'Test',
'associatedDomain' => 'domain',
'objectClass' => array('organizationalUnit', 'domainRelatedObject'),
'l' => 'location'
));
如果我尝试将辅助 objectClass 添加到现有条目,也会发生同样的情况:
ldap_mod_add($ldap, 'OU=Test,OU=Test,DC=domain,DC=example,DC=local', array(
'associatedDomain' => 'domain',
'objectClass' => 'domainRelatedObject'
));
对应的错误信息基本相同
服务器不愿意执行;00002040:SvcErr:DSID-030508F8,问题 5003 (WILL_NOT_PERFORM),数据 0
由于所有其他更新和添加操作都有效,我认为问题必须与 objectClass 属性有关。
由于我对 Active Directory 没有足够的经验(我习惯于 OpenLDAP):Active Directory 中的 objectClasses 是否存在任何已知问题?我在这里错过了什么吗?是否有任何限制不允许添加domainRelatedObject
例如organizationalUnit
?这到底是怎么回事;-)?
以防万一您想知道:domainRelatedObject
存在于 Active Directory 架构中。