Package org.apache.nifi.parameter.aws
Class AwsSecretsManagerParameterProvider
java.lang.Object
org.apache.nifi.components.AbstractConfigurableComponent
org.apache.nifi.parameter.AbstractParameterProvider
org.apache.nifi.parameter.aws.AwsSecretsManagerParameterProvider
- All Implemented Interfaces:
org.apache.nifi.components.ConfigurableComponent,org.apache.nifi.parameter.ParameterProvider,org.apache.nifi.parameter.VerifiableParameterProvider
@Tags({"aws","secretsmanager","secrets","manager"})
@CapabilityDescription("Fetches parameters from AWS SecretsManager. Each secret becomes a Parameter group, which can map to a Parameter Context, with key/value pairs in the secret mapping to Parameters in the group.")
public class AwsSecretsManagerParameterProvider
extends org.apache.nifi.parameter.AbstractParameterProvider
implements org.apache.nifi.parameter.VerifiableParameterProvider
Reads secrets from AWS Secrets Manager to provide parameter values. Secrets must be created similar to the following AWS cli command:
aws secretsmanager create-secret --name "[Context]" --secret-string '{ "[Param]": "[secretValue]", "[Param2]": "[secretValue2]" }' -
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static enum -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final org.apache.nifi.components.PropertyDescriptorAWS credentials provider serviceprivate static final com.amazonaws.Protocolprivate static final Stringprivate final com.fasterxml.jackson.databind.ObjectMapperprivate static final List<org.apache.nifi.components.PropertyDescriptor> static final org.apache.nifi.components.PropertyDescriptorstatic final org.apache.nifi.components.PropertyDescriptorstatic final org.apache.nifi.components.PropertyDescriptorstatic final org.apache.nifi.components.PropertyDescriptorstatic final org.apache.nifi.components.PropertyDescriptorstatic final org.apache.nifi.components.PropertyDescriptor -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) com.amazonaws.services.secretsmanager.AWSSecretsManagerconfigureClient(org.apache.nifi.controller.ConfigurationContext context) private static org.apache.nifi.components.AllowableValuecreateAllowableValue(com.amazonaws.regions.Regions region) protected com.amazonaws.ClientConfigurationcreateConfiguration(org.apache.nifi.controller.ConfigurationContext context) private org.apache.nifi.parameter.ParametercreateParameter(String parameterName, String parameterValue) List<org.apache.nifi.parameter.ParameterGroup> fetchParameters(org.apache.nifi.controller.ConfigurationContext context) private List<org.apache.nifi.parameter.ParameterGroup> fetchSecret(com.amazonaws.services.secretsmanager.AWSSecretsManager secretsManager, String secretName) private static org.apache.nifi.components.AllowableValue[]protected com.amazonaws.auth.AWSCredentialsProvidergetCredentialsProvider(org.apache.nifi.controller.ConfigurationContext context) Get credentials provider using theAWSCredentialsProviderServiceprotected List<org.apache.nifi.components.PropertyDescriptor> private com.fasterxml.jackson.databind.node.ObjectNodeparseSecret(String secretString) List<org.apache.nifi.components.ConfigVerificationResult> verify(org.apache.nifi.controller.ConfigurationContext context, org.apache.nifi.logging.ComponentLog verificationLogger) Methods inherited from class org.apache.nifi.parameter.AbstractParameterProvider
getIdentifier, getLogger, getName, getNodeTypeProvider, init, initializeMethods inherited from class org.apache.nifi.components.AbstractConfigurableComponent
customValidate, equals, getPropertyDescriptor, getPropertyDescriptors, getSupportedDynamicPropertyDescriptor, hashCode, onPropertyModified, toString, validateMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.nifi.components.ConfigurableComponent
getPropertyDescriptor, getPropertyDescriptors, onPropertyModified, validate
-
Field Details
-
SECRET_LISTING_STRATEGY
public static final org.apache.nifi.components.PropertyDescriptor SECRET_LISTING_STRATEGY -
SECRET_NAME_PATTERN
public static final org.apache.nifi.components.PropertyDescriptor SECRET_NAME_PATTERN -
SECRET_NAMES
public static final org.apache.nifi.components.PropertyDescriptor SECRET_NAMES -
AWS_CREDENTIALS_PROVIDER_SERVICE
public static final org.apache.nifi.components.PropertyDescriptor AWS_CREDENTIALS_PROVIDER_SERVICEAWS credentials provider service- See Also:
-
REGION
public static final org.apache.nifi.components.PropertyDescriptor REGION -
TIMEOUT
public static final org.apache.nifi.components.PropertyDescriptor TIMEOUT -
SSL_CONTEXT_SERVICE
public static final org.apache.nifi.components.PropertyDescriptor SSL_CONTEXT_SERVICE -
DEFAULT_USER_AGENT
- See Also:
-
DEFAULT_PROTOCOL
private static final com.amazonaws.Protocol DEFAULT_PROTOCOL -
PROPERTY_DESCRIPTORS
-
objectMapper
private final com.fasterxml.jackson.databind.ObjectMapper objectMapper
-
-
Constructor Details
-
AwsSecretsManagerParameterProvider
public AwsSecretsManagerParameterProvider()
-
-
Method Details
-
getSupportedPropertyDescriptors
- Overrides:
getSupportedPropertyDescriptorsin classorg.apache.nifi.components.AbstractConfigurableComponent
-
fetchParameters
public List<org.apache.nifi.parameter.ParameterGroup> fetchParameters(org.apache.nifi.controller.ConfigurationContext context) - Specified by:
fetchParametersin interfaceorg.apache.nifi.parameter.ParameterProvider
-
verify
public List<org.apache.nifi.components.ConfigVerificationResult> verify(org.apache.nifi.controller.ConfigurationContext context, org.apache.nifi.logging.ComponentLog verificationLogger) - Specified by:
verifyin interfaceorg.apache.nifi.parameter.VerifiableParameterProvider
-
fetchSecret
-
createParameter
-
createConfiguration
protected com.amazonaws.ClientConfiguration createConfiguration(org.apache.nifi.controller.ConfigurationContext context) -
parseSecret
-
configureClient
com.amazonaws.services.secretsmanager.AWSSecretsManager configureClient(org.apache.nifi.controller.ConfigurationContext context) -
getCredentialsProvider
protected com.amazonaws.auth.AWSCredentialsProvider getCredentialsProvider(org.apache.nifi.controller.ConfigurationContext context) Get credentials provider using theAWSCredentialsProviderService- Parameters:
context- the configuration context- Returns:
- AWSCredentialsProvider the credential provider
- See Also:
-
createAllowableValue
private static org.apache.nifi.components.AllowableValue createAllowableValue(com.amazonaws.regions.Regions region) -
getAvailableRegions
private static org.apache.nifi.components.AllowableValue[] getAvailableRegions()
-