103         List<CredentialInput> toValidate = 
new LinkedList<>();
   104         toValidate.addAll(inputs);
   105         if (!StorageId.isLocalStorage(user)) {
   106             String providerId = StorageId.resolveProviderId(user);
   107             UserStorageProvider provider = UserStorageManager.getStorageProvider(
session, realm, providerId);
   108             if (provider instanceof CredentialInputValidator) {
   109                 if (!UserStorageManager.isStorageProviderEnabled(realm, providerId)) 
return false;
   110                 Iterator<CredentialInput> it = toValidate.iterator();
   111                 while (it.hasNext()) {
   112                     CredentialInput input = it.next();
   113                     CredentialInputValidator validator = (CredentialInputValidator) provider;
   114                     if (validator.supportsCredentialType(input.getType()) && validator.isValid(realm, user, input)) {
   120             if (user.getFederationLink() != null) {
   121                 UserStorageProvider provider = UserStorageManager.getStorageProvider(
session, realm, user.getFederationLink());
   122                 if (provider != null && provider instanceof CredentialInputValidator) {
   123                     if (!UserStorageManager.isStorageProviderEnabled(realm, user.getFederationLink())) 
return false;
   124                     validate(realm, user, toValidate, ((CredentialInputValidator)provider));
   129         if (toValidate.isEmpty()) 
return true;
   132         for (CredentialInputValidator validator : credentialProviders) {
   133             validate(realm, user, toValidate, validator);
   136         return toValidate.isEmpty();
 static< T > List< T > getCredentialProviders(KeycloakSession session, RealmModel realm, Class< T > type)
Definition: UserCredentialStoreManager.java:149
 
void validate(RealmModel realm, UserModel user, List< CredentialInput > toValidate, CredentialInputValidator validator)
Definition: UserCredentialStoreManager.java:139
 
KeycloakSession session
Definition: UserCredentialStoreManager.java:45