Class SAMLEndpoint.Binding

java.lang.Object
org.keycloak.broker.saml.SAMLEndpoint.Binding
Direct Known Subclasses:
SAMLEndpoint.ArtifactBinding, SAMLEndpoint.PostBinding, SAMLEndpoint.RedirectBinding
Enclosing class:
SAMLEndpoint

protected abstract class SAMLEndpoint.Binding extends Object
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected jakarta.ws.rs.core.Response
    basicChecks(String samlRequest, String samlResponse, String samlArt)
     
    protected abstract boolean
    containsUnencryptedSignature(org.keycloak.saml.processing.core.saml.v2.common.SAMLDocumentHolder documentHolder)
     
    jakarta.ws.rs.core.Response
    execute(String samlRequest, String samlResponse, String samlArt, String relayState, String clientId)
     
    protected abstract org.keycloak.saml.processing.core.saml.v2.common.SAMLDocumentHolder
     
    protected abstract org.keycloak.saml.processing.core.saml.v2.common.SAMLDocumentHolder
     
    protected abstract String
     
    protected final String
    getEntityId(jakarta.ws.rs.core.UriInfo uriInfo, org.keycloak.models.RealmModel realm)
     
    protected org.keycloak.rotation.KeyLocator
     
    protected jakarta.ws.rs.core.Response
    handleLoginResponse(String samlResponse, org.keycloak.saml.processing.core.saml.v2.common.SAMLDocumentHolder holder, org.keycloak.dom.saml.v2.protocol.ResponseType responseType, String relayState, String clientId)
     
    protected jakarta.ws.rs.core.Response
    handleLogoutResponse(org.keycloak.saml.processing.core.saml.v2.common.SAMLDocumentHolder holder, org.keycloak.dom.saml.v2.protocol.StatusResponseType responseType, String relayState)
     
    protected jakarta.ws.rs.core.Response
    handleSamlArt(String samlArt, String relayState, String clientId)
     
    protected jakarta.ws.rs.core.Response
    handleSamlRequest(String samlRequest, String relayState)
     
    jakarta.ws.rs.core.Response
    handleSamlResponse(String samlResponse, String relayState, String clientId)
     
    protected boolean
     
    protected abstract boolean
    isMessageFullySigned(org.keycloak.saml.processing.core.saml.v2.common.SAMLDocumentHolder documentHolder)
     
    protected final boolean
    isSuccessfulSamlResponse(org.keycloak.dom.saml.v2.protocol.ResponseType responseType)
     
    protected jakarta.ws.rs.core.Response
    logoutRequest(org.keycloak.dom.saml.v2.protocol.LogoutRequestType request, String relayState)
     
    protected final org.keycloak.sessions.AuthenticationSessionModel
    samlIdpInitiatedSSO(String clientUrlName)
    If there is a client whose SAML IDP-initiated SSO URL name is set to the given clientUrlName, creates a fresh authentication session for that client and returns a AuthenticationSessionModel object with that session.
    protected abstract void
    verifySignature(String key, org.keycloak.saml.processing.core.saml.v2.common.SAMLDocumentHolder documentHolder)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Binding

      protected Binding()
  • Method Details

    • basicChecks

      protected jakarta.ws.rs.core.Response basicChecks(String samlRequest, String samlResponse, String samlArt)
    • getBindingType

      protected abstract String getBindingType()
    • containsUnencryptedSignature

      protected abstract boolean containsUnencryptedSignature(org.keycloak.saml.processing.core.saml.v2.common.SAMLDocumentHolder documentHolder)
    • isMessageFullySigned

      protected abstract boolean isMessageFullySigned(org.keycloak.saml.processing.core.saml.v2.common.SAMLDocumentHolder documentHolder)
    • verifySignature

      protected abstract void verifySignature(String key, org.keycloak.saml.processing.core.saml.v2.common.SAMLDocumentHolder documentHolder) throws org.keycloak.common.VerificationException
      Throws:
      org.keycloak.common.VerificationException
    • extractRequestDocument

      protected abstract org.keycloak.saml.processing.core.saml.v2.common.SAMLDocumentHolder extractRequestDocument(String samlRequest)
    • extractResponseDocument

      protected abstract org.keycloak.saml.processing.core.saml.v2.common.SAMLDocumentHolder extractResponseDocument(String response)
    • isDestinationRequired

      protected boolean isDestinationRequired()
    • getIDPKeyLocator

      protected org.keycloak.rotation.KeyLocator getIDPKeyLocator()
    • execute

      public jakarta.ws.rs.core.Response execute(String samlRequest, String samlResponse, String samlArt, String relayState, String clientId)
    • handleSamlRequest

      protected jakarta.ws.rs.core.Response handleSamlRequest(String samlRequest, String relayState)
    • logoutRequest

      protected jakarta.ws.rs.core.Response logoutRequest(org.keycloak.dom.saml.v2.protocol.LogoutRequestType request, String relayState)
    • handleSamlArt

      protected jakarta.ws.rs.core.Response handleSamlArt(String samlArt, String relayState, String clientId)
    • getEntityId

      protected final String getEntityId(jakarta.ws.rs.core.UriInfo uriInfo, org.keycloak.models.RealmModel realm)
    • handleLoginResponse

      protected jakarta.ws.rs.core.Response handleLoginResponse(String samlResponse, org.keycloak.saml.processing.core.saml.v2.common.SAMLDocumentHolder holder, org.keycloak.dom.saml.v2.protocol.ResponseType responseType, String relayState, String clientId)
    • samlIdpInitiatedSSO

      protected final org.keycloak.sessions.AuthenticationSessionModel samlIdpInitiatedSSO(String clientUrlName)
      If there is a client whose SAML IDP-initiated SSO URL name is set to the given clientUrlName, creates a fresh authentication session for that client and returns a AuthenticationSessionModel object with that session. Otherwise returns "client not found" response.
      Parameters:
      clientUrlName -
      Returns:
      see description
    • isSuccessfulSamlResponse

      protected final boolean isSuccessfulSamlResponse(org.keycloak.dom.saml.v2.protocol.ResponseType responseType)
    • handleSamlResponse

      public jakarta.ws.rs.core.Response handleSamlResponse(String samlResponse, String relayState, String clientId)
    • handleLogoutResponse

      protected jakarta.ws.rs.core.Response handleLogoutResponse(org.keycloak.saml.processing.core.saml.v2.common.SAMLDocumentHolder holder, org.keycloak.dom.saml.v2.protocol.StatusResponseType responseType, String relayState)