Class KeyManagerProvider<T extends KeyManagerProviderCfg>

    • Constructor Detail

      • KeyManagerProvider

        public KeyManagerProvider()
    • Method Detail

      • initializeKeyManagerProvider

        public abstract void initializeKeyManagerProvider​(T configuration)
                                                   throws ConfigException,
                                                          InitializationException
        Initializes this key manager provider based on the information in the provided key manager provider configuration.
        Parameters:
        configuration - The key manager provider configuration that contains the information to use to initialize this key manager provider.
        Throws:
        ConfigException - If an unrecoverable problem arises in the process of performing the initialization as a result of the server configuration.
        InitializationException - If a problem occurs during initialization that is not related to the server configuration.
      • containsAtLeastOneKey

        public boolean containsAtLeastOneKey()
        Verifies that the keystore has at least one usable key.
        Returns:
        true if the keystore has at least one usable key, false otherwise
      • isConfigurationAcceptable

        public boolean isConfigurationAcceptable​(T configuration,
                                                 List<LocalizableMessage> unacceptableReasons)
        Indicates whether the provided configuration is acceptable for this key manager provider. It should be possible to call this method on an uninitialized key manager provider instance in order to determine whether the key manager provider would be able to use the provided configuration.
        Parameters:
        configuration - The key manager provider 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.
        Returns:
        true if the provided configuration is acceptable for this key manager provider, or false if not.
      • finalizeKeyManagerProvider

        public final void finalizeKeyManagerProvider()
        Deregister certificate monitor entries associated to this key manager provider from the server and performs any other finalization that may be necessary.
      • finalizeKeyManagerProviderImpl

        protected abstract void finalizeKeyManagerProviderImpl()
        Performs any other finalization actions that may be necessary by this key manager provider implementation.
      • getKeyManagers

        public abstract KeyManager[] getKeyManagers()
                                             throws LdapException
        Retrieves a set of KeyManager objects that may be used for interactions requiring access to a key manager.
        Returns:
        A set of KeyManager objects that may be used for interactions requiring access to a key manager.
        Throws:
        LdapException - If a problem occurs while attempting to obtain the set of key managers.
      • registerCertificateMonitorEntries

        public final void registerCertificateMonitorEntries()
        Registers one certificate monitor entry for each X509 certificate present in this key manager provider.
      • getKeyStore

        public abstract KeyStore getKeyStore()
                                      throws LdapException
        Returns the keystore used by this key manager provider.
        Returns:
        The KeyStore used by this key manager provider.
        Throws:
        LdapException - If a problem occurs while attempting to retrieve the keystore.
      • getServerContext

        protected final ServerContext getServerContext()
        Returns the server context.
        Returns:
        the server context.
      • getConfig

        protected final T getConfig()
        Returns the configuration associated to this key manager provider.
        Returns:
        the configuration associated to this KeyManagerProvider.
      • setServerContext

        public void setServerContext​(ServerContext serverContext)
        Sets the server context.
        Parameters:
        serverContext - the server context
      • setConfig

        protected final void setConfig​(T currentConfig)
        Sets the configuration associated to this key manager provider.
        Parameters:
        currentConfig - The configuration to associate to this KeyManagerProvider
      • getName

        protected String getName()
        Returns the name of this key manager provider to be used in certificate monitor entries.

        Default implementation returns the name of this key manager provider configuration.

        Returns:
        A string representing the name of KeyManagerProvider