我想用用户的新密码替换as400中的密码。我试图使用以下代码执行此操作,但收到错误为“LDAP:错误代码65 - 对象类违规”
我不明白我是用这段代码得到的:
String newPassword="Passw0rd2";
String quotedPassword = "\"" + newPassword + "\"";
char unicodePwd[] = quotedPassword.toCharArray();
byte pwdArray[] = new byte[unicodePwd.length * 2];
for (int i = 0; i < unicodePwd.length; i++) {
pwdArray[i * 2 + 1] = (byte) (unicodePwd[i] >>> 8);
pwdArray[i * 2 + 0] = (byte) (unicodePwd[i] & 0xff);
}
String userDN="complete dn";
String newPassword="Passw0rd2";
System.out.println(charArrayToByteArray(newPassword.toCharArray()));
ModificationItem[] mods = new ModificationItem[1];
mods[0] = new ModificationItem(DirContext.REPLACE_ATTRIBUTE,
new BasicAttribute("userPassword",charArrayToByteArray(newPassword.toCharArray())));
ctx.modifyAttributes(userDN, mods);//error is comming at userDN
答案 0 :(得分:0)
或者我不理解你,或者有一种简单的方法,而且#34;简单地说#34;发送/引用&#34;远程&#34;命令为CHGUSRPRF USRPRF(用户名)PASSWORD(newpass),你甚至可以创建一个非常小的CL程序,传递这两个参数并执行命令。