1

我正在使用 Apache LDAP API 设置新属性:Oracle Internet Directory 中的 userPassword。我想用 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 的类,但是如何在我的代码中使用它?

4

1 回答 1

0

试试这个

String newPassword = "password";
modifyRequest.replace("userPassword", PasswordUtil.createStoragePassword(
                            newPassword.getBytes(), LdapSecurityConstants.HASH_METHOD_SHA));
于 2014-03-07T07:01:09.850 回答