Uses of Class
org.forgerock.secrets.Purpose
Package
Description
This package contains
Filter
to authenticate and authorize LDAP connections.Provides a unified API for accessing secrets of various kinds.
Implementations of
SecretStore
for accessing keys stored in Java KeyStores, such as
PKCS#11 Hardware Security Modules (HSMs) and PKCS#12 file-based encrypted key stores.Provides a
SecretStore
implementation that loads secrets from a Common Configuration
PropertyResolver
and then decodes it with a
SecretPropertyFormat
.-
Uses of Purpose in org.forgerock.opendj.rest2ldap.authz
Modifier and TypeMethodDescription<S extends Secret>
Promise<Stream<S>,NeverThrowsException> static <T extends Secret>
JwtFactories.JwtSecretsProviderJwtFactories.newSecretsProvider
(Clock clock, SecretStore<? super T> secretStore, Purpose<? extends T>... purposes) Returns a newJwtFactories.JwtSecretsProvider
.ModifierConstructorDescriptionSecretKeyStore
(Clock clock, SecretStores.SecretKeyGenerator<? extends SecretKey> secretKeyGenerator, Purpose<?>[] purposes) Creates a new SingleSecretStore that produces secrets based on the secret key generated by the givenSecretStores.SecretKeyStore.secretKeyGenerator
. -
Uses of Purpose in org.forgerock.secrets
Modifier and TypeFieldDescriptionstatic final Purpose<DataDecryptionKey>
Purpose.DATA_DECRYPTION
Indicates a key intended for decrypting data.static final Purpose<DataEncryptionKey>
Purpose.DATA_ENCRYPTION
Indicates a key intended for encrypting data.static final Purpose<KeyAgreementKey>
Purpose.KEY_AGREEMENT
Indicates a key intended for an interactive key agreement protocol, such as Diffie-Hellman (DH) or the elliptic curve equivalent (ECDH).static final Purpose<KeyDecryptionKey>
Purpose.KEY_DECRYPTION
Indicates a key intended for decrypting ("unwrapping") other keys.static final Purpose<KeyEncryptionKey>
Purpose.KEY_ENCRYPTION
Indicates a key intended for encrypting ("wrapping") other keys.static final Purpose<GenericSecret>
Purpose.PASSWORD
Indicates a secret intended to be used as a password for authentication to some service.static final Purpose<SigningKey>
Purpose.SIGN
Indicates a key intended for creating digital signatures or message authentication codes (MACs).static final Purpose<VerificationKey>
Purpose.VERIFY
Indicates a key intended for verifying digital signatures or message authentication codes.static final Purpose<CertificateVerificationKey>
Purpose.VERIFY_CERTIFICATE
Indicates a key intended for verifying certificate signatures.Modifier and TypeMethodDescriptionPurpose<?>
NoSuchSecretException.getPurpose()
Returns the purpose for which no secret was found, or null if not specified.Constructs a purpose object.Purpose.purpose
(String label, Class<T> type, SecretConstraint<? super T>... constraints) Constructs a purpose object.Purpose.withConstraints
(SecretConstraint<? super T>... constraints) Constructs a new purpose that is identical to this purpose but which imposes additional constraints on the secrets that can satisfy it.Modifier and TypeMethodDescriptionstatic <T extends Secret>
SecretReference<T>SecretReference.active
(SecretsProvider secretsProvider, Purpose<T> purpose, Clock clock) Creates a reference to the active secret for the given purpose using the given secrets provider.SecretsProvider.asKeyStore
(Purpose<T> purpose) Returns a view of this secrets provider as a keystore for the given purpose.<T extends Secret>
TBuilds a secret of the given type, enforcing anyconstraints
attached to the purpose.<S extends Secret>
SecretReference<S>SecretsProvider.createActiveReference
(Purpose<S> purpose) Creates the secret reference from the given purpose.<S extends Secret>
SecretReference<S>SecretsProvider.createNamedReference
(Purpose<S> purpose, String name) Creates a reference to a secret with the given name (stable id) for the given purpose.<S extends Secret>
ValidSecretsReference<S,NeverThrowsException> SecretsProvider.createValidOrNamedReference
(Purpose<S> purpose, String name) Creates the valid secrets reference from the given purpose.<S extends Secret>
ValidSecretsReference<S,NeverThrowsException> SecretsProvider.createValidReference
(Purpose<S> purpose) Creates the valid secrets reference from the given purpose.default <S extends T>
Promise<S,NoSuchSecretException> Returns the active secret for the given purpose.<S extends T>
Promise<S,NoSuchSecretException> <S extends Secret>
Promise<S,NoSuchSecretException> SecretsProvider.getActiveSecret
(Purpose<S> purpose) Gets the currently active secret for the given purpose.SecretsProvider.getKeyManager
(Purpose<? extends CryptoKey> purpose) Returns aKeyManager
that can be used toinitialize an SSLContext
, allowing certificates and private keys to be retrieved from this secrets provider.SecretsProvider.getKeyManager
(Purpose<? extends CryptoKey> purpose, Options options) Returns aKeyManager
that can be used toinitialize an SSLContext
, allowing certificates and private keys to be retrieved from this secrets provider.default <S extends T>
Promise<S,NoSuchSecretException> Returns the named secret from this store.<S extends T>
Promise<S,NoSuchSecretException> <S extends Secret>
Promise<Stream<S>,NeverThrowsException> SecretsProvider.getNamedOrValidSecrets
(Purpose<S> purpose, String id) If the given id is not null, then this returns the single named secret that corresponds to that stable id (or a stream of valid secrets for the givenpurpose
if no such secret exists), otherwise it returns all valid secrets for the given purpose.<S extends Secret>
Promise<S,NoSuchSecretException> SecretsProvider.getNamedSecret
(Purpose<S> purpose, String id) Gets the secret for the given purpose with the given stable secret id.SecretsProvider.getTrustManager
(Purpose<? extends CryptoKey> purpose) Constructs anX509ExtendedTrustManager
that will retrieve certificates from this secrets provider for the provided purpose.SecretsProvider.getTrustManager
(Purpose<? extends CryptoKey> purpose, Options options) Constructs anX509ExtendedTrustManager
that will retrieve certificates from this secrets provider for the provided purpose.<S extends T>
Promise<Stream<S>,NeverThrowsException> Returns all valid secrets for the given purpose from this store.<S extends T>
Promise<Stream<S>,NeverThrowsException> <S extends Secret>
Promise<Stream<S>,NeverThrowsException> SecretsProvider.getValidSecrets
(Purpose<S> purpose) Returns all secrets for the given purpose which have not yet expired.static <T extends Secret>
SecretReference<T>SecretReference.named
(SecretsProvider secretsProvider, Purpose<T> purpose, String name, Clock clock) Creates a reference to a named secret using the given secrets provider.default void
Retires the given secret for the given purpose.void
default void
Rotates the active secret for the given purpose.void
protected <T extends Secret>
voidSecretsProvider.setActiveStore
(SecretStore<? super T> store, Purpose<? extends T> purpose) Sets the active store to use for the given purpose.final <T extends Secret>
SecretsProviderSecretsProvider.setActiveStore
(SecretStore<? super T> store, Purpose<? extends T>... purposes) Sets the active store to use for the given purpose.<S extends Secret>
SecretsProviderSecretsProvider.useSpecificSecretForPurpose
(Purpose<S> purpose, S secret) Configures this SecretsProvider to always return the specific given secret for the given purpose.<S extends Secret>
SecretsProviderSecretsProvider.useSpecificSecretsForPurpose
(Purpose<S> purpose, List<S> secrets) Configures this SecretsProvider to always return the specific given secrets for the given purpose.static <T extends Secret>
ValidSecretsReference<T,NeverThrowsException> ValidSecretsReference.valid
(SecretsProvider secretsProvider, Purpose<T> purpose, Clock clock) Creates a reference to the valid secrets for the given purpose using the given secrets provider.static <T extends Secret>
ValidSecretsReference<T,NeverThrowsException> ValidSecretsReference.validOrNamed
(SecretsProvider secretsProvider, Purpose<T> purpose, String name, Clock clock) This creates a reference to either the named secret or all valid secrets for the purpose.Modifier and TypeMethodDescriptionSecretsProvider.asKeyStore
(Set<Purpose<? extends CryptoKey>> purposes) Returns a view of this secrets provider as a keystore for the given purposes.SecretsProvider.getKeyManager
(Set<Purpose<? extends CryptoKey>> purposes, Options options) Returns aKeyManager
that can be used toinitialize an SSLContext
, allowing certificates and private keys to be retrieved from this secrets provider.SecretsProvider.getTrustManager
(Set<Purpose<? extends CryptoKey>> purposes, Options options) Constructs anX509ExtendedTrustManager
that will retrieve certificates from this secrets provider for the provided purposes.ModifierConstructorDescriptionNoSuchSecretException
(Purpose<?> purpose) Constructs the exception for the given purpose.NoSuchSecretException
(Purpose<?> purpose, String id) Constructs the exception for the given purpose and secret stable id.SecretReference
(SecretsProvider provider, Purpose<T> purpose) Deprecated.SecretReference
(SecretsProvider provider, Purpose<T> purpose, Clock clock) Deprecated.SecretsLoadStoreParameter
(SecretsProvider secretsProvider, Purpose<? extends CryptoKey> purpose, Clock clock) Initialises the keystore with the given secrets API objects.ModifierConstructorDescriptionSecretsLoadStoreParameter
(SecretsProvider secretsProvider, Set<Purpose<? extends CryptoKey>> purposes, Clock clock) Initialises the keystore with the given secrets API objects. -
Uses of Purpose in org.forgerock.secrets.keystore
Modifier and TypeMethodDescription<S extends Secret>
Promise<S,NoSuchSecretException> <S extends Secret>
Promise<S,NoSuchSecretException> <S extends Secret>
Promise<Stream<S>,NeverThrowsException> void
Retires a key previously used for a given purpose.void
Rotates the key associated with a given purpose. -
Uses of Purpose in org.forgerock.secrets.propertyresolver
Modifier and TypeMethodDescription<S extends Secret>
Promise<S,NoSuchSecretException> <S extends Secret>
Promise<S,NoSuchSecretException> <S extends Secret>
Promise<S,NoSuchSecretException> <S extends Secret>
Promise<S,NoSuchSecretException> <S extends Secret>
Promise<Stream<S>,NeverThrowsException> <S extends Secret>
Promise<Stream<S>,NeverThrowsException> Returns a stream of the active secret for the given purpose.ModifierConstructorDescriptionPemPropertyFormat
(SecretsProvider secretsProvider, Purpose<GenericSecret> decryptionPasswordPurpose) Initializes the property format with the given secrets provider and purpose for decrypting password-encrypted PEM files.PemPropertyFormat
(SecretsProvider secretsProvider, Purpose<GenericSecret> decryptionPasswordPurpose, Supplier<SecretBuilder> secretBuilderSupplier) Initializes the property format with the given secrets provider and purpose for decrypting password-encrypted PEM files.
SecretsProvider.createActiveReference(Purpose)
orSecretReference.active(SecretsProvider, Purpose, Clock)
instead.