我正在尝试从 Active Directory 的组中删除某些用户列表。在执行此操作时,我发现以下异常/错误:
javax.naming.OperationNotSupportedException: [LDAP: 错误代码 53 - 0000054F: SvcErr: DSID-031A1248, 问题 5003 (WILL_NOT_PERFORM)
下面是我用来创建与 Active Directory 的连接的代码。
Hashtable<String, Object> objEnvironment;
objEnvironment = new Hashtable<String, Object>(11);
objEnvironment.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
objEnvironment.put(Context.PROVIDER_URL, "LDAPS://<domain>:636");
objEnvironment.put(Context.SECURITY_AUTHENTICATION, "simple");
objEnvironment.put(Context.SECURITY_PRINCIPAL, <username>);
objEnvironment.put(Context.SECURITY_CREDENTIALS, <password>);
System.setProperty("javax.net.ssl.trustStore", <certificates store path>));
this.objLDAPContext = new InitialLdapContext(objEnvironment, null);
并删除组
Connection objActiveDirectory;
ModificationItem objModificationItem[];
objModificationItem = new ModificationItem[1];
objModificationItem[0]= new ModificationItem(LdapContext.REMOVE_ATTRIBUTE, new BasicAttribute("member", <user e-mail>));
objActiveDirectory = new Connection("LDAPS://<domain>:636"), <username>, <password>);
objActiveDirectory.getContext().modifyAttributes(<group distinguishedname>, objModificationItem);
objActiveDirectory.close();
知道我应该如何面对这个问题吗?
您需要替换<user e-mail>
为用户的专有名称。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句