Package org.keycloak.services.resources
Class IdentityBrokerService
- java.lang.Object
-
- org.keycloak.services.resources.IdentityBrokerService
-
- All Implemented Interfaces:
org.keycloak.broker.provider.IdentityProvider.AuthenticationCallback
public class IdentityBrokerService extends Object implements org.keycloak.broker.provider.IdentityProvider.AuthenticationCallback
- Author:
- Pedro Igor
-
-
Constructor Summary
Constructors Constructor Description IdentityBrokerService(org.keycloak.models.RealmModel realmModel)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description javax.ws.rs.core.ResponseafterFirstBrokerLogin(String code, String clientId, String tabId)javax.ws.rs.core.ResponseafterPostBrokerLoginFlow(String code, String clientId, String tabId)javax.ws.rs.core.Responseauthenticated(org.keycloak.broker.provider.BrokeredIdentityContext context)protected javax.ws.rs.core.ResponsebrowserAuthentication(org.keycloak.sessions.AuthenticationSessionModel authSession, String errorMessage)javax.ws.rs.core.Responsecancelled()javax.ws.rs.core.ResponseclientInitiatedAccountLinking(String providerId, String redirectUri, String clientId, String nonce, String hash)javax.ws.rs.core.ResponseclientIntiatedAccountLinkingPreflight(String providerId)Closes off CORS preflight requests for account linkingjavax.ws.rs.core.Responseerror(String message)org.keycloak.sessions.AuthenticationSessionModelgetAndVerifyAuthenticationSession(String encodedCode)ObjectgetEndpoint(String providerId)static org.keycloak.broker.provider.IdentityProvidergetIdentityProvider(org.keycloak.models.KeycloakSession session, org.keycloak.models.RealmModel realm, String alias)static org.keycloak.broker.provider.IdentityProviderFactorygetIdentityProviderFactory(org.keycloak.models.KeycloakSession session, org.keycloak.models.IdentityProviderModel model)voidinit()javax.ws.rs.core.ResponseperformLogin(String providerId, String code, String clientId, String tabId, String loginHint)javax.ws.rs.core.ResponseperformPostLogin(String providerId, String code, String clientId, String tabId, String loginHint)javax.ws.rs.core.ResponseretrieveToken(String providerId)javax.ws.rs.core.ResponseretrieveTokenPreflight()javax.ws.rs.core.ResponsevalidateUser(org.keycloak.sessions.AuthenticationSessionModel authSession, org.keycloak.models.UserModel user, org.keycloak.models.RealmModel realm)
-
-
-
Method Detail
-
init
public void init()
-
clientIntiatedAccountLinkingPreflight
@OPTIONS @Path("/{provider_id}/link") public javax.ws.rs.core.Response clientIntiatedAccountLinkingPreflight(@PathParam("provider_id") String providerId)Closes off CORS preflight requests for account linking- Parameters:
providerId-- Returns:
-
clientInitiatedAccountLinking
@GET @Path("/{provider_id}/link") public javax.ws.rs.core.Response clientInitiatedAccountLinking(@PathParam("provider_id") String providerId, @QueryParam("redirect_uri") String redirectUri, @QueryParam("client_id") String clientId, @QueryParam("nonce") String nonce, @QueryParam("hash") String hash)
-
performPostLogin
@POST @Path("/{provider_id}/login") public javax.ws.rs.core.Response performPostLogin(@PathParam("provider_id") String providerId, @QueryParam("session_code") String code, @QueryParam("client_id") String clientId, @QueryParam("tab_id") String tabId, @QueryParam("login_hint") String loginHint)
-
performLogin
@GET @Path("/{provider_id}/login") public javax.ws.rs.core.Response performLogin(@PathParam("provider_id") String providerId, @QueryParam("session_code") String code, @QueryParam("client_id") String clientId, @QueryParam("tab_id") String tabId, @QueryParam("login_hint") String loginHint)
-
getEndpoint
@Path("{provider_id}/endpoint") public Object getEndpoint(@PathParam("provider_id") String providerId)
-
retrieveTokenPreflight
@Path("{provider_id}/token") @OPTIONS public javax.ws.rs.core.Response retrieveTokenPreflight()
-
retrieveToken
@GET @Path("{provider_id}/token") public javax.ws.rs.core.Response retrieveToken(@PathParam("provider_id") String providerId)
-
authenticated
public javax.ws.rs.core.Response authenticated(org.keycloak.broker.provider.BrokeredIdentityContext context)
- Specified by:
authenticatedin interfaceorg.keycloak.broker.provider.IdentityProvider.AuthenticationCallback
-
validateUser
public javax.ws.rs.core.Response validateUser(org.keycloak.sessions.AuthenticationSessionModel authSession, org.keycloak.models.UserModel user, org.keycloak.models.RealmModel realm)
-
afterFirstBrokerLogin
@GET @Path("/after-first-broker-login") public javax.ws.rs.core.Response afterFirstBrokerLogin(@QueryParam("session_code") String code, @QueryParam("client_id") String clientId, @QueryParam("tab_id") String tabId)
-
afterPostBrokerLoginFlow
@GET @Path("/after-post-broker-login") public javax.ws.rs.core.Response afterPostBrokerLoginFlow(@QueryParam("session_code") String code, @QueryParam("client_id") String clientId, @QueryParam("tab_id") String tabId)
-
cancelled
public javax.ws.rs.core.Response cancelled()
- Specified by:
cancelledin interfaceorg.keycloak.broker.provider.IdentityProvider.AuthenticationCallback
-
error
public javax.ws.rs.core.Response error(String message)
- Specified by:
errorin interfaceorg.keycloak.broker.provider.IdentityProvider.AuthenticationCallback
-
getAndVerifyAuthenticationSession
public org.keycloak.sessions.AuthenticationSessionModel getAndVerifyAuthenticationSession(String encodedCode)
- Specified by:
getAndVerifyAuthenticationSessionin interfaceorg.keycloak.broker.provider.IdentityProvider.AuthenticationCallback
-
browserAuthentication
protected javax.ws.rs.core.Response browserAuthentication(org.keycloak.sessions.AuthenticationSessionModel authSession, String errorMessage)
-
getIdentityProvider
public static org.keycloak.broker.provider.IdentityProvider getIdentityProvider(org.keycloak.models.KeycloakSession session, org.keycloak.models.RealmModel realm, String alias)
-
getIdentityProviderFactory
public static org.keycloak.broker.provider.IdentityProviderFactory getIdentityProviderFactory(org.keycloak.models.KeycloakSession session, org.keycloak.models.IdentityProviderModel model)
-
-