78 if (!(input instanceof UserCredentialModel)) {
79 logger.debug(
"Expected instance of UserCredentialModel for CredentialInput");
82 UserCredentialModel cred = (UserCredentialModel)input;
83 PasswordPolicy policy = realm.getPasswordPolicy();
85 PolicyError error =
session.getProvider(PasswordPolicyManagerProvider.class).validate(realm, user, cred.getValue());
86 if (error != null)
throw new ModelException(error.getMessage(), error.getParameters());
93 CredentialModel oldPassword =
getPassword(realm, user);
96 CredentialModel newPassword =
new CredentialModel();
97 newPassword.setType(CredentialModel.PASSWORD);
98 long createdDate = Time.currentTimeMillis();
99 newPassword.setCreatedDate(createdDate);
100 hash.encode(cred.getValue(), policy.getHashIterations(), newPassword);
102 UserCache userCache =
session.userCache();
103 if (userCache != null) {
104 userCache.evict(realm, user);
KeycloakSession session
Definition: PasswordCredentialProvider.java:48
UserCredentialStore getCredentialStore()
Definition: PasswordCredentialProvider.java:54
void expirePassword(RealmModel realm, UserModel user, PasswordPolicy policy)
Definition: PasswordCredentialProvider.java:109
static final Logger logger
Definition: PasswordCredentialProvider.java:46
PasswordHashProvider getHashProvider(PasswordPolicy policy)
Definition: PasswordCredentialProvider.java:137
boolean supportsCredentialType(String credentialType)
Definition: PasswordCredentialProvider.java:165
CredentialModel getPassword(RealmModel realm, UserModel user)
Definition: PasswordCredentialProvider.java:58