Package org.keycloak.social.gitlab
Class GitLabIdentityProvider
java.lang.Object
org.keycloak.broker.provider.AbstractIdentityProvider<C>
org.keycloak.broker.oidc.AbstractOAuth2IdentityProvider<OIDCIdentityProviderConfig>
org.keycloak.broker.oidc.OIDCIdentityProvider
org.keycloak.social.gitlab.GitLabIdentityProvider
- All Implemented Interfaces:
ExchangeExternalToken
,ExchangeTokenToIdentityProviderToken
,IdentityProvider<OIDCIdentityProviderConfig>
,SocialIdentityProvider<OIDCIdentityProviderConfig>
,Provider
public class GitLabIdentityProvider
extends OIDCIdentityProvider
implements SocialIdentityProvider<OIDCIdentityProviderConfig>
- Author:
- Stian Thorgersen
-
Nested Class Summary
Nested classes/interfaces inherited from class org.keycloak.broker.oidc.OIDCIdentityProvider
OIDCIdentityProvider.OIDCEndpoint
Nested classes/interfaces inherited from class org.keycloak.broker.oidc.AbstractOAuth2IdentityProvider
AbstractOAuth2IdentityProvider.Endpoint
Nested classes/interfaces inherited from interface org.keycloak.broker.provider.IdentityProvider
IdentityProvider.AuthenticationCallback
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
static final String
static final String
static final String
Fields inherited from class org.keycloak.broker.oidc.OIDCIdentityProvider
ACCESS_TOKEN_EXPIRATION, EXCHANGE_PROVIDER, FEDERATED_ACCESS_TOKEN_RESPONSE, FEDERATED_ID_TOKEN, logger, SCOPE_OPENID, VALIDATED_ACCESS_TOKEN, VALIDATED_ID_TOKEN
Fields inherited from class org.keycloak.broker.oidc.AbstractOAuth2IdentityProvider
ACCESS_DENIED, FEDERATED_REFRESH_TOKEN, FEDERATED_TOKEN_EXPIRATION, mapper, OAUTH2_GRANT_TYPE_AUTHORIZATION_CODE, OAUTH2_GRANT_TYPE_REFRESH_TOKEN, OAUTH2_PARAMETER_ACCESS_TOKEN, OAUTH2_PARAMETER_CLIENT_ID, OAUTH2_PARAMETER_CLIENT_SECRET, OAUTH2_PARAMETER_CODE, OAUTH2_PARAMETER_GRANT_TYPE, OAUTH2_PARAMETER_REDIRECT_URI, OAUTH2_PARAMETER_RESPONSE_TYPE, OAUTH2_PARAMETER_SCOPE, OAUTH2_PARAMETER_STATE
Fields inherited from class org.keycloak.broker.provider.AbstractIdentityProvider
ACCOUNT_LINK_URL, session
Fields inherited from interface org.keycloak.broker.provider.IdentityProvider
EXTERNAL_IDENTITY_PROVIDER, FEDERATED_ACCESS_TOKEN
-
Constructor Summary
ConstructorDescriptionGitLabIdentityProvider
(KeycloakSession session, OIDCIdentityProviderConfig config) -
Method Summary
Modifier and TypeMethodDescriptionprotected BrokeredIdentityContext
exchangeExternalImpl
(EventBuilder event, jakarta.ws.rs.core.MultivaluedMap<String, String> params) protected BrokeredIdentityContext
extractIdentity
(AccessTokenResponse tokenResponse, String accessToken, JsonWebToken idToken) protected BrokeredIdentityContext
extractIdentityFromProfile
(EventBuilder event, com.fasterxml.jackson.databind.JsonNode profile) protected String
protected String
protected String
getUsernameFromUserInfo
(com.fasterxml.jackson.databind.JsonNode userInfo) boolean
protected boolean
Methods inherited from class org.keycloak.broker.oidc.OIDCIdentityProvider
authenticationFinished, backchannelLogout, backchannelLogout, callback, createAuthorizationUrl, exchangeSessionToken, exchangeStoredToken, getDefaultScopes, getFederatedIdentity, getIdentityProviderKeyWrapper, getRefreshTokenRequest, getUserInfoUrl, isAuthTimeExpired, isTokenTypeSupported, keycloakInitiatedBrowserLogout, parseTokenInput, preprocessFederatedIdentity, processAccessTokenResponse, refreshTokenForLogout, reloadKeys, validateJwt, validateToken, validateToken, verify
Methods inherited from class org.keycloak.broker.oidc.AbstractOAuth2IdentityProvider
asJsonNode, authenticateTokenRequest, buildUserInfoRequest, doGetFederatedIdentity, exchangeExternal, exchangeExternalComplete, exchangeExternalUserInfoValidationOnly, exchangeFromToken, extractTokenFromResponse, generateToken, getAccessTokenResponseParameter, getConfig, getJsonProperty, getSignatureContext, hasExternalExchangeToken, performLogin, retrieveToken, validateExternalTokenThroughUserInfo
Methods inherited from class org.keycloak.broker.provider.AbstractIdentityProvider
close, exchangeErrorResponse, exchangeNotLinked, exchangeNotLinkedNoStore, exchangeNotSupported, exchangeTokenExpired, exchangeUnsupportedRequiredType, export, getLinkingUrl, getMarshaller, importNewUser, updateBrokeredUser
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.keycloak.broker.provider.ExchangeExternalToken
exchangeExternal, exchangeExternalComplete
Methods inherited from interface org.keycloak.broker.provider.IdentityProvider
authenticationFinished, backchannelLogout, callback, export, getConfig, getMarshaller, importNewUser, isMapperSupported, keycloakInitiatedBrowserLogout, performLogin, preprocessFederatedIdentity, reloadKeys, retrieveToken, updateBrokeredUser
-
Field Details
-
AUTH_URL
- See Also:
-
TOKEN_URL
- See Also:
-
USER_INFO
- See Also:
-
READ_USER_SCOPE
- See Also:
-
-
Constructor Details
-
GitLabIdentityProvider
-
-
Method Details
-
getUsernameFromUserInfo
- Overrides:
getUsernameFromUserInfo
in classOIDCIdentityProvider
-
getusernameClaimNameForIdToken
- Overrides:
getusernameClaimNameForIdToken
in classOIDCIdentityProvider
-
supportsExternalExchange
protected boolean supportsExternalExchange()- Overrides:
supportsExternalExchange
in classOIDCIdentityProvider
-
getProfileEndpointForValidation
- Overrides:
getProfileEndpointForValidation
in classOIDCIdentityProvider
-
isIssuer
- Specified by:
isIssuer
in interfaceExchangeExternalToken
- Overrides:
isIssuer
in classOIDCIdentityProvider
-
exchangeExternalImpl
protected BrokeredIdentityContext exchangeExternalImpl(EventBuilder event, jakarta.ws.rs.core.MultivaluedMap<String, String> params) - Overrides:
exchangeExternalImpl
in classOIDCIdentityProvider
-
extractIdentityFromProfile
protected BrokeredIdentityContext extractIdentityFromProfile(EventBuilder event, com.fasterxml.jackson.databind.JsonNode profile) - Overrides:
extractIdentityFromProfile
in classOIDCIdentityProvider
-
extractIdentity
protected BrokeredIdentityContext extractIdentity(AccessTokenResponse tokenResponse, String accessToken, JsonWebToken idToken) throws IOException - Overrides:
extractIdentity
in classOIDCIdentityProvider
- Throws:
IOException
-