Interface UserStorageProvider

All Superinterfaces:
Provider
All Known Implementing Classes:
KerberosFederationProvider, LDAPStorageProvider, SSSDFederationProvider

public interface UserStorageProvider extends Provider
A class implementing this interface represents a user storage provider to Keycloak.

This interface contains only very basic methods for manipulating users. However, the storage provider capabilities are extended by implementing one or more of the following capability interfaces:

  • UserLookupProvider - Provide basic lookup methods. After implementing it is possible to login using users from the storage.
  • UserQueryMethodsProvider - Provide complex lookup methods. After implementing it is possible to manage users from admin console.
  • UserCountMethodsProvider - Provide complex count methods. After implementing it is possible to leverage optimizations during querying for users.
  • UserQueryProvider - This interface is combined capability of UserQueryMethodsProvider and UserCountMethodsProvider.
  • UserRegistrationProvider - Provide methods for adding users. After implementing it is possible to store registered users in the storage.
  • UserBulkUpdateProvider - After implementing it is possible to perform bulk operations on all users from storage (for example, addition of a role to all users).
  • ImportedUserValidation - Provider method for validating users within Keycloak local storage that are imported from the storage.
  • ImportSynchronization - Provider methods for synchronization of the storage with Keycloak local storage. After implementing it is possible to sync users in the Admin console.
Version:
$Revision: 1 $
Author:
Bill Burke
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static enum 
    Optional type that can be used by implementations to describe edit mode of user storage
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
    Callback when a realm is removed.
    default void
    Callback when a group is removed.
    default void
    Callback when a role is removed.

    Methods inherited from interface org.keycloak.provider.Provider

    close
  • Method Details

    • preRemove

      default void preRemove(RealmModel realm)
      Callback when a realm is removed. Implement this if, for example, you want to do some cleanup in your user storage when a realm is removed
      Parameters:
      realm -
    • preRemove

      default void preRemove(RealmModel realm, GroupModel group)
      Callback when a group is removed. Allows you to do things like remove a user group mapping in your external store if appropriate
      Parameters:
      realm -
      group -
    • preRemove

      default void preRemove(RealmModel realm, RoleModel role)
      Callback when a role is removed. Allows you to do things like remove a user role mapping in your external store if appropriate
      Parameters:
      realm -
      role -