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 classOciVaultSecurityProvider.OciVaultDigestConfigConfiguration for a signature.static classOciVaultSecurityProvider.OciVaultEncryptionConfigConfiguration for encryption/decryption.static classOciVaultSecurityProvider.OciVaultSecretConfigConfiguration 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 OciVaultSecurityProvidercreate(Config config)Create a new instance from configuration.DigestProvider.DigestSupportdigest(Config config)Create digest support from configuration.DigestProvider.DigestSupportdigest(OciVaultSecurityProvider.OciVaultDigestConfig providerConfig)Create digest support from configuration object.EncryptionProvider.EncryptionSupportencryption(Config config)Create encryption support from configuration.EncryptionProvider.EncryptionSupportencryption(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:SecretsProviderCreate secret supplier from configuration.- Specified by:
secretin interfaceSecretsProvider<OciVaultSecurityProvider.OciVaultSecretConfig>- Parameters:
config- config located on the node of the specific secretconfignode- Returns:
- supplier to retrieve the secret
-
secret
public Supplier<Single<Optional<String>>> secret(OciVaultSecurityProvider.OciVaultSecretConfig providerConfig)
Description copied from interface:SecretsProviderCreate secret supplier from configuration object.- Specified by:
secretin 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:EncryptionProviderCreate encryption support from configuration.- Specified by:
encryptionin interfaceEncryptionProvider<OciVaultSecurityProvider.OciVaultEncryptionConfig>- Parameters:
config- config located on the node of the specific encryptionconfignode- Returns:
- encryption support to encrypt/decrypt
-
encryption
public EncryptionProvider.EncryptionSupport encryption(OciVaultSecurityProvider.OciVaultEncryptionConfig providerConfig)
Description copied from interface:EncryptionProviderCreate encryption support from configuration object.- Specified by:
encryptionin 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:DigestProviderCreate digest support from configuration.- Specified by:
digestin interfaceDigestProvider<OciVaultSecurityProvider.OciVaultDigestConfig>- Parameters:
config- config located on the node of the specific digestconfignode- Returns:
- digest support to digest/verify
-
digest
public DigestProvider.DigestSupport digest(OciVaultSecurityProvider.OciVaultDigestConfig providerConfig)
Description copied from interface:DigestProviderCreate digest support from configuration object.- Specified by:
digestin interfaceDigestProvider<OciVaultSecurityProvider.OciVaultDigestConfig>- Parameters:
providerConfig- configuring a specific digest- Returns:
- digest support to digest/verify
-
-