Class SAMLAudienceProtocolMapper

  • All Implemented Interfaces:
    org.keycloak.protocol.ProtocolMapper, SAMLLoginResponseMapper, org.keycloak.provider.ConfiguredProvider, org.keycloak.provider.Provider, org.keycloak.provider.ProviderFactory<org.keycloak.protocol.ProtocolMapper>

    public class SAMLAudienceProtocolMapper
    extends AbstractSAMLProtocolMapper
    implements SAMLLoginResponseMapper
    SAML mapper to add a audience restriction into the assertion, to another client (clientId) or to a custom URI. Only one URI is added, clientId has preference over the custom value (the class maps OIDC behavior).
    Author:
    rmartinc
    • Constructor Detail

      • SAMLAudienceProtocolMapper

        public SAMLAudienceProtocolMapper()
    • Method Detail

      • getConfigProperties

        public List<org.keycloak.provider.ProviderConfigProperty> getConfigProperties()
        Specified by:
        getConfigProperties in interface org.keycloak.provider.ConfiguredProvider
      • getId

        public String getId()
        Specified by:
        getId in interface org.keycloak.provider.ProviderFactory<org.keycloak.protocol.ProtocolMapper>
      • getDisplayType

        public String getDisplayType()
        Specified by:
        getDisplayType in interface org.keycloak.protocol.ProtocolMapper
      • getDisplayCategory

        public String getDisplayCategory()
        Specified by:
        getDisplayCategory in interface org.keycloak.protocol.ProtocolMapper
      • getHelpText

        public String getHelpText()
        Specified by:
        getHelpText in interface org.keycloak.provider.ConfiguredProvider
      • locateAudienceRestriction

        protected static org.keycloak.dom.saml.v2.assertion.AudienceRestrictionType locateAudienceRestriction​(org.keycloak.dom.saml.v2.protocol.ResponseType response)
      • transformLoginResponse

        public org.keycloak.dom.saml.v2.protocol.ResponseType transformLoginResponse​(org.keycloak.dom.saml.v2.protocol.ResponseType response,
                                                                                     org.keycloak.models.ProtocolMapperModel mappingModel,
                                                                                     org.keycloak.models.KeycloakSession session,
                                                                                     org.keycloak.models.UserSessionModel userSession,
                                                                                     org.keycloak.models.ClientSessionContext clientSessionCtx)
        Specified by:
        transformLoginResponse in interface SAMLLoginResponseMapper