Class ScriptedSecrets


  • @Supported
    public class ScriptedSecrets
    extends Object
    A wrapper around the Secrets API that allows a simplified interface to access secrets from a scripting context.
    Since:
    AM 7.0.0
    • Constructor Detail

      • ScriptedSecrets

        @Supported
        public ScriptedSecrets​(Secrets secrets,
                               Realm realm)
        Constructor.
        Parameters:
        secrets - The secrets store
        realm - The realm this API exists in
      • ScriptedSecrets

        @Inject
        @Supported
        public ScriptedSecrets​(Secrets secrets,
                               Realm realm,
                               Set<String> validPrefixes)
        Constructor.
        Parameters:
        secrets - The secrets store
        realm - The realm this API exists in
        validPrefixes - The secret ID prefixes that are valid for being obtained via this instance
    • Method Detail

      • getGenericSecret

        @Supported(scriptingApi=true)
        public Secret getGenericSecret​(@Nonnull
                                       String secretId)
                                throws NodeProcessException
        Allows the caller to access a generic type of secret from the Secrets API. When the caller requests the secret it will be up to the Secrets class to resolve this secret to a value.
        Parameters:
        secretId - A non null string identifier for the secret.
        Returns:
        A non null Secret value object representing the secret requested.
        Throws:
        NodeProcessException - If the secret is not found or is not accessible or the operation times out then this exception will be thrown.
        RuntimeException - If the thread is interrupted while waiting for the promise to resolve the secret.