我正在尝试使用UnboundID LDAP SDK将组添加到我的Active Directory服务,并不断收到错误503:将无法执行。
我已经验证我正在使用SSL连接,并且我正在与属于Administrators组的用户建立连接,这是我错了 - 这使他有权创建新条目。
我还将LDAP接口事件的日志记录级别一直提升到5,并且事件查看器注册了许多事件,这些事件都没有用于解释服务不愿执行创建条目操作的原因。
关于可能导致此问题的任何想法?
以下是我正在使用的scala代码示例:
val connection = connect("MyAdminUser", "MyAdminPass")
val addGroupResult = connection.add("CN=TestGroup2,OU=Groups,OU=mydomain,DC=mydomain,DC=local",
new Attribute("objectClass", "top", "group"),
new Attribute("name","TestGroup2"),
new Attribute("sAMAccountName","TestGroup2"),
new Attribute("sAMAccountType","268435456"),
new Attribute("objectCategory","CN=Group,CN=Schema,CN=Configuration,DC=mydomain,DC=local"),
new Attribute("cn","TestGroup2"),
new Attribute("distinguishedName","CN=TestGroup2,OU=Groups,OU=mydomain,DC=mydomain,DC=local"),
new Attribute("instanceType","4"),
new Attribute("groupType","-2147483646")
)
private def connect(user: String, pass: String) = {
val options = new LDAPConnectionOptions()
options.setFollowReferrals(true)
val sslUtil = new SSLUtil(new TrustAllTrustManager())
val socketFactory = sslUtil.createSSLSocketFactory()
new LDAPConnection(socketFactory, options, host, securePort, DN(user), pass)
}
这是我收到的错误消息:
Exception in thread "main" LDAPException(resultCode=53 (unwilling to perform), errorMessage='0000209A: SvcErr: DSID-031A104A, problem 5003 (WILL_NOT_PERFORM), data 0', diagnosticMessage='0000209A: SvcErr: DSID-031A104A, problem 5003 (WILL_NOT_PERFORM), data 0')
答案 0 :(得分:8)
我的错误是在Add操作中包含太多属性,其中一些不应该手动设置,而是由SAM(安全帐户管理器)设置。
正确的代码如下:
val addGroupResult = connection.add("CN=TestGroup2,OU=Groups,OU=simpleBI,DC=domain,DC=local",
new Attribute("objectClass", "top", "group"),
new Attribute("name","TestGroup2"),
new Attribute("sAMAccountName","TestGroup2"),
new Attribute("objectCategory","CN=Group,CN=Schema,CN=Configuration,DC=domain,DC=local")
)
请注意,我删除了一些被AD拒绝的属性,包括sAMAccountType。我也删除了一些冗余的。我相信我拥有的是满足我需求的最小属性集。
连接代码未更改。