Interface IdentityProviderMapper

All Superinterfaces:
ConfiguredProvider, Provider, ProviderFactory<IdentityProviderMapper>
All Known Implementing Classes:
AbstractIdentityProviderMapper

public interface IdentityProviderMapper extends Provider, ProviderFactory<IdentityProviderMapper>, ConfiguredProvider
Version:
$Revision: 1 $
Author:
Bill Burke
  • Field Details

  • Method Details

    • getCompatibleProviders

      String[] getCompatibleProviders()
    • getDisplayCategory

      String getDisplayCategory()
    • getDisplayType

      String getDisplayType()
    • supportsSyncMode

      default boolean supportsSyncMode(IdentityProviderSyncMode syncMode)
    • preprocessFederatedIdentity

      void preprocessFederatedIdentity(KeycloakSession session, RealmModel realm, IdentityProviderMapperModel mapperModel, BrokeredIdentityContext context)
      Called to determine what keycloak username and email to use to process the login request from the external IDP. It's called before "FirstBrokerLogin" flow, so can be used to map attributes to BrokeredIdentityContext ( BrokeredIdentityContext.setUserAttribute ), which will be available on "Review Profile" page and in authenticators during FirstBrokerLogin flow
      Parameters:
      session -
      realm -
      mapperModel -
      context -
    • importNewUser

      void importNewUser(KeycloakSession session, RealmModel realm, UserModel user, IdentityProviderMapperModel mapperModel, BrokeredIdentityContext context)
      Called after UserModel is created for first time for this user. Called after "FirstBrokerLogin" flow
      Parameters:
      session -
      realm -
      user -
      mapperModel -
      context -
    • updateBrokeredUserLegacy

      void updateBrokeredUserLegacy(KeycloakSession session, RealmModel realm, UserModel user, IdentityProviderMapperModel mapperModel, BrokeredIdentityContext context)
      Called when this user has logged in before and has already been imported. Legacy behaviour. When updating the mapper to correctly update brokered users in all sync modes, move the old behavior into this method.
      Parameters:
      session -
      realm -
      user -
      mapperModel -
      context -
    • updateBrokeredUser

      void updateBrokeredUser(KeycloakSession session, RealmModel realm, UserModel user, IdentityProviderMapperModel mapperModel, BrokeredIdentityContext context)
      Called when this user has logged in before and has already been imported.
      Parameters:
      session -
      realm -
      user -
      mapperModel -
      context -