Package org.keycloak.broker.saml
Class SAMLIdentityProvider
java.lang.Object
org.keycloak.broker.provider.AbstractIdentityProvider<SAMLIdentityProviderConfig>
org.keycloak.broker.saml.SAMLIdentityProvider
- All Implemented Interfaces:
IdentityProvider<SAMLIdentityProviderConfig>,Provider
- Author:
- Pedro Igor
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.keycloak.broker.provider.IdentityProvider
IdentityProvider.AuthenticationCallback -
Field Summary
FieldsFields inherited from class org.keycloak.broker.provider.AbstractIdentityProvider
ACCOUNT_LINK_URL, BROKER_REGISTERED_NEW_USER, session, UPDATE_PROFILE_EMAIL_CHANGED, UPDATE_PROFILE_USERNAME_CHANGEDFields inherited from interface org.keycloak.broker.provider.IdentityProvider
EXTERNAL_IDENTITY_PROVIDER, FEDERATED_ACCESS_TOKEN -
Constructor Summary
ConstructorsConstructorDescriptionSAMLIdentityProvider(KeycloakSession session, SAMLIdentityProviderConfig config, DestinationValidator destinationValidator) -
Method Summary
Modifier and TypeMethodDescriptionvoidauthenticationFinished(AuthenticationSessionModel authSession, BrokeredIdentityContext context) voidbackchannelLogout(KeycloakSession session, UserSessionModel userSession, jakarta.ws.rs.core.UriInfo uriInfo, RealmModel realm) protected ArtifactResolveTypebuildArtifactResolveRequest(jakarta.ws.rs.core.UriInfo uriInfo, RealmModel realm, String artifactServiceUrl, String artifact, SamlProtocolExtensionsAwareBuilder.NodeGenerator... extensions) protected LogoutRequestTypebuildLogoutRequest(UserSessionModel userSession, jakarta.ws.rs.core.UriInfo uriInfo, RealmModel realm, String singleLogoutServiceUrl, SamlProtocolExtensionsAwareBuilder.NodeGenerator... extensions) callback(RealmModel realm, IdentityProvider.AuthenticationCallback callback, EventBuilder event) jakarta.ws.rs.core.Responseexport(jakarta.ws.rs.core.UriInfo uriInfo, RealmModel realm, String format) jakarta.ws.rs.core.ResponsekeycloakInitiatedBrowserLogout(KeycloakSession session, UserSessionModel userSession, jakarta.ws.rs.core.UriInfo uriInfo, RealmModel realm) jakarta.ws.rs.core.ResponseperformLogin(AuthenticationRequest request) booleanresolveArtifact(KeycloakSession session, jakarta.ws.rs.core.UriInfo uriInfo, RealmModel realm, String relayState, String samlArt) jakarta.ws.rs.core.ResponseretrieveToken(KeycloakSession session, FederatedIdentityModel identity) booleanMethods inherited from class org.keycloak.broker.provider.AbstractIdentityProvider
close, exchangeErrorResponse, exchangeNotLinked, exchangeNotLinkedNoStore, exchangeNotSupported, exchangeTokenExpired, exchangeUnsupportedRequiredType, getConfig, getLinkingUrl, importNewUser, preprocessFederatedIdentity, setEmailVerified, updateBrokeredUser, updateEmailMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.keycloak.broker.provider.IdentityProvider
isMapperSupported
-
Field Details
-
logger
protected static final org.jboss.logging.Logger logger
-
-
Constructor Details
-
SAMLIdentityProvider
public SAMLIdentityProvider(KeycloakSession session, SAMLIdentityProviderConfig config, DestinationValidator destinationValidator)
-
-
Method Details
-
callback
public Object callback(RealmModel realm, IdentityProvider.AuthenticationCallback callback, EventBuilder event) - Specified by:
callbackin interfaceIdentityProvider<SAMLIdentityProviderConfig>- Overrides:
callbackin classAbstractIdentityProvider<SAMLIdentityProviderConfig>
-
performLogin
- Specified by:
performLoginin interfaceIdentityProvider<SAMLIdentityProviderConfig>- Overrides:
performLoginin classAbstractIdentityProvider<SAMLIdentityProviderConfig>
-
authenticationFinished
public void authenticationFinished(AuthenticationSessionModel authSession, BrokeredIdentityContext context) - Specified by:
authenticationFinishedin interfaceIdentityProvider<SAMLIdentityProviderConfig>- Overrides:
authenticationFinishedin classAbstractIdentityProvider<SAMLIdentityProviderConfig>
-
retrieveToken
public jakarta.ws.rs.core.Response retrieveToken(KeycloakSession session, FederatedIdentityModel identity) -
backchannelLogout
public void backchannelLogout(KeycloakSession session, UserSessionModel userSession, jakarta.ws.rs.core.UriInfo uriInfo, RealmModel realm) - Specified by:
backchannelLogoutin interfaceIdentityProvider<SAMLIdentityProviderConfig>- Overrides:
backchannelLogoutin classAbstractIdentityProvider<SAMLIdentityProviderConfig>
-
keycloakInitiatedBrowserLogout
public jakarta.ws.rs.core.Response keycloakInitiatedBrowserLogout(KeycloakSession session, UserSessionModel userSession, jakarta.ws.rs.core.UriInfo uriInfo, RealmModel realm) - Specified by:
keycloakInitiatedBrowserLogoutin interfaceIdentityProvider<SAMLIdentityProviderConfig>- Overrides:
keycloakInitiatedBrowserLogoutin classAbstractIdentityProvider<SAMLIdentityProviderConfig>
-
buildLogoutRequest
protected LogoutRequestType buildLogoutRequest(UserSessionModel userSession, jakarta.ws.rs.core.UriInfo uriInfo, RealmModel realm, String singleLogoutServiceUrl, SamlProtocolExtensionsAwareBuilder.NodeGenerator... extensions) throws ConfigurationException - Throws:
ConfigurationException
-
export
public jakarta.ws.rs.core.Response export(jakarta.ws.rs.core.UriInfo uriInfo, RealmModel realm, String format) - Specified by:
exportin interfaceIdentityProvider<SAMLIdentityProviderConfig>- Overrides:
exportin classAbstractIdentityProvider<SAMLIdentityProviderConfig>
-
getSignatureAlgorithm
-
getMarshaller
- Specified by:
getMarshallerin interfaceIdentityProvider<SAMLIdentityProviderConfig>- Overrides:
getMarshallerin classAbstractIdentityProvider<SAMLIdentityProviderConfig>
-
reloadKeys
public boolean reloadKeys() -
supportsLongStateParameter
public boolean supportsLongStateParameter() -
resolveArtifact
public SAMLDocumentHolder resolveArtifact(KeycloakSession session, jakarta.ws.rs.core.UriInfo uriInfo, RealmModel realm, String relayState, String samlArt) -
buildArtifactResolveRequest
protected ArtifactResolveType buildArtifactResolveRequest(jakarta.ws.rs.core.UriInfo uriInfo, RealmModel realm, String artifactServiceUrl, String artifact, SamlProtocolExtensionsAwareBuilder.NodeGenerator... extensions) throws ConfigurationException - Throws:
ConfigurationException
-