Package org.keycloak.protocol.saml
Class DefaultSamlArtifactResolver
- java.lang.Object
-
- org.keycloak.protocol.saml.DefaultSamlArtifactResolver
-
- All Implemented Interfaces:
org.keycloak.protocol.saml.ArtifactResolver
,org.keycloak.provider.Provider
public class DefaultSamlArtifactResolver extends Object implements org.keycloak.protocol.saml.ArtifactResolver
ArtifactResolver for artifact-04 format. Other kind of format for artifact are allowed by standard but not specified. Artifact 04 is the only one specified in SAML2.0 specification.
-
-
Field Summary
Fields Modifier and Type Field Description protected static org.jboss.logging.Logger
logger
-
Constructor Summary
Constructors Constructor Description DefaultSamlArtifactResolver()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
buildArtifact(org.keycloak.models.AuthenticatedClientSessionModel clientSessionModel, String entityId, String artifactResponse)
void
close()
String
createArtifact(String entityId)
Creates an artifact.String
resolveArtifact(org.keycloak.models.AuthenticatedClientSessionModel clientSessionModel, String artifact)
org.keycloak.models.ClientModel
selectSourceClient(org.keycloak.models.KeycloakSession session, String artifact)
-
-
-
Method Detail
-
resolveArtifact
public String resolveArtifact(org.keycloak.models.AuthenticatedClientSessionModel clientSessionModel, String artifact) throws org.keycloak.protocol.saml.ArtifactResolverProcessingException
- Specified by:
resolveArtifact
in interfaceorg.keycloak.protocol.saml.ArtifactResolver
- Throws:
org.keycloak.protocol.saml.ArtifactResolverProcessingException
-
selectSourceClient
public org.keycloak.models.ClientModel selectSourceClient(org.keycloak.models.KeycloakSession session, String artifact) throws org.keycloak.protocol.saml.ArtifactResolverProcessingException
- Specified by:
selectSourceClient
in interfaceorg.keycloak.protocol.saml.ArtifactResolver
- Throws:
org.keycloak.protocol.saml.ArtifactResolverProcessingException
-
buildArtifact
public String buildArtifact(org.keycloak.models.AuthenticatedClientSessionModel clientSessionModel, String entityId, String artifactResponse) throws org.keycloak.protocol.saml.ArtifactResolverProcessingException
- Specified by:
buildArtifact
in interfaceorg.keycloak.protocol.saml.ArtifactResolver
- Throws:
org.keycloak.protocol.saml.ArtifactResolverProcessingException
-
createArtifact
public String createArtifact(String entityId) throws org.keycloak.protocol.saml.ArtifactResolverProcessingException
Creates an artifact. Format is:SAML_artifact := B64(TypeCode EndpointIndex RemainingArtifact)
TypeCode := 0x0004 EndpointIndex := Byte1Byte2 RemainingArtifact := SourceID MessageHandle
SourceID := 20-byte_sequence, used by the artifact receiver to determine artifact issuer MessageHandle := 20-byte_sequence
- Parameters:
entityId
- the entity id to encode in the sourceId- Returns:
- an artifact
- Throws:
org.keycloak.protocol.saml.ArtifactResolverProcessingException
-
close
public void close()
- Specified by:
close
in interfaceorg.keycloak.provider.Provider
-
-