Class OciVaultSecurityProvider
- java.lang.Object
-
- io.helidon.integrations.oci.vault.OciVaultSecurityProvider
-
- All Implemented Interfaces:
DigestProvider<OciVaultSecurityProvider.OciVaultDigestConfig>
,EncryptionProvider<OciVaultSecurityProvider.OciVaultEncryptionConfig>
,SecretsProvider<OciVaultSecurityProvider.OciVaultSecretConfig>
,SecurityProvider
public class OciVaultSecurityProvider extends Object implements SecretsProvider<OciVaultSecurityProvider.OciVaultSecretConfig>, EncryptionProvider<OciVaultSecurityProvider.OciVaultEncryptionConfig>, DigestProvider<OciVaultSecurityProvider.OciVaultDigestConfig>
Security provider to retrieve secrets from OCI Vault, and to use OCI KMS for encryption, decryption and signatures.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
OciVaultSecurityProvider.OciVaultDigestConfig
Configuration for a signature.static class
OciVaultSecurityProvider.OciVaultEncryptionConfig
Configuration for encryption/decryption.static class
OciVaultSecurityProvider.OciVaultSecretConfig
Configuration of an OCI Vault secret.-
Nested classes/interfaces inherited from interface io.helidon.security.spi.DigestProvider
DigestProvider.DigestFunction, DigestProvider.DigestSupport, DigestProvider.VerifyFunction
-
Nested classes/interfaces inherited from interface io.helidon.security.spi.EncryptionProvider
EncryptionProvider.EncryptionSupport
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static OciVaultSecurityProvider
create(Config config)
Create a new instance from configuration.DigestProvider.DigestSupport
digest(Config config)
Create digest support from configuration.DigestProvider.DigestSupport
digest(OciVaultSecurityProvider.OciVaultDigestConfig providerConfig)
Create digest support from configuration object.EncryptionProvider.EncryptionSupport
encryption(Config config)
Create encryption support from configuration.EncryptionProvider.EncryptionSupport
encryption(OciVaultSecurityProvider.OciVaultEncryptionConfig providerConfig)
Create encryption support from configuration object.Supplier<Single<Optional<String>>>
secret(Config config)
Create secret supplier from configuration.Supplier<Single<Optional<String>>>
secret(OciVaultSecurityProvider.OciVaultSecretConfig 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 Detail
-
create
public static OciVaultSecurityProvider create(Config config)
Create a new instance from configuration.- Parameters:
config
- configuration with connectivity to OCI- Returns:
- a new provider instance
-
secret
public Supplier<Single<Optional<String>>> secret(Config config)
Description copied from interface:SecretsProvider
Create secret supplier from configuration.- Specified by:
secret
in interfaceSecretsProvider<OciVaultSecurityProvider.OciVaultSecretConfig>
- Parameters:
config
- config located on the node of the specific secretconfig
node- Returns:
- supplier to retrieve the secret
-
secret
public Supplier<Single<Optional<String>>> secret(OciVaultSecurityProvider.OciVaultSecretConfig providerConfig)
Description copied from interface:SecretsProvider
Create secret supplier from configuration object.- Specified by:
secret
in interfaceSecretsProvider<OciVaultSecurityProvider.OciVaultSecretConfig>
- Parameters:
providerConfig
- configuration of a specific secret- Returns:
- supplier to retrieve the secret
-
encryption
public EncryptionProvider.EncryptionSupport encryption(Config config)
Description copied from interface:EncryptionProvider
Create encryption support from configuration.- Specified by:
encryption
in interfaceEncryptionProvider<OciVaultSecurityProvider.OciVaultEncryptionConfig>
- Parameters:
config
- config located on the node of the specific encryptionconfig
node- Returns:
- encryption support to encrypt/decrypt
-
encryption
public EncryptionProvider.EncryptionSupport encryption(OciVaultSecurityProvider.OciVaultEncryptionConfig providerConfig)
Description copied from interface:EncryptionProvider
Create encryption support from configuration object.- Specified by:
encryption
in interfaceEncryptionProvider<OciVaultSecurityProvider.OciVaultEncryptionConfig>
- Parameters:
providerConfig
- configuring a specific encryption- Returns:
- encryption support to encrypt/decrypt
-
digest
public DigestProvider.DigestSupport digest(Config config)
Description copied from interface:DigestProvider
Create digest support from configuration.- Specified by:
digest
in interfaceDigestProvider<OciVaultSecurityProvider.OciVaultDigestConfig>
- Parameters:
config
- config located on the node of the specific digestconfig
node- Returns:
- digest support to digest/verify
-
digest
public DigestProvider.DigestSupport digest(OciVaultSecurityProvider.OciVaultDigestConfig providerConfig)
Description copied from interface:DigestProvider
Create digest support from configuration object.- Specified by:
digest
in interfaceDigestProvider<OciVaultSecurityProvider.OciVaultDigestConfig>
- Parameters:
providerConfig
- configuring a specific digest- Returns:
- digest support to digest/verify
-
-