Compare commits
1
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
aceea89c5c |
+7
-5
@@ -22,6 +22,7 @@ import java.util.Locale;
|
|||||||
import javax.sql.DataSource;
|
import javax.sql.DataSource;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.fineract.useradministration.service.AppUserConstants;
|
||||||
import org.springframework.core.env.Environment;
|
import org.springframework.core.env.Environment;
|
||||||
import org.springframework.jdbc.core.JdbcTemplate;
|
import org.springframework.jdbc.core.JdbcTemplate;
|
||||||
import org.springframework.security.crypto.factory.PasswordEncoderFactories;
|
import org.springframework.security.crypto.factory.PasswordEncoderFactories;
|
||||||
@@ -37,8 +38,9 @@ import org.springframework.stereotype.Component;
|
|||||||
* touched. The seeded changeSet itself is deliberately left alone: editing it would change its Liquibase checksum and
|
* touched. The seeded changeSet itself is deliberately left alone: editing it would change its Liquibase checksum and
|
||||||
* break validation on every tenant that already ran it.
|
* break validation on every tenant that already ran it.
|
||||||
*
|
*
|
||||||
* Usernames become {@code <tenantIdentifier>_admin}, {@code <tenantIdentifier>_system} and
|
* Usernames become {@code <tenantIdentifier>_admin} and {@code <tenantIdentifier>_interop}. The system user keeps the
|
||||||
* {@code <tenantIdentifier>_interop}. All three share one password: the value of
|
* {@link AppUserConstants#SYSTEM_USER_NAME} username because scheduler jobs, COB and other background processes look it
|
||||||
|
* up by that name; only its password is changed. All three share one password: the value of
|
||||||
* {@code fineract.tenant.initial-user-password} (env {@code FINERACT_TENANT_INITIAL_USER_PASSWORD}) when set,
|
* {@code fineract.tenant.initial-user-password} (env {@code FINERACT_TENANT_INITIAL_USER_PASSWORD}) when set,
|
||||||
* otherwise {@link #DEFAULT_PASSWORD}.
|
* otherwise {@link #DEFAULT_PASSWORD}.
|
||||||
*/
|
*/
|
||||||
@@ -68,11 +70,11 @@ public class TenantInitialUserProvisioner {
|
|||||||
final String encoded = encoder.encode(password);
|
final String encoded = encoder.encode(password);
|
||||||
|
|
||||||
update(jdbc, ADMIN_ID, prefix + "_admin", encoded);
|
update(jdbc, ADMIN_ID, prefix + "_admin", encoded);
|
||||||
update(jdbc, SYSTEM_ID, prefix + "_system", encoded);
|
update(jdbc, SYSTEM_ID, AppUserConstants.SYSTEM_USER_NAME, encoded);
|
||||||
update(jdbc, INTEROP_ID, prefix + "_interop", encoded);
|
update(jdbc, INTEROP_ID, prefix + "_interop", encoded);
|
||||||
|
|
||||||
log.warn("Tenant '{}' initial users created: {}_admin, {}_system, {}_interop (password: {}). Change it after first login.",
|
log.warn("Tenant '{}' initial users created: {}_admin, {}, {}_interop (password: {}). Change it after first login.",
|
||||||
tenantIdentifier, prefix, prefix, prefix, overridden ? "from " + PASSWORD_PROPERTY : "built-in default");
|
tenantIdentifier, prefix, AppUserConstants.SYSTEM_USER_NAME, prefix, overridden ? "from " + PASSWORD_PROPERTY : "built-in default");
|
||||||
}
|
}
|
||||||
|
|
||||||
private void update(final JdbcTemplate jdbc, final long id, final String username, final String encodedPassword) {
|
private void update(final JdbcTemplate jdbc, final long id, final String username, final String encodedPassword) {
|
||||||
|
|||||||
Reference in New Issue
Block a user