问题
when I create a user using JNDI to communicate to active directory , I am now getting LDAP Error 53 (WILL_NOT_PERFORM)
.
I'm trying set password for the created user. Also I've disabled the 'User must change password at next logon' option.
attrs.put("unicodePwd", "\"Test123\"".getBytes("UTF-16LE") );
String newValue = Integer.toString(-1);
ModificationItem mods[] = new ModificationItem[2];
mods[0] = new ModificationItem(DirContext.REMOVE_ATTRIBUTE,
new BasicAttribute("pwdLastSet"));
mods[1] = new ModificationItem(DirContext.ADD_ATTRIBUTE,
new BasicAttribute("pwdLastSet",
newValue));
ctx.modifyAttributes(userName, mods);
Problem creating object:
javax.naming.OperationNotSupportedException: [LDAP: error code 53 - 0000001F: SvcErr: DSID-031A0FC0, problem 5003 (WILL_NOT_PERFORM), data 0
Any ideas as to what I am doing wrong or missing?
回答1:
You don't show how you're connecting to the Active Directory server, but you will get this error if you try to set a password over a connection that is not SSL/TLS.
Currently the URL to your A/D server probably looks like this:
ldap://(server address):389
Try changing it to:
ldaps://(server address):636
来源:https://stackoverflow.com/questions/17290539/ldap-operationnotsupportedexception-error-code-53-will-not-perform