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);
103 if (userCache != null) {
104 userCache.
evict(realm, user);
KeycloakSession session
Definition: PasswordCredentialProvider.java:48
void expirePassword(RealmModel realm, UserModel user, PasswordPolicy policy)
Definition: PasswordCredentialProvider.java:109
CredentialModel getPassword(RealmModel realm, UserModel user)
Definition: PasswordCredentialProvider.java:58
static final Logger logger
Definition: PasswordCredentialProvider.java:46
UserCredentialStore getCredentialStore()
Definition: PasswordCredentialProvider.java:54
< T extends Provider > T getProvider(Class< T > clazz)
PasswordHashProvider getHashProvider(PasswordPolicy policy)
Definition: PasswordCredentialProvider.java:137
void evict(RealmModel realm, UserModel user)
CredentialModel createCredential(RealmModel realm, UserModel user, CredentialModel cred)
boolean supportsCredentialType(String credentialType)
Definition: PasswordCredentialProvider.java:165