Как добавить новый атрибут пароля с API Apache LDAP

Я использую Apache LDAP API для установки нового атрибута: userPassword в Oracle Internet Directory. Я хочу установить этот пароль с помощью метода шифрования SHA. В настоящее время у меня есть следующий код:

Attribute userPasswordAttribute = new DefaultAttribute("userPassword", "password"));
ModifyRequest modifyRequest = new ModifyRequestImpl();
modifyRequest.setName(dn);
modifyRequest.add(userPasswordAttribute);
ModifyResponse response = connection.modify(modifyRequest);

Однако это добавляет зашифрованный пароль SSHA вместе с некоторыми другими атрибутами, которые я не хочу (authpassword;oid). Я видел, что в LDAP API есть класс EncryptionMethod, но как использовать его в моем коде?

1 ответ

Решение

Попробуй это

String newPassword = "password";
modifyRequest.replace("userPassword", PasswordUtil.createStoragePassword(
                            newPassword.getBytes(), LdapSecurityConstants.HASH_METHOD_SHA));
Другие вопросы по тегам