Я использую openDJ для LDAP и не могу изменить значение атрибута ds-pwp-account-disabled в openDJ из весеннего шаблона ldap.
Я создал объект класса DirContextOperations через spring ldap. Когда я получаю значение атрибута ds-pwp-account-disabled с помощью spring ldap, оно дается. Но это не позволяет обновлять значение атрибута ds-pwp-account-disabled через spring ldap. Можете ли вы помочь мне, как мне обновить значение атрибута ds-pwp-account-disabled через spring ldap. Я прочитал так много статей в Google, это может быть проблема с привилегиями в opendj через springldap или может быть что-то другое.
Я делюсь некоторым кодом, чтобы определить, как я использую spring ldap с помощью open DJ--
частный LdapTemplate ldapTemplate;
ErrorDTO createAccountIfNotExists(Account account){
DirContextAdapter context = new DirContextAdapter(dn);
context.setAttributeValues(OBJECTCLASS, new String[] { TOP, USERACCOUNTS });
mapToContext(account, context);
try {
ldapTemplate.bind(context);
} catch (Exception e) {
}
return error;
}
public LdapTemplate getLdapTemplate() {
return ldapTemplate;
}
public void setLdapTemplate(LdapTemplate ldapTemplate) {
this.ldapTemplate = ldapTemplate;
}
void mapToContext(Account account, DirContextOperations context) {
context.setAttributeValue("cn", account.getFirstName());
context.setAttributeValue("sn", account.getLastName());
context.setAttributeValue("x-user-id", account.getUserId());
context.setAttributeValue("mail", account.getEmail());
context.setAttributeValue("givenname", account.getFirstName());
context.setAttributeValue("mobile", account.getMobilePhone());
context.setAttributeValue("telephonenumber", account.getBusinessPhone());
context.setAttributeValue("title", account.getJobTitle());
context.setAttributeValue("x-incident-ref", account.getIncidentRef());
context.setAttributeValue("x-client-category", account.getClientCategory());
context.setAttributeValue("x-organization", account.getOrganization());
context.setAttributeValue("facsimiletelephonenumber", account.getFax());
context.setAttributeValue("x-bureau", account.getBureau());
context.setAttributeValue("x-company", account.getCompany());
context.setAttributeValue("ds-pwp-account-disabled", account.getEnabled());
if (account.getAccountCode() != null) {
context.setAttributeValue("x-account-code", account.getAccountCode());
context.setAttributeValue("uid", account.getAccountCode() + "#" + account.getUserId());
} else {
context.setAttributeValue("uid", account.getUserId());
}
}
Ниже приведена ошибка - org.springframework.ldap.InvalidAttributeValueException: неверно сформированное значение атрибута «ds-pwp-account-disabled»; вложенным исключением является javax.naming.directory.InvalidAttributeValueException: неверно сформированное значение атрибута 'ds-pwp-account-disabled'; оставшееся имя 'uid=coy#user8,ou=учетные записи пользователей'
markdown like this
. - person surajs1n   schedule 28.03.2016