Package org.keycloak.authentication
Interface ClientAuthenticatorFactory
- All Superinterfaces:
ConfigurableAuthenticatorFactory,ConfiguredPerClientProvider,ConfiguredProvider,ProviderFactory<ClientAuthenticator>
- All Known Implementing Classes:
AbstractClientAuthenticator,ClientIdAndSecretAuthenticator,FederatedJWTClientAuthenticator,JWTClientAuthenticator,JWTClientSecretAuthenticator,X509ClientAuthenticator
public interface ClientAuthenticatorFactory
extends ProviderFactory<ClientAuthenticator>, ConfigurableAuthenticatorFactory, ConfiguredPerClientProvider
Factory for creating ClientAuthenticator instances. This is a singleton and created when Keycloak boots.
You must specify a file
META-INF/services/org.keycloak.authentication.ClientAuthenticatorFactory in the jar that this class is contained in
This file must have the fully qualified class name of all your ClientAuthenticatorFactory classes
- Author:
- Marek Posolda
-
Field Summary
Fields inherited from interface org.keycloak.authentication.ConfigurableAuthenticatorFactory
REQUIREMENT_CHOICES -
Method Summary
Modifier and TypeMethodDescriptioncreate()getAdapterConfiguration(KeycloakSession session, ClientModel client) Get configuration, which needs to be used for adapter ( keycloak.json ) of particular client.default StringGet protocol authentication method, which is set on the specified client.getProtocolAuthenticatorMethods(String loginProtocol) Get authentication methods for the specified protocolbooleanIs this authenticator configurable globally?default voidsetClientAuthenticationMethod(ClientRepresentation client, String protocolAuthMethod) Set specified client authentication method to the specified clientdefault booleanIs this authenticator supports client secret?Methods inherited from interface org.keycloak.authentication.ConfigurableAuthenticatorFactory
getDisplayType, getOptionalReferenceCategories, getReferenceCategory, getRequirementChoices, isUserSetupAllowedMethods inherited from interface org.keycloak.provider.ConfiguredPerClientProvider
getConfigPropertiesPerClientMethods inherited from interface org.keycloak.provider.ConfiguredProvider
getConfig, getConfigProperties, getHelpTextMethods inherited from interface org.keycloak.provider.ProviderFactory
close, create, dependsOn, getConfigMetadata, getId, init, order, postInit
-
Method Details
-
create
ClientAuthenticator create() -
isConfigurable
boolean isConfigurable()Is this authenticator configurable globally?- Specified by:
isConfigurablein interfaceConfigurableAuthenticatorFactory- Returns:
-
getAdapterConfiguration
Get configuration, which needs to be used for adapter ( keycloak.json ) of particular client. Some implementations may return just template and user needs to edit the values according to his environment (For example fill the location of keystore file)- Returns:
-
getProtocolAuthenticatorMethods
Get authentication methods for the specified protocol- Parameters:
loginProtocol- corresponds toProviderFactory.getId()- Returns:
- name of supported client authenticator methods in the protocol specific "language"
-
getProtocolAuthenticatorMethod
Get protocol authentication method, which is set on the specified client.- Parameters:
client- client whose authentication method will be returned- Returns:
- Client authentication method as specified in the related protocol specification. For example "client_secret_basic", "client_secret_post" or "private_key_jwt" might be used as returned values.
-
setClientAuthenticationMethod
Set specified client authentication method to the specified client- Parameters:
client- client to updateprotocolAuthMethod- Client authentication method as specified in the related protocol specification. For example "client_secret_basic", "client_secret_post" or "private_key_jwt" might be used as values of this parameter.
-
supportsSecret
default boolean supportsSecret()Is this authenticator supports client secret?- Returns:
- if it supports secret
-