Class ContainerSecretsProvider<T extends ContainerSecretsProviderType>

java.lang.Object
com.evolveum.midpoint.common.secrets.SecretsProviderImpl<T>
com.evolveum.midpoint.common.secrets.ContainerSecretsProvider<T>
All Implemented Interfaces:
SecretsProvider<T>
Direct Known Subclasses:
DockerSecretsProvider, FileSecretsProvider

public abstract class ContainerSecretsProvider<T extends ContainerSecretsProviderType> extends SecretsProviderImpl<T>
Secrets provider that reads secrets from files. Each secret is stored as separate file where secret name is file name and secret value is file content. Parent directory for secrets has to be defined in configuration.
  • Constructor Details

    • ContainerSecretsProvider

      public ContainerSecretsProvider(T configuration)
  • Method Details

    • initialize

      public void initialize()
      Description copied from interface: SecretsProvider
      Post-construction initialization. Called before the provider is added to the list of usable providers.
    • getParentDirectory

      @NotNull protected abstract @NotNull File getParentDirectory()
    • resolveSecret

      protected <ST> ST resolveSecret(@NotNull @NotNull String key, @NotNull @NotNull Class<ST> type) throws EncryptionException
      Description copied from class: SecretsProviderImpl
      Should return secret value for given key or null if the secret does not exist.
      Specified by:
      resolveSecret in class SecretsProviderImpl<T extends ContainerSecretsProviderType>
      Throws:
      EncryptionException - if the secret cannot be resolved (e.g. due to network problems, or unforeseen error)