Class SAMLEndpoint

java.lang.Object
org.keycloak.broker.saml.SAMLEndpoint

public class SAMLEndpoint extends Object
Version:
$Revision: 1 $
Author:
Bill Burke
  • Field Details

    • logger

      protected static final org.jboss.logging.Logger logger
    • SAML_FEDERATED_SESSION_INDEX

      public static final String SAML_FEDERATED_SESSION_INDEX
      See Also:
    • SAML_FEDERATED_SUBJECT

      @Deprecated public static final String SAML_FEDERATED_SUBJECT
      Deprecated.
      See Also:
    • SAML_FEDERATED_SUBJECT_NAMEFORMAT

      @Deprecated public static final String SAML_FEDERATED_SUBJECT_NAMEFORMAT
      Deprecated.
      See Also:
    • SAML_FEDERATED_SUBJECT_NAMEID

      public static final String SAML_FEDERATED_SUBJECT_NAMEID
      See Also:
    • SAML_LOGIN_RESPONSE

      public static final String SAML_LOGIN_RESPONSE
      See Also:
    • SAML_ASSERTION

      public static final String SAML_ASSERTION
      See Also:
    • SAML_AUTHN_STATEMENT

      public static final String SAML_AUTHN_STATEMENT
      See Also:
    • realm

      protected final org.keycloak.models.RealmModel realm
    • event

      protected org.keycloak.events.EventBuilder event
    • config

      protected final SAMLIdentityProviderConfig config
    • callback

      protected final org.keycloak.broker.provider.UserAuthenticationIdentityProvider.AuthenticationCallback callback
    • provider

      protected final SAMLIdentityProvider provider
    • destinationValidator

      protected final org.keycloak.saml.validators.DestinationValidator destinationValidator
    • session

      protected final org.keycloak.models.KeycloakSession session
    • clientConnection

      protected final org.keycloak.common.ClientConnection clientConnection
    • headers

      protected final jakarta.ws.rs.core.HttpHeaders headers
    • maxInflatingSize

      protected final long maxInflatingSize
  • Constructor Details

    • SAMLEndpoint

      public SAMLEndpoint(org.keycloak.models.KeycloakSession session, SAMLIdentityProvider provider, SAMLIdentityProviderConfig config, org.keycloak.broker.provider.UserAuthenticationIdentityProvider.AuthenticationCallback callback, org.keycloak.saml.validators.DestinationValidator destinationValidator)
  • Method Details

    • getSPDescriptor

      @GET @Path("descriptor") public jakarta.ws.rs.core.Response getSPDescriptor()
    • redirectBinding

      @GET public jakarta.ws.rs.core.Response redirectBinding(@QueryParam("SAMLRequest") String samlRequest, @QueryParam("SAMLResponse") String samlResponse, @QueryParam("SAMLart") String samlArt, @QueryParam("RelayState") String relayState)
    • postBinding

      @POST @Consumes("application/x-www-form-urlencoded") public jakarta.ws.rs.core.Response postBinding(@FormParam("SAMLRequest") String samlRequest, @FormParam("SAMLResponse") String samlResponse, @FormParam("SAMLart") String samlArt, @FormParam("RelayState") String relayState)
    • redirectBindingIdpInitiated

      @Path("clients/{client_id}") @GET public jakarta.ws.rs.core.Response redirectBindingIdpInitiated(@QueryParam("SAMLRequest") String samlRequest, @QueryParam("SAMLResponse") String samlResponse, @QueryParam("RelayState") String relayState, @PathParam("client_id") String clientId)
    • postBindingIdpInitiated

      @Path("clients/{client_id}") @POST @Consumes("application/x-www-form-urlencoded") public jakarta.ws.rs.core.Response postBindingIdpInitiated(@FormParam("SAMLRequest") String samlRequest, @FormParam("SAMLResponse") String samlResponse, @FormParam("RelayState") String relayState, @PathParam("client_id") String clientId)
    • getX500Attribute

      protected final String getX500Attribute(org.keycloak.dom.saml.v2.assertion.AssertionType assertion, org.keycloak.saml.processing.core.saml.v2.constants.X500SAMLProfileConstants attribute)
    • getAttributeByName

      protected final String getAttributeByName(org.keycloak.dom.saml.v2.assertion.AssertionType assertion, String name)
    • getAttributeByFriendlyName

      protected final String getAttributeByFriendlyName(org.keycloak.dom.saml.v2.assertion.AssertionType assertion, String friendlyName)
    • getPrincipal

      protected final String getPrincipal(org.keycloak.dom.saml.v2.assertion.AssertionType assertion)
    • getFirstMatchingAttribute

      protected final String getFirstMatchingAttribute(org.keycloak.dom.saml.v2.assertion.AssertionType assertion, Predicate<org.keycloak.dom.saml.v2.assertion.AttributeType> predicate)
    • expectedPrincipalType

      protected final String expectedPrincipalType()
    • getSubjectNameID

      protected final org.keycloak.dom.saml.v2.assertion.NameIDType getSubjectNameID(org.keycloak.dom.saml.v2.assertion.AssertionType assertion)
    • validateInResponseToAttribute

      protected final boolean validateInResponseToAttribute(org.keycloak.dom.saml.v2.protocol.ResponseType responseType, String expectedRequestId)