Package org.keycloak.social.google
Class GoogleIdentityProvider
java.lang.Object
org.keycloak.broker.provider.AbstractIdentityProvider<C>
org.keycloak.broker.oidc.AbstractOAuth2IdentityProvider<OIDCIdentityProviderConfig>
org.keycloak.broker.oidc.OIDCIdentityProvider
org.keycloak.social.google.GoogleIdentityProvider
- All Implemented Interfaces:
ExchangeExternalToken
,ExchangeTokenToIdentityProviderToken
,IdentityProvider<OIDCIdentityProviderConfig>
,SocialIdentityProvider<OIDCIdentityProviderConfig>
,Provider
public class GoogleIdentityProvider
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
FieldsModifier and TypeFieldDescriptionstatic final String
static 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, USER_INFO, 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, BROKER_REGISTERED_NEW_USER, session, UPDATE_PROFILE_EMAIL_CHANGED, UPDATE_PROFILE_USERNAME_CHANGED
Fields inherited from interface org.keycloak.broker.provider.IdentityProvider
EXTERNAL_IDENTITY_PROVIDER, FEDERATED_ACCESS_TOKEN
-
Constructor Summary
ConstructorsConstructorDescriptionGoogleIdentityProvider
(KeycloakSession session, GoogleIdentityProviderConfig config) -
Method Summary
Modifier and TypeMethodDescriptionprotected jakarta.ws.rs.core.UriBuilder
protected BrokeredIdentityContext
exchangeExternalTokenV1Impl
(EventBuilder event, jakarta.ws.rs.core.MultivaluedMap<String, String> params) Usage with token-exchange V1protected BrokeredIdentityContext
exchangeExternalTokenV2Impl
(TokenExchangeContext tokenExchangeContext) Usage with external-internal token-exchange v2.protected String
protected String
boolean
protected boolean
protected JsonWebToken
validateToken
(String encodedToken, boolean ignoreAudience) Methods inherited from class org.keycloak.broker.oidc.OIDCIdentityProvider
authenticationFinished, backchannelLogout, backchannelLogout, callback, exchangeSessionToken, exchangeStoredToken, extractIdentity, extractIdentityFromProfile, getFederatedIdentity, getIdentityProviderKeyWrapper, getProfileEndpointForValidation, getRefreshTokenRequest, getusernameClaimNameForIdToken, getUsernameFromUserInfo, isAuthTimeExpired, isTokenTypeSupported, keycloakInitiatedBrowserLogout, parseTokenInput, preprocessFederatedIdentity, processAccessTokenResponse, refreshTokenForLogout, reloadKeys, setEmailVerified, validateExternalTokenThroughUserInfo, validateJwt, 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
Methods inherited from class org.keycloak.broker.provider.AbstractIdentityProvider
close, exchangeErrorResponse, exchangeNotLinked, exchangeNotLinkedNoStore, exchangeNotSupported, exchangeTokenExpired, exchangeUnsupportedRequiredType, export, getLinkingUrl, getMarshaller, importNewUser, updateBrokeredUser, updateEmail
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, supportsLongStateParameter, updateBrokeredUser
-
Field Details
-
AUTH_URL
- See Also:
-
TOKEN_URL
- See Also:
-
PROFILE_URL
- See Also:
-
TOKEN_INFO_URL
- See Also:
-
DEFAULT_SCOPE
- See Also:
-
-
Constructor Details
-
GoogleIdentityProvider
-
-
Method Details
-
getDefaultScopes
- Overrides:
getDefaultScopes
in classOIDCIdentityProvider
-
getUserInfoUrl
- Overrides:
getUserInfoUrl
in classOIDCIdentityProvider
-
supportsExternalExchange
protected boolean supportsExternalExchange()- Overrides:
supportsExternalExchange
in classOIDCIdentityProvider
-
isIssuer
- Specified by:
isIssuer
in interfaceExchangeExternalToken
- Overrides:
isIssuer
in classOIDCIdentityProvider
-
exchangeExternalTokenV1Impl
protected BrokeredIdentityContext exchangeExternalTokenV1Impl(EventBuilder event, jakarta.ws.rs.core.MultivaluedMap<String, String> params) Description copied from class:AbstractOAuth2IdentityProvider
Usage with token-exchange V1- Overrides:
exchangeExternalTokenV1Impl
in classOIDCIdentityProvider
- Parameters:
event
- event builderparams
- parameters of the token-exchange request- Returns:
- brokered identity context with the details about user from the IDP
-
exchangeExternalTokenV2Impl
protected BrokeredIdentityContext exchangeExternalTokenV2Impl(TokenExchangeContext tokenExchangeContext) Description copied from class:AbstractOAuth2IdentityProvider
Usage with external-internal token-exchange v2.- Overrides:
exchangeExternalTokenV2Impl
in classAbstractOAuth2IdentityProvider<OIDCIdentityProviderConfig>
- Parameters:
tokenExchangeContext
- data about token-exchange request- Returns:
- brokered identity context with the details about user from the IDP
-
createAuthorizationUrl
- Overrides:
createAuthorizationUrl
in classOIDCIdentityProvider
-
validateToken
- Overrides:
validateToken
in classOIDCIdentityProvider
-