사용자가 암호를 생성 (변경) 할 수있는 도구를 사용하고있었습니다. 그리고 Spring Ldap (2.1.0.RELEASE)을 사용하는 곳으로 가보고 있습니다.
이제 운영 특성 중 일부를 설정하려고합니다. 이것은 내가 사용하는 코드입니다 :
public void updatePassword(LdapUser ldapUser) {
String[] userOrg = ldapUser.getUserName().split("@");
Name dn = buildDn(userOrg[1], ldapUser.getUserName());
DirContextOperations context = ldapTemplate.lookupContext(dn);
context.setAttributeValue(USER_PASSW, ldapUser.getUserPassword());
if(!context.attributeExists("pwdReset")) {
context.setAttributeValue("pwdReset", "TRUE");
}
ldapTemplate.modifyAttributes(context);
}
작동 특성 pwdReset이 절대로 설정되지 않는 한이 비트의 코드는 정상적으로 작동합니다. 그러나 그것이 설정되어 있다면 (따라서 값은 거짓입니다). 당신은 에러 코드를 얻을 수 있습니다 :
LDAP : 오류 코드 20 - 추가/수정 : pwdReset : 값 # 0 이미
지금 내가 디자인하여 LDAP가 작동 특성을 제공하지 않습니다 그것의 알고있는 뒤로. 그러나 Spring Ldap에서 작동 특성을 항상 갖고 싶어한다고 말하는 방법이 있어야합니다.
Anny sugestions은 좋을 것입니다.