T
- The type of configuration handled by this certificate mapper.@PublicAPI(stability=VOLATILE, mayInstantiate=false, mayExtend=true, mayInvoke=false) public abstract class CertificateMapper<T extends CertificateMapperCfg> extends Object implements ConfigurationChangeListener<T>
Constructor and Description |
---|
CertificateMapper() |
Modifier and Type | Method and Description |
---|---|
ConfigChangeResult |
applyConfigurationChange(T configuration)
Applies the configuration changes to this change listener.
|
protected abstract ConfigChangeResult |
applyConfigurationChange0(T configuration)
Implements certificate mapper specific actions when updating the configuration.
|
void |
finalizeCertificateMapper()
Performs any finalization that may be necessary for this certificate mapper.
|
void |
initializeCertificateMapper(T configuration)
Initializes this certificate mapper based on the information in the provided configuration entry.
|
protected abstract void |
initializeCertificateMapper0(T configuration)
Implements certificate mapper specific actions when initializing the certificate mapper.
|
boolean |
isConfigurationAcceptable(T configuration,
List<LocalizableMessage> unacceptableReasons)
Indicates whether the provided configuration is acceptable for this certificate mapper.
|
boolean |
isConfigurationChangeAcceptable(T configuration,
List<LocalizableMessage> unacceptableReasons)
Indicates whether the proposed change to the configuration is acceptable
to this change listener.
|
Entry |
mapCertificateToUser(Certificate[] certificateChain)
Establishes a mapping between the information in the provided certificate chain and a single user entry in the
Directory Server.
|
protected abstract Entry |
mapCertificateToUser0(Certificate[] certificateChain)
Implements certificate mapper specific logic for mapping the provided certificate to a user entry.
|
public final void initializeCertificateMapper(T configuration) throws ConfigException, InitializationException
configuration
- The configuration that should be used to intialize this certificate mapper.ConfigException
- If the provided entry does not contain a valid certificate mapper configuration.InitializationException
- If a problem occurs during initialization that is not related to the server configuration.protected abstract void initializeCertificateMapper0(T configuration) throws ConfigException, InitializationException
configuration
- The configuration that should be used to intialize this certificate mapper.ConfigException
- If the provided entry does not contain a valid certificate mapper configuration.InitializationException
- If a problem occurs during initialization that is not related to the server configuration.public boolean isConfigurationAcceptable(T configuration, List<LocalizableMessage> unacceptableReasons)
configuration
- The certificate mapper configuration for which to make the determination.unacceptableReasons
- A list that may be used to hold the reasons that the provided configuration is not acceptable.true
if the provided configuration is acceptable for this certificate mapper, or false
if
not.public void finalizeCertificateMapper()
public final Entry mapCertificateToUser(Certificate[] certificateChain) throws LdapException
certificateChain
- The certificate chain presented by the client during SSL negotiation. The peer certificate will be
listed first, followed by the ordered issuer chain as appropriate.null
if no mapping was established
and no special message is required to send back to the client.LdapException
- If a problem occurred while attempting to establish the mapping. This may include internal failures,
a mapping which matches multiple users, or any other case in which an error message should be
returned to the client.protected abstract Entry mapCertificateToUser0(Certificate[] certificateChain) throws LdapException
certificateChain
- The certificate chain presented by the client during SSL negotiation. The peer certificate will be
listed first, followed by the ordered issuer chain as appropriate.null
if no mapping was established
and no special message is required to send back to the client.LdapException
- If a problem occurred while attempting to establish the mapping. This may include internal failures,
a mapping which matches multiple users, or any other case in which an error message should be
returned to the client.public boolean isConfigurationChangeAcceptable(T configuration, List<LocalizableMessage> unacceptableReasons)
ConfigurationChangeListener
isConfigurationChangeAcceptable
in interface ConfigurationChangeListener<T extends CertificateMapperCfg>
configuration
- The new configuration containing the changes.unacceptableReasons
- A list that can be used to hold messages about why the
provided configuration is not acceptable.true
if the proposed change is acceptable,
or false
if it is not.public ConfigChangeResult applyConfigurationChange(T configuration)
ConfigurationChangeListener
applyConfigurationChange
in interface ConfigurationChangeListener<T extends CertificateMapperCfg>
configuration
- The new configuration containing the changes.protected abstract ConfigChangeResult applyConfigurationChange0(T configuration)
configuration
- the new configuration to useCopyright 2010-2022 ForgeRock AS.