Class AbstractAttributeToGroupMapper

java.lang.Object
org.keycloak.broker.provider.AbstractIdentityProviderMapper
org.keycloak.broker.saml.mappers.AbstractAttributeToGroupMapper
All Implemented Interfaces:
org.keycloak.broker.provider.IdentityProviderMapper, org.keycloak.provider.ConfiguredProvider, org.keycloak.provider.Provider, org.keycloak.provider.ProviderFactory<org.keycloak.broker.provider.IdentityProviderMapper>
Direct Known Subclasses:
AdvancedAttributeToGroupMapper

public abstract class AbstractAttributeToGroupMapper extends org.keycloak.broker.provider.AbstractIdentityProviderMapper
Abstract class that handles the logic for importing and updating brokered users for all mappers that map a SAML attribute into a Keycloak group.
Author:
Denis Bernard,
  • Field Summary

    Fields inherited from interface org.keycloak.broker.provider.IdentityProviderMapper

    ANY_PROVIDER, DEFAULT_IDENTITY_PROVIDER_MAPPER_SYNC_MODES
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected abstract boolean
    applies(org.keycloak.models.IdentityProviderMapperModel mapperModel, org.keycloak.broker.provider.BrokeredIdentityContext context)
    This method must be implemented by subclasses and they must return true if their mapping can be applied (i.e. user has the SAML attribute that should be mapped) or false otherwise.
    void
    importNewUser(org.keycloak.models.KeycloakSession session, org.keycloak.models.RealmModel realm, org.keycloak.models.UserModel user, org.keycloak.models.IdentityProviderMapperModel mapperModel, org.keycloak.broker.provider.BrokeredIdentityContext context)
     
    void
    updateBrokeredUser(org.keycloak.models.KeycloakSession session, org.keycloak.models.RealmModel realm, org.keycloak.models.UserModel user, org.keycloak.models.IdentityProviderMapperModel mapperModel, org.keycloak.broker.provider.BrokeredIdentityContext context)
     

    Methods inherited from class org.keycloak.broker.provider.AbstractIdentityProviderMapper

    close, create, dependsOn, init, postInit, preprocessFederatedIdentity, updateBrokeredUserLegacy

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.keycloak.provider.ConfiguredProvider

    getConfig, getConfigProperties, getHelpText

    Methods inherited from interface org.keycloak.broker.provider.IdentityProviderMapper

    getCompatibleProviders, getDisplayCategory, getDisplayType, supportsSyncMode

    Methods inherited from interface org.keycloak.provider.ProviderFactory

    getConfigMetadata, getId, order
  • Constructor Details

    • AbstractAttributeToGroupMapper

      public AbstractAttributeToGroupMapper()
  • Method Details

    • importNewUser

      public void importNewUser(org.keycloak.models.KeycloakSession session, org.keycloak.models.RealmModel realm, org.keycloak.models.UserModel user, org.keycloak.models.IdentityProviderMapperModel mapperModel, org.keycloak.broker.provider.BrokeredIdentityContext context)
      Specified by:
      importNewUser in interface org.keycloak.broker.provider.IdentityProviderMapper
      Overrides:
      importNewUser in class org.keycloak.broker.provider.AbstractIdentityProviderMapper
    • updateBrokeredUser

      public void updateBrokeredUser(org.keycloak.models.KeycloakSession session, org.keycloak.models.RealmModel realm, org.keycloak.models.UserModel user, org.keycloak.models.IdentityProviderMapperModel mapperModel, org.keycloak.broker.provider.BrokeredIdentityContext context)
      Specified by:
      updateBrokeredUser in interface org.keycloak.broker.provider.IdentityProviderMapper
      Overrides:
      updateBrokeredUser in class org.keycloak.broker.provider.AbstractIdentityProviderMapper
    • applies

      protected abstract boolean applies(org.keycloak.models.IdentityProviderMapperModel mapperModel, org.keycloak.broker.provider.BrokeredIdentityContext context)
      This method must be implemented by subclasses and they must return true if their mapping can be applied (i.e. user has the SAML attribute that should be mapped) or false otherwise.
      Parameters:
      mapperModel - a reference to the IdentityProviderMapperModel.
      context - a reference to the BrokeredIdentityContext.
      Returns:
      true if the mapping can be applied or false otherwise.