diff --git a/src/main/java/org/codelibs/fess/app/web/admin/user/AdminUserAction.java b/src/main/java/org/codelibs/fess/app/web/admin/user/AdminUserAction.java
index c4bb394e8..6a873818b 100644
--- a/src/main/java/org/codelibs/fess/app/web/admin/user/AdminUserAction.java
+++ b/src/main/java/org/codelibs/fess/app/web/admin/user/AdminUserAction.java
@@ -270,6 +270,7 @@ public class AdminUserAction extends FessAdminAction {
copyBeanToBean(form, entity, op -> op.exclude(ArrayUtils.addAll(Constants.COMMON_CONVERSION_RULE, "password")));
if (form.crudMode.intValue() == CrudMode.CREATE || StringUtil.isNotBlank(form.password)) {
final String encodedPassword = fessLoginAssist.encryptPassword(form.password);
+ entity.setOriginalPassword(form.password);
entity.setPassword(encodedPassword);
}
return entity;
diff --git a/src/main/java/org/codelibs/fess/es/user/exentity/User.java b/src/main/java/org/codelibs/fess/es/user/exentity/User.java
index 73909dd89..f57ac0a32 100644
--- a/src/main/java/org/codelibs/fess/es/user/exentity/User.java
+++ b/src/main/java/org/codelibs/fess/es/user/exentity/User.java
@@ -30,6 +30,8 @@ public class User extends BsUser implements FessUser {
private static final long serialVersionUID = 1L;
+ private String originalPassword;
+
public Long getVersionNo() {
return asDocMeta().version();
}
@@ -63,4 +65,13 @@ public class User extends BsUser implements FessUser {
return "User [name=" + name + ", roles=" + Arrays.toString(roles) + ", groups=" + Arrays.toString(groups) + "]";
}
+ public void setOriginalPassword(String originalPassword) {
+ this.originalPassword = originalPassword;
+
+ }
+
+ public String getOriginalPassword() {
+ return originalPassword;
+ }
+
}
diff --git a/src/main/java/org/codelibs/fess/ldap/LdapManager.java b/src/main/java/org/codelibs/fess/ldap/LdapManager.java
index c22bf302c..ea7d9c9ba 100644
--- a/src/main/java/org/codelibs/fess/ldap/LdapManager.java
+++ b/src/main/java/org/codelibs/fess/ldap/LdapManager.java
@@ -41,7 +41,6 @@ import org.codelibs.fess.helper.SambaHelper;
import org.codelibs.fess.mylasta.direction.FessConfig;
import org.codelibs.fess.util.ComponentUtil;
import org.dbflute.optional.OptionalEntity;
-import org.lastaflute.core.security.PrimaryCipher;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -196,10 +195,9 @@ public class LdapManager {
}
protected void addUserAttributes(final BasicAttributes entry, final User user, final FessConfig fessConfig) {
- final PrimaryCipher cipher = ComponentUtil.getComponent(PrimaryCipher.class);
entry.put(new BasicAttribute("cn", user.getName()));
entry.put(new BasicAttribute("sn", user.getName()));
- entry.put(new BasicAttribute("userPassword", fessConfig.getLdapAdminDigestAlgorismPrefix() + cipher.oneway(user.getPassword())));
+ entry.put(new BasicAttribute("userPassword", user.getOriginalPassword()));
}
public void delete(User user) {
diff --git a/src/main/java/org/codelibs/fess/mylasta/direction/FessConfig.java b/src/main/java/org/codelibs/fess/mylasta/direction/FessConfig.java
index c26d0a706..ad02f94dd 100644
--- a/src/main/java/org/codelibs/fess/mylasta/direction/FessConfig.java
+++ b/src/main/java/org/codelibs/fess/mylasta/direction/FessConfig.java
@@ -650,9 +650,6 @@ public interface FessConfig extends FessEnv, org.codelibs.fess.mylasta.direction
/** The key of the configuration. e.g. groupOfNames */
String LDAP_ADMIN_GROUP_OBJECT_CLASSES = "ldap.admin.group.object.classes";
- /** The key of the configuration. e.g. {SHA256} */
- String LDAP_ADMIN_DIGEST_ALGORISM_PREFIX = "ldap.admin.digest.algorism.prefix";
-
/**
* Get the value of property as {@link String}.
* @param propertyKey The key of the property. (NotNull)
@@ -2586,13 +2583,6 @@ public interface FessConfig extends FessEnv, org.codelibs.fess.mylasta.direction
*/
String getLdapAdminGroupObjectClasses();
- /**
- * Get the value for the key 'ldap.admin.digest.algorism.prefix'.
- * The value is, e.g. {SHA256}
- * @return The value of found property. (NotNull: if not found, exception but basically no way)
- */
- String getLdapAdminDigestAlgorismPrefix();
-
/**
* The simple implementation for configuration.
* @author FreeGen
@@ -3601,9 +3591,5 @@ public interface FessConfig extends FessEnv, org.codelibs.fess.mylasta.direction
public String getLdapAdminGroupObjectClasses() {
return get(FessConfig.LDAP_ADMIN_GROUP_OBJECT_CLASSES);
}
-
- public String getLdapAdminDigestAlgorismPrefix() {
- return get(FessConfig.LDAP_ADMIN_DIGEST_ALGORISM_PREFIX);
- }
}
}
diff --git a/src/main/resources/fess_config.properties b/src/main/resources/fess_config.properties
index 543ecb402..e4123fb55 100644
--- a/src/main/resources/fess_config.properties
+++ b/src/main/resources/fess_config.properties
@@ -362,5 +362,4 @@ ldap.admin.role.security.principal=cn\=%s,ou\=Role,dc\=fess,dc\=codelibs,dc\=org
ldap.admin.role.object.classes=groupOfNames
ldap.admin.group.security.principal=cn\=%s,ou\=Group,dc\=fess,dc\=codelibs,dc\=org
ldap.admin.group.object.classes=groupOfNames
-ldap.admin.digest.algorism.prefix={SHA256}