Class ConfigVaultProvider
java.lang.Object
io.helidon.security.providers.config.vault.ConfigVaultProvider
- All Implemented Interfaces:
EncryptionProvider<ConfigVaultProvider.EncryptionConfig>
,SecretsProvider<ConfigVaultProvider.SecretConfig>
,SecurityProvider
public class ConfigVaultProvider
extends Object
implements SecretsProvider<ConfigVaultProvider.SecretConfig>, EncryptionProvider<ConfigVaultProvider.EncryptionConfig>
Security provider to retrieve secrets directly from configuration and to encrypt/decrypt data
using config's security setup.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
Fluent API builder forConfigVaultProvider
.static class
Configuration of encryption.static class
Configuration of a secret.Nested classes/interfaces inherited from interface io.helidon.security.spi.EncryptionProvider
EncryptionProvider.EncryptionSupport
-
Method Summary
Modifier and TypeMethodDescriptionstatic ConfigVaultProvider.Builder
builder()
Create a new builder to configure this provider.static ConfigVaultProvider
create()
Creates the provider with default configuration, supporting encryption if it is configured using environment variables or system properties.static ConfigVaultProvider
Creates the provider from configuration, supporting encryption if its configuration is found.encryption
(Config config) Create encryption support from configuration.encryption
(ConfigVaultProvider.EncryptionConfig providerConfig) Create encryption support from configuration object.Create secret supplier from configuration.secret
(ConfigVaultProvider.SecretConfig providerConfig) Create secret supplier from configuration object.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.helidon.security.spi.SecurityProvider
supportedAnnotations, supportedAttributes, supportedConfigKeys, supportedCustomObjects
-
Method Details
-
builder
Create a new builder to configure this provider.- Returns:
- a new builder
-
create
Creates the provider with default configuration, supporting encryption if it is configured using environment variables or system properties.- Returns:
- new security provider
-
create
Creates the provider from configuration, supporting encryption if its configuration is found.- Parameters:
config
- configuration of this provider- Returns:
- new security provider
-
secret
Description copied from interface:SecretsProvider
Create secret supplier from configuration.- Specified by:
secret
in interfaceSecretsProvider<ConfigVaultProvider.SecretConfig>
- Parameters:
config
- config located on the node of the specific secretconfig
node- Returns:
- supplier to retrieve the secret
-
secret
Description copied from interface:SecretsProvider
Create secret supplier from configuration object.- Specified by:
secret
in interfaceSecretsProvider<ConfigVaultProvider.SecretConfig>
- Parameters:
providerConfig
- configuration of a specific secret- Returns:
- supplier to retrieve the secret
-
encryption
Description copied from interface:EncryptionProvider
Create encryption support from configuration.- Specified by:
encryption
in interfaceEncryptionProvider<ConfigVaultProvider.EncryptionConfig>
- Parameters:
config
- config located on the node of the specific encryptionconfig
node- Returns:
- encryption support to encrypt/decrypt
-
encryption
public EncryptionProvider.EncryptionSupport encryption(ConfigVaultProvider.EncryptionConfig providerConfig) Description copied from interface:EncryptionProvider
Create encryption support from configuration object.- Specified by:
encryption
in interfaceEncryptionProvider<ConfigVaultProvider.EncryptionConfig>
- Parameters:
providerConfig
- configuring a specific encryption- Returns:
- encryption support to encrypt/decrypt
-