Package org.keycloak.social.facebook
Class FacebookIdentityProvider
java.lang.Object
org.keycloak.broker.provider.AbstractIdentityProvider<C>
org.keycloak.broker.oidc.AbstractOAuth2IdentityProvider<FacebookIdentityProviderConfig>
org.keycloak.social.facebook.FacebookIdentityProvider
- All Implemented Interfaces:
ExchangeExternalToken,ExchangeTokenToIdentityProviderToken,IdentityProvider<FacebookIdentityProviderConfig>,SocialIdentityProvider<FacebookIdentityProviderConfig>,Provider
public class FacebookIdentityProvider
extends AbstractOAuth2IdentityProvider<FacebookIdentityProviderConfig>
implements SocialIdentityProvider<FacebookIdentityProviderConfig>
- Author:
- Stian Thorgersen
-
Nested Class Summary
Nested classes/interfaces inherited from class org.keycloak.broker.oidc.AbstractOAuth2IdentityProvider
AbstractOAuth2IdentityProvider.Endpoint, AbstractOAuth2IdentityProvider.OAuthResponseNested classes/interfaces inherited from interface org.keycloak.broker.provider.IdentityProvider
IdentityProvider.AuthenticationCallback -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringstatic final Stringstatic final Stringstatic final Stringprotected static final Stringstatic final StringFields inherited from class org.keycloak.broker.oidc.AbstractOAuth2IdentityProvider
ACCESS_DENIED, ACCESS_TOKEN_EXPIRATION, FEDERATED_REFRESH_TOKEN, FEDERATED_TOKEN_EXPIRATION, logger, 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_STATEFields 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
ConstructorsConstructorDescriptionFacebookIdentityProvider(KeycloakSession session, FacebookIdentityProviderConfig config) -
Method Summary
Modifier and TypeMethodDescriptionprotected BrokeredIdentityContextdoGetFederatedIdentity(String accessToken) protected BrokeredIdentityContextexchangeExternalTokenV2Impl(TokenExchangeContext tokenExchangeContext) Usage with external-internal token-exchange v2.protected BrokeredIdentityContextextractIdentityFromProfile(EventBuilder event, com.fasterxml.jackson.databind.JsonNode profile) protected Stringprotected Stringprotected booleanMethods inherited from class org.keycloak.broker.oidc.AbstractOAuth2IdentityProvider
asJsonNode, authenticateTokenRequest, authenticationFinished, buildUserInfoRequest, callback, createAuthorizationUrl, exchangeExternal, exchangeExternalComplete, exchangeExternalTokenV1Impl, exchangeExternalUserInfoValidationOnly, exchangeFromToken, exchangeSessionToken, exchangeStoredToken, extractTokenFromResponse, generateToken, getAccessTokenResponseParameter, getConfig, getFederatedIdentity, getJsonProperty, getRefreshTokenRequest, getSignatureContext, hasExternalExchangeToken, isIssuer, performLogin, retrieveToken, sendTokenIntrospectionRequest, supportsLongStateParameter, validateExternalTokenThroughUserInfo, validateExternalTokenWithIntrospectionEndpointMethods inherited from class org.keycloak.broker.provider.AbstractIdentityProvider
backchannelLogout, close, exchangeErrorResponse, exchangeNotLinked, exchangeNotLinkedNoStore, exchangeNotSupported, exchangeTokenExpired, exchangeUnsupportedRequiredType, export, getLinkingUrl, getMarshaller, importNewUser, keycloakInitiatedBrowserLogout, 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
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:
-
DEBUG_TOKEN_URL
- See Also:
-
DEFAULT_SCOPE
- See Also:
-
PROFILE_URL_FIELDS_SEPARATOR
- See Also:
-
-
Constructor Details
-
FacebookIdentityProvider
-
-
Method Details
-
doGetFederatedIdentity
- Overrides:
doGetFederatedIdentityin classAbstractOAuth2IdentityProvider<FacebookIdentityProviderConfig>
-
supportsExternalExchange
protected boolean supportsExternalExchange()- Overrides:
supportsExternalExchangein classAbstractOAuth2IdentityProvider<FacebookIdentityProviderConfig>
-
getProfileEndpointForValidation
- Overrides:
getProfileEndpointForValidationin classAbstractOAuth2IdentityProvider<FacebookIdentityProviderConfig>
-
extractIdentityFromProfile
protected BrokeredIdentityContext extractIdentityFromProfile(EventBuilder event, com.fasterxml.jackson.databind.JsonNode profile) - Overrides:
extractIdentityFromProfilein classAbstractOAuth2IdentityProvider<FacebookIdentityProviderConfig>
-
exchangeExternalTokenV2Impl
protected BrokeredIdentityContext exchangeExternalTokenV2Impl(TokenExchangeContext tokenExchangeContext) Description copied from class:AbstractOAuth2IdentityProviderUsage with external-internal token-exchange v2.- Overrides:
exchangeExternalTokenV2Implin classAbstractOAuth2IdentityProvider<FacebookIdentityProviderConfig>- Parameters:
tokenExchangeContext- data about token-exchange request- Returns:
- brokered identity context with the details about user from the IDP
-
getDefaultScopes
- Specified by:
getDefaultScopesin classAbstractOAuth2IdentityProvider<FacebookIdentityProviderConfig>
-