import { MultiStringParameter } from 'cdk-sops-secrets'
new MultiStringParameter(scope: Construct, id: string, props: MultiStringParameterProps)
Name | Type | Description |
---|---|---|
scope |
constructs.Construct |
No description. |
id |
string |
No description. |
props |
MultiStringParameterProps |
No description. |
- Type: constructs.Construct
- Type: string
Name | Description |
---|---|
toString |
Returns a string representation of this construct. |
public toString(): string
Returns a string representation of this construct.
Name | Description |
---|---|
isConstruct |
Checks if x is a construct. |
import { MultiStringParameter } from 'cdk-sops-secrets'
MultiStringParameter.isConstruct(x: any)
Checks if x
is a construct.
- Type: any
Any object.
Name | Type | Description |
---|---|---|
node |
constructs.Node |
The tree node. |
encryptionKey |
aws-cdk-lib.aws_kms.IKey |
No description. |
env |
aws-cdk-lib.ResourceEnvironment |
No description. |
keyPrefix |
string |
No description. |
keySeparator |
string |
No description. |
stack |
aws-cdk-lib.Stack |
No description. |
sync |
SopsSync |
No description. |
public readonly node: Node;
- Type: constructs.Node
The tree node.
public readonly encryptionKey: IKey;
- Type: aws-cdk-lib.aws_kms.IKey
public readonly env: ResourceEnvironment;
- Type: aws-cdk-lib.ResourceEnvironment
public readonly keyPrefix: string;
- Type: string
public readonly keySeparator: string;
- Type: string
public readonly stack: Stack;
- Type: aws-cdk-lib.Stack
public readonly sync: SopsSync;
- Type: SopsSync
- Implements: aws-cdk-lib.aws_secretsmanager.ISecret
A drop in replacement for the normal Secret, that is populated with the encrypted content of the given sops file.
import { SopsSecret } from 'cdk-sops-secrets'
new SopsSecret(scope: Construct, id: string, props: SopsSecretProps)
Name | Type | Description |
---|---|---|
scope |
constructs.Construct |
No description. |
id |
string |
No description. |
props |
SopsSecretProps |
No description. |
- Type: constructs.Construct
- Type: string
- Type: SopsSecretProps
Name | Description |
---|---|
toString |
Returns a string representation of this construct. |
addRotationSchedule |
Adds a rotation schedule to the secret. |
addToResourcePolicy |
Adds a statement to the IAM resource policy associated with this secret. |
applyRemovalPolicy |
Apply the given removal policy to this resource. |
attach |
Attach a target to this secret. |
currentVersionId |
No description. |
denyAccountRootDelete |
Denies the DeleteSecret action to all principals within the current account. |
grantRead |
Grants reading the secret value to some role. |
grantWrite |
Grants writing and updating the secret value to some role. |
secretValueFromJson |
Interpret the secret as a JSON object and return a field's value from it as a SecretValue . |
public toString(): string
Returns a string representation of this construct.
public addRotationSchedule(id: string, options: RotationScheduleOptions): RotationSchedule
Adds a rotation schedule to the secret.
- Type: string
- Type: aws-cdk-lib.aws_secretsmanager.RotationScheduleOptions
public addToResourcePolicy(statement: PolicyStatement): AddToResourcePolicyResult
Adds a statement to the IAM resource policy associated with this secret.
If this secret was created in this stack, a resource policy will be
automatically created upon the first call to addToResourcePolicy
. If
the secret is imported, then this is a no-op.
- Type: aws-cdk-lib.aws_iam.PolicyStatement
public applyRemovalPolicy(policy: RemovalPolicy): void
Apply the given removal policy to this resource.
The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you've removed it from the CDK application or because you've made a change that requires the resource to be replaced.
The resource can be deleted (RemovalPolicy.DESTROY
), or left in your AWS
account for data recovery and cleanup later (RemovalPolicy.RETAIN
).
- Type: aws-cdk-lib.RemovalPolicy
public attach(target: ISecretAttachmentTarget): ISecret
Attach a target to this secret.
- Type: aws-cdk-lib.aws_secretsmanager.ISecretAttachmentTarget
public currentVersionId(): string
public denyAccountRootDelete(): void
Denies the DeleteSecret
action to all principals within the current account.
public grantRead(grantee: IGrantable, versionStages?: string[]): Grant
Grants reading the secret value to some role.
- Type: aws-cdk-lib.aws_iam.IGrantable
- Type: string[]
public grantWrite(_grantee: IGrantable): Grant
Grants writing and updating the secret value to some role.
- Type: aws-cdk-lib.aws_iam.IGrantable
public secretValueFromJson(jsonField: string): SecretValue
Interpret the secret as a JSON object and return a field's value from it as a SecretValue
.
- Type: string
Name | Description |
---|---|
isConstruct |
Checks if x is a construct. |
import { SopsSecret } from 'cdk-sops-secrets'
SopsSecret.isConstruct(x: any)
Checks if x
is a construct.
- Type: any
Any object.
Name | Type | Description |
---|---|---|
node |
constructs.Node |
The tree node. |
env |
aws-cdk-lib.ResourceEnvironment |
The environment this resource belongs to. |
secretArn |
string |
The ARN of the secret in AWS Secrets Manager. |
secretName |
string |
The name of the secret. |
secretValue |
aws-cdk-lib.SecretValue |
Retrieve the value of the stored secret as a SecretValue . |
stack |
aws-cdk-lib.Stack |
The stack in which this resource is defined. |
sync |
SopsSync |
No description. |
encryptionKey |
aws-cdk-lib.aws_kms.IKey |
The customer-managed encryption key that is used to encrypt this secret, if any. |
secretFullArn |
string |
The full ARN of the secret in AWS Secrets Manager, which is the ARN including the Secrets Manager-supplied 6-character suffix. |
public readonly node: Node;
- Type: constructs.Node
The tree node.
public readonly env: ResourceEnvironment;
- Type: aws-cdk-lib.ResourceEnvironment
The environment this resource belongs to.
For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.
public readonly secretArn: string;
- Type: string
The ARN of the secret in AWS Secrets Manager.
Will return the full ARN if available, otherwise a partial arn.
For secrets imported by the deprecated fromSecretName
, it will return the secretName
.
public readonly secretName: string;
- Type: string
The name of the secret.
For "owned" secrets, this will be the full resource name (secret name + suffix), unless the '@aws-cdk/aws-secretsmanager:parseOwnedSecretName' feature flag is set.
public readonly secretValue: SecretValue;
- Type: aws-cdk-lib.SecretValue
Retrieve the value of the stored secret as a SecretValue
.
public readonly stack: Stack;
- Type: aws-cdk-lib.Stack
The stack in which this resource is defined.
public readonly sync: SopsSync;
- Type: SopsSync
public readonly encryptionKey: IKey;
- Type: aws-cdk-lib.aws_kms.IKey
The customer-managed encryption key that is used to encrypt this secret, if any.
When not specified, the default KMS key for the account and region is being used.
public readonly secretFullArn: string;
- Type: string
The full ARN of the secret in AWS Secrets Manager, which is the ARN including the Secrets Manager-supplied 6-character suffix.
This is equal to secretArn
in most cases, but is undefined when a full ARN is not available (e.g., secrets imported by name).
- Implements: aws-cdk-lib.aws_ssm.IStringParameter
A drop in replacement for the normal String Parameter, that is populated with the encrypted content of the given sops file.
import { SopsStringParameter } from 'cdk-sops-secrets'
new SopsStringParameter(scope: Construct, id: string, props: SopsStringParameterProps)
Name | Type | Description |
---|---|---|
scope |
constructs.Construct |
No description. |
id |
string |
No description. |
props |
SopsStringParameterProps |
No description. |
- Type: constructs.Construct
- Type: string
- Type: SopsStringParameterProps
Name | Description |
---|---|
toString |
Returns a string representation of this construct. |
applyRemovalPolicy |
Apply the given removal policy to this resource. |
grantRead |
Grants read (DescribeParameter, GetParameters, GetParameter, GetParameterHistory) permissions on the SSM Parameter. |
grantWrite |
Grants write (PutParameter) permissions on the SSM Parameter. |
public toString(): string
Returns a string representation of this construct.
public applyRemovalPolicy(policy: RemovalPolicy): void
Apply the given removal policy to this resource.
The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you've removed it from the CDK application or because you've made a change that requires the resource to be replaced.
The resource can be deleted (RemovalPolicy.DESTROY
), or left in your AWS
account for data recovery and cleanup later (RemovalPolicy.RETAIN
).
- Type: aws-cdk-lib.RemovalPolicy
public grantRead(grantee: IGrantable): Grant
Grants read (DescribeParameter, GetParameters, GetParameter, GetParameterHistory) permissions on the SSM Parameter.
- Type: aws-cdk-lib.aws_iam.IGrantable
public grantWrite(grantee: IGrantable): Grant
Grants write (PutParameter) permissions on the SSM Parameter.
- Type: aws-cdk-lib.aws_iam.IGrantable
Name | Description |
---|---|
isConstruct |
Checks if x is a construct. |
import { SopsStringParameter } from 'cdk-sops-secrets'
SopsStringParameter.isConstruct(x: any)
Checks if x
is a construct.
- Type: any
Any object.
Name | Type | Description |
---|---|---|
node |
constructs.Node |
The tree node. |
encryptionKey |
aws-cdk-lib.aws_kms.IKey |
No description. |
env |
aws-cdk-lib.ResourceEnvironment |
The environment this resource belongs to. |
parameterArn |
string |
The ARN of the SSM Parameter resource. |
parameterName |
string |
The name of the SSM Parameter resource. |
parameterType |
string |
The type of the SSM Parameter resource. |
stack |
aws-cdk-lib.Stack |
The stack in which this resource is defined. |
stringValue |
string |
The parameter value. |
sync |
SopsSync |
No description. |
public readonly node: Node;
- Type: constructs.Node
The tree node.
public readonly encryptionKey: IKey;
- Type: aws-cdk-lib.aws_kms.IKey
public readonly env: ResourceEnvironment;
- Type: aws-cdk-lib.ResourceEnvironment
The environment this resource belongs to.
For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.
public readonly parameterArn: string;
- Type: string
The ARN of the SSM Parameter resource.
public readonly parameterName: string;
- Type: string
The name of the SSM Parameter resource.
public readonly parameterType: string;
- Type: string
The type of the SSM Parameter resource.
public readonly stack: Stack;
- Type: aws-cdk-lib.Stack
The stack in which this resource is defined.
public readonly stringValue: string;
- Type: string
The parameter value.
Value must not nest another parameter. Do not use {{}} in the value.
public readonly sync: SopsSync;
- Type: SopsSync
The custom resource, that is syncing the content from a sops file to a secret.
import { SopsSync } from 'cdk-sops-secrets'
new SopsSync(scope: Construct, id: string, props: SopsSyncProps)
Name | Type | Description |
---|---|---|
scope |
constructs.Construct |
No description. |
id |
string |
No description. |
props |
SopsSyncProps |
No description. |
- Type: constructs.Construct
- Type: string
- Type: SopsSyncProps
Name | Description |
---|---|
toString |
Returns a string representation of this construct. |
public toString(): string
Returns a string representation of this construct.
Name | Description |
---|---|
isConstruct |
Checks if x is a construct. |
import { SopsSync } from 'cdk-sops-secrets'
SopsSync.isConstruct(x: any)
Checks if x
is a construct.
- Type: any
Any object.
Name | Type | Description |
---|---|---|
node |
constructs.Node |
The tree node. |
converToJSON |
boolean |
Was the format converted to json? |
flatten |
boolean |
Was the structure flattened? |
stringifiedValues |
boolean |
Were the values stringified? |
versionId |
string |
The current versionId of the secret populated via this resource. |
public readonly node: Node;
- Type: constructs.Node
The tree node.
public readonly converToJSON: boolean;
- Type: boolean
Was the format converted to json?
public readonly flatten: boolean;
- Type: boolean
Was the structure flattened?
public readonly stringifiedValues: boolean;
- Type: boolean
Were the values stringified?
public readonly versionId: string;
- Type: string
The current versionId of the secret populated via this resource.
- Implements: aws-cdk-lib.aws_iam.IGrantable
import { SopsSyncProvider } from 'cdk-sops-secrets'
new SopsSyncProvider(scope: Construct, id?: string, props?: SopsSyncProviderProps)
Name | Type | Description |
---|---|---|
scope |
constructs.Construct |
No description. |
id |
string |
No description. |
props |
SopsSyncProviderProps |
No description. |
- Type: constructs.Construct
- Type: string
- Type: SopsSyncProviderProps
Name | Description |
---|---|
toString |
Returns a string representation of this construct. |
applyRemovalPolicy |
Apply the given removal policy to this resource. |
addEventSource |
Adds an event source to this function. |
addEventSourceMapping |
Adds an event source that maps to this AWS Lambda function. |
addFunctionUrl |
Adds a url to this lambda function. |
addPermission |
Adds a permission to the Lambda resource policy. |
addToRolePolicy |
Adds a statement to the IAM role assumed by the instance. |
configureAsyncInvoke |
Configures options for asynchronous invocation. |
considerWarningOnInvokeFunctionPermissions |
A warning will be added to functions under the following conditions: - permissions that include lambda:InvokeFunction are added to the unqualified function. |
grantInvoke |
Grant the given identity permissions to invoke this Lambda. |
grantInvokeCompositePrincipal |
Grant multiple principals the ability to invoke this Lambda via CompositePrincipal. |
grantInvokeUrl |
Grant the given identity permissions to invoke this Lambda Function URL. |
metric |
Return the given named metric for this Function. |
metricDuration |
How long execution of this Lambda takes. |
metricErrors |
How many invocations of this Lambda fail. |
metricInvocations |
How often this Lambda is invoked. |
metricThrottles |
How often this Lambda is throttled. |
addDependency |
Using node.addDependency() does not work on this method as the underlying lambda function is modeled as a singleton across the stack. Use this method instead to declare dependencies. |
addEnvironment |
Adds an environment variable to this Lambda function. |
addLayers |
Adds one or more Lambda Layers to this Lambda function. |
dependOn |
The SingletonFunction construct cannot be added as a dependency of another construct using node.addDependency(). Use this method instead to declare this as a dependency of another construct. |
addAgeKey |
No description. |
public toString(): string
Returns a string representation of this construct.
public applyRemovalPolicy(policy: RemovalPolicy): void
Apply the given removal policy to this resource.
The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you've removed it from the CDK application or because you've made a change that requires the resource to be replaced.
The resource can be deleted (RemovalPolicy.DESTROY
), or left in your AWS
account for data recovery and cleanup later (RemovalPolicy.RETAIN
).
- Type: aws-cdk-lib.RemovalPolicy
public addEventSource(source: IEventSource): void
Adds an event source to this function.
Event sources are implemented in the aws-cdk-lib/aws-lambda-event-sources module.
The following example adds an SQS Queue as an event source:
import { SqsEventSource } from 'aws-cdk-lib/aws-lambda-event-sources';
myFunction.addEventSource(new SqsEventSource(myQueue));
- Type: aws-cdk-lib.aws_lambda.IEventSource
public addEventSourceMapping(id: string, options: EventSourceMappingOptions): EventSourceMapping
Adds an event source that maps to this AWS Lambda function.
- Type: string
- Type: aws-cdk-lib.aws_lambda.EventSourceMappingOptions
public addFunctionUrl(options?: FunctionUrlOptions): FunctionUrl
Adds a url to this lambda function.
- Type: aws-cdk-lib.aws_lambda.FunctionUrlOptions
public addPermission(name: string, permission: Permission): void
Adds a permission to the Lambda resource policy.
- Type: string
- Type: aws-cdk-lib.aws_lambda.Permission
public addToRolePolicy(statement: PolicyStatement): void
Adds a statement to the IAM role assumed by the instance.
- Type: aws-cdk-lib.aws_iam.PolicyStatement
public configureAsyncInvoke(options: EventInvokeConfigOptions): void
Configures options for asynchronous invocation.
- Type: aws-cdk-lib.aws_lambda.EventInvokeConfigOptions
public considerWarningOnInvokeFunctionPermissions(scope: Construct, action: string): void
A warning will be added to functions under the following conditions: - permissions that include lambda:InvokeFunction
are added to the unqualified function.
function.currentVersion is invoked before or after the permission is created.
This applies only to permissions on Lambda functions, not versions or aliases. This function is overridden as a noOp for QualifiedFunctionBase.
- Type: constructs.Construct
- Type: string
public grantInvoke(grantee: IGrantable): Grant
Grant the given identity permissions to invoke this Lambda.
- Type: aws-cdk-lib.aws_iam.IGrantable
public grantInvokeCompositePrincipal(compositePrincipal: CompositePrincipal): Grant[]
Grant multiple principals the ability to invoke this Lambda via CompositePrincipal.
- Type: aws-cdk-lib.aws_iam.CompositePrincipal
public grantInvokeUrl(grantee: IGrantable): Grant
Grant the given identity permissions to invoke this Lambda Function URL.
- Type: aws-cdk-lib.aws_iam.IGrantable
public metric(metricName: string, props?: MetricOptions): Metric
Return the given named metric for this Function.
- Type: string
- Type: aws-cdk-lib.aws_cloudwatch.MetricOptions
public metricDuration(props?: MetricOptions): Metric
How long execution of this Lambda takes.
Average over 5 minutes
- Type: aws-cdk-lib.aws_cloudwatch.MetricOptions
public metricErrors(props?: MetricOptions): Metric
How many invocations of this Lambda fail.
Sum over 5 minutes
- Type: aws-cdk-lib.aws_cloudwatch.MetricOptions
public metricInvocations(props?: MetricOptions): Metric
How often this Lambda is invoked.
Sum over 5 minutes
- Type: aws-cdk-lib.aws_cloudwatch.MetricOptions
public metricThrottles(props?: MetricOptions): Metric
How often this Lambda is throttled.
Sum over 5 minutes
- Type: aws-cdk-lib.aws_cloudwatch.MetricOptions
public addDependency(up: ...IDependable[]): void
Using node.addDependency() does not work on this method as the underlying lambda function is modeled as a singleton across the stack. Use this method instead to declare dependencies.
- Type: ...constructs.IDependable[]
public addEnvironment(key: string, value: string, options?: EnvironmentOptions): Function
Adds an environment variable to this Lambda function.
If this is a ref to a Lambda function, this operation results in a no-op.
- Type: string
The environment variable key.
- Type: string
The environment variable's value.
- Type: aws-cdk-lib.aws_lambda.EnvironmentOptions
Environment variable options.
public addLayers(layers: ...ILayerVersion[]): void
Adds one or more Lambda Layers to this Lambda function.
- Type: ...aws-cdk-lib.aws_lambda.ILayerVersion[]
the layers to be added.
public dependOn(down: IConstruct): void
The SingletonFunction construct cannot be added as a dependency of another construct using node.addDependency(). Use this method instead to declare this as a dependency of another construct.
- Type: constructs.IConstruct
public addAgeKey(key: SecretValue): void
- Type: aws-cdk-lib.SecretValue
Name | Description |
---|---|
isConstruct |
Checks if x is a construct. |
isOwnedResource |
Returns true if the construct was created by CDK, and false otherwise. |
isResource |
Check whether the given construct is a Resource. |
import { SopsSyncProvider } from 'cdk-sops-secrets'
SopsSyncProvider.isConstruct(x: any)
Checks if x
is a construct.
- Type: any
Any object.
import { SopsSyncProvider } from 'cdk-sops-secrets'
SopsSyncProvider.isOwnedResource(construct: IConstruct)
Returns true if the construct was created by CDK, and false otherwise.
- Type: constructs.IConstruct
import { SopsSyncProvider } from 'cdk-sops-secrets'
SopsSyncProvider.isResource(construct: IConstruct)
Check whether the given construct is a Resource.
- Type: constructs.IConstruct
Name | Type | Description |
---|---|---|
node |
constructs.Node |
The tree node. |
env |
aws-cdk-lib.ResourceEnvironment |
The environment this resource belongs to. |
stack |
aws-cdk-lib.Stack |
The stack in which this resource is defined. |
architecture |
aws-cdk-lib.aws_lambda.Architecture |
The architecture of this Lambda Function. |
connections |
aws-cdk-lib.aws_ec2.Connections |
Access the Connections object. |
functionArn |
string |
The ARN fo the function. |
functionName |
string |
The name of the function. |
grantPrincipal |
aws-cdk-lib.aws_iam.IPrincipal |
The principal this Lambda Function is running as. |
isBoundToVpc |
boolean |
Whether or not this Lambda function was bound to a VPC. |
latestVersion |
aws-cdk-lib.aws_lambda.IVersion |
The $LATEST version of this function. |
permissionsNode |
constructs.Node |
The construct node where permissions are attached. |
resourceArnsForGrantInvoke |
string[] |
The ARN(s) to put into the resource field of the generated IAM policy for grantInvoke(). |
role |
aws-cdk-lib.aws_iam.IRole |
The IAM role associated with this function. |
currentVersion |
aws-cdk-lib.aws_lambda.Version |
Returns a lambda.Version which represents the current version of this singleton Lambda function. A new version will be created every time the function's configuration changes. |
logGroup |
aws-cdk-lib.aws_logs.ILogGroup |
The LogGroup where the Lambda function's logs are made available. |
runtime |
aws-cdk-lib.aws_lambda.Runtime |
The runtime environment for the Lambda function. |
public readonly node: Node;
- Type: constructs.Node
The tree node.
public readonly env: ResourceEnvironment;
- Type: aws-cdk-lib.ResourceEnvironment
The environment this resource belongs to.
For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.
public readonly stack: Stack;
- Type: aws-cdk-lib.Stack
The stack in which this resource is defined.
public readonly architecture: Architecture;
- Type: aws-cdk-lib.aws_lambda.Architecture
The architecture of this Lambda Function.
public readonly connections: Connections;
- Type: aws-cdk-lib.aws_ec2.Connections
Access the Connections object.
Will fail if not a VPC-enabled Lambda Function
public readonly functionArn: string;
- Type: string
The ARN fo the function.
public readonly functionName: string;
- Type: string
The name of the function.
public readonly grantPrincipal: IPrincipal;
- Type: aws-cdk-lib.aws_iam.IPrincipal
The principal this Lambda Function is running as.
public readonly isBoundToVpc: boolean;
- Type: boolean
Whether or not this Lambda function was bound to a VPC.
If this is is false
, trying to access the connections
object will fail.
public readonly latestVersion: IVersion;
- Type: aws-cdk-lib.aws_lambda.IVersion
The $LATEST
version of this function.
Note that this is reference to a non-specific AWS Lambda version, which means the function this version refers to can return different results in different invocations.
To obtain a reference to an explicit version which references the current
function configuration, use lambdaFunction.currentVersion
instead.
public readonly permissionsNode: Node;
- Type: constructs.Node
The construct node where permissions are attached.
public readonly resourceArnsForGrantInvoke: string[];
- Type: string[]
The ARN(s) to put into the resource field of the generated IAM policy for grantInvoke().
public readonly role: IRole;
- Type: aws-cdk-lib.aws_iam.IRole
The IAM role associated with this function.
Undefined if the function was imported without a role.
public readonly currentVersion: Version;
- Type: aws-cdk-lib.aws_lambda.Version
Returns a lambda.Version
which represents the current version of this singleton Lambda function. A new version will be created every time the function's configuration changes.
You can specify options for this version using the currentVersionOptions
prop when initializing the lambda.SingletonFunction
.
public readonly logGroup: ILogGroup;
- Type: aws-cdk-lib.aws_logs.ILogGroup
The LogGroup where the Lambda function's logs are made available.
If either logRetention
is set or this property is called, a CloudFormation custom resource is added to the stack that
pre-creates the log group as part of the stack deployment, if it already doesn't exist, and sets the correct log retention
period (never expire, by default).
Further, if the log group already exists and the logRetention
is not set, the custom resource will reset the log retention
to never expire even if it was configured with a different value.
public readonly runtime: Runtime;
- Type: aws-cdk-lib.aws_lambda.Runtime
The runtime environment for the Lambda function.
import { MultiStringParameterProps } from 'cdk-sops-secrets'
const multiStringParameterProps: MultiStringParameterProps = { ... }
Name | Type | Description |
---|---|---|
convertToJSON |
boolean |
Should the encrypted sops value should be converted to JSON? |
creationType |
CreationType |
No description. |
flatten |
boolean |
Should the structure be flattened? |
flattenSeparator |
string |
If the structure should be flattened use the provided separator between keys. |
parameterKeyPrefix |
string |
Add this prefix to parameter names. |
resourceType |
ResourceType |
No description. |
sopsAgeKey |
aws-cdk-lib.SecretValue |
The age key that should be used for encryption. |
sopsFileFormat |
string |
The format of the sops file. |
sopsFilePath |
string |
The filepath to the sops file. |
sopsKmsKey |
aws-cdk-lib.aws_kms.IKey[] |
The kmsKey used to encrypt the sops file. |
sopsProvider |
SopsSyncProvider |
The custom resource provider to use. |
sopsS3Bucket |
string |
If you want to pass the sops file via s3, you can specify the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified. |
sopsS3Key |
string |
If you want to pass the sops file via s3, you can specify the key inside the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified. |
stringifyValues |
boolean |
Shall all values be flattened? |
uploadType |
UploadType |
How should the secret be passed to the CustomResource? |
allowedPattern |
string |
A regular expression used to validate the parameter value. |
description |
string |
Information about the parameter that you want to add to the system. |
parameterName |
string |
The name of the parameter. |
simpleName |
boolean |
Indicates if the parameter name is a simple name (i.e. does not include "/" separators). |
tier |
aws-cdk-lib.aws_ssm.ParameterTier |
The tier of the string parameter. |
stringValue |
string |
The value of the parameter. |
dataType |
aws-cdk-lib.aws_ssm.ParameterDataType |
The data type of the parameter, such as text or aws:ec2:image . |
type |
aws-cdk-lib.aws_ssm.ParameterType |
The type of the string parameter. |
encryptionKey |
aws-cdk-lib.aws_kms.IKey |
No description. |
keyPrefix |
string |
No description. |
keySeparator |
string |
No description. |
public readonly convertToJSON: boolean;
- Type: boolean
- Default: true
Should the encrypted sops value should be converted to JSON?
Only JSON can be handled by cloud formations dynamic references.
public readonly creationType: CreationType;
- Type: CreationType
public readonly flatten: boolean;
- Type: boolean
- Default: true
Should the structure be flattened?
The result will be a flat structure and all object keys will be replaced with the full jsonpath as key. This is usefull for dynamic references, as those don't support nested objects.
public readonly flattenSeparator: string;
- Type: string
- Default: '.'
If the structure should be flattened use the provided separator between keys.
public readonly parameterKeyPrefix: string;
- Type: string
Add this prefix to parameter names.
public readonly resourceType: ResourceType;
- Type: ResourceType
public readonly sopsAgeKey: SecretValue;
- Type: aws-cdk-lib.SecretValue
The age key that should be used for encryption.
public readonly sopsFileFormat: string;
- Type: string
- Default: The fileformat will be derived from the file ending
The format of the sops file.
public readonly sopsFilePath: string;
- Type: string
The filepath to the sops file.
public readonly sopsKmsKey: IKey[];
- Type: aws-cdk-lib.aws_kms.IKey[]
- Default: The key will be derived from the sops file
The kmsKey used to encrypt the sops file.
Encrypt permissions will be granted to the custom resource provider.
public readonly sopsProvider: SopsSyncProvider;
- Type: SopsSyncProvider
- Default: A new singleton provider will be created
The custom resource provider to use.
If you don't specify any, a new provider will be created - or if already exists within this stack - reused.
public readonly sopsS3Bucket: string;
- Type: string
If you want to pass the sops file via s3, you can specify the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified.
public readonly sopsS3Key: string;
- Type: string
If you want to pass the sops file via s3, you can specify the key inside the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified.
public readonly stringifyValues: boolean;
- Type: boolean
Shall all values be flattened?
This is usefull for dynamic references, as there are lookup errors for certain float types
public readonly uploadType: UploadType;
- Type: UploadType
- Default: INLINE
How should the secret be passed to the CustomResource?
public readonly allowedPattern: string;
- Type: string
- Default: no validation is performed
A regular expression used to validate the parameter value.
For example, for String types with values restricted to
numbers, you can specify the following: ^\d+$
public readonly description: string;
- Type: string
- Default: none
Information about the parameter that you want to add to the system.
public readonly parameterName: string;
- Type: string
- Default: a name will be generated by CloudFormation
The name of the parameter.
public readonly simpleName: boolean;
- Type: boolean
- Default: auto-detect based on
parameterName
Indicates if the parameter name is a simple name (i.e. does not include "/" separators).
This is required only if parameterName
is a token, which means we
are unable to detect if the name is simple or "path-like" for the purpose
of rendering SSM parameter ARNs.
If parameterName
is not specified, simpleName
must be true
(or
undefined) since the name generated by AWS CloudFormation is always a
simple name.
public readonly tier: ParameterTier;
- Type: aws-cdk-lib.aws_ssm.ParameterTier
- Default: undefined
The tier of the string parameter.
public readonly stringValue: string;
- Type: string
The value of the parameter.
It may not reference another parameter and {{}}
cannot be used in the value.
public readonly dataType: ParameterDataType;
- Type: aws-cdk-lib.aws_ssm.ParameterDataType
- Default: ParameterDataType.TEXT
The data type of the parameter, such as text
or aws:ec2:image
.
- Deprecated: - type will always be 'String'
public readonly type: ParameterType;
- Type: aws-cdk-lib.aws_ssm.ParameterType
- Default: ParameterType.STRING
The type of the string parameter.
public readonly encryptionKey: IKey;
- Type: aws-cdk-lib.aws_kms.IKey
public readonly keyPrefix: string;
- Type: string
public readonly keySeparator: string;
- Type: string
The configuration options of the SopsSecret.
import { SopsSecretProps } from 'cdk-sops-secrets'
const sopsSecretProps: SopsSecretProps = { ... }
Name | Type | Description |
---|---|---|
description |
string |
An optional, human-friendly description of the secret. |
encryptionKey |
aws-cdk-lib.aws_kms.IKey |
The customer-managed encryption key to use for encrypting the secret value. |
generateSecretString |
aws-cdk-lib.aws_secretsmanager.SecretStringGenerator |
Configuration for how to generate a secret value. |
removalPolicy |
aws-cdk-lib.RemovalPolicy |
Policy to apply when the secret is removed from this stack. |
replicaRegions |
aws-cdk-lib.aws_secretsmanager.ReplicaRegion[] |
A list of regions where to replicate this secret. |
secretName |
string |
A name for the secret. |
secretObjectValue |
{[ key: string ]: aws-cdk-lib.SecretValue} |
Initial value for a JSON secret. |
secretStringBeta1 |
aws-cdk-lib.aws_secretsmanager.SecretStringValueBeta1 |
Initial value for the secret. |
secretStringValue |
aws-cdk-lib.SecretValue |
Initial value for the secret. |
convertToJSON |
boolean |
Should the encrypted sops value should be converted to JSON? |
creationType |
CreationType |
No description. |
flatten |
boolean |
Should the structure be flattened? |
flattenSeparator |
string |
If the structure should be flattened use the provided separator between keys. |
parameterKeyPrefix |
string |
Add this prefix to parameter names. |
resourceType |
ResourceType |
No description. |
sopsAgeKey |
aws-cdk-lib.SecretValue |
The age key that should be used for encryption. |
sopsFileFormat |
string |
The format of the sops file. |
sopsFilePath |
string |
The filepath to the sops file. |
sopsKmsKey |
aws-cdk-lib.aws_kms.IKey[] |
The kmsKey used to encrypt the sops file. |
sopsProvider |
SopsSyncProvider |
The custom resource provider to use. |
sopsS3Bucket |
string |
If you want to pass the sops file via s3, you can specify the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified. |
sopsS3Key |
string |
If you want to pass the sops file via s3, you can specify the key inside the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified. |
stringifyValues |
boolean |
Shall all values be flattened? |
uploadType |
UploadType |
How should the secret be passed to the CustomResource? |
public readonly description: string;
- Type: string
- Default: No description.
An optional, human-friendly description of the secret.
public readonly encryptionKey: IKey;
- Type: aws-cdk-lib.aws_kms.IKey
- Default: A default KMS key for the account and region is used.
The customer-managed encryption key to use for encrypting the secret value.
public readonly generateSecretString: SecretStringGenerator;
- Type: aws-cdk-lib.aws_secretsmanager.SecretStringGenerator
- Default: 32 characters with upper-case letters, lower-case letters, punctuation and numbers (at least one from each category), per the default values of
SecretStringGenerator
.
Configuration for how to generate a secret value.
Only one of secretString
and generateSecretString
can be provided.
public readonly removalPolicy: RemovalPolicy;
- Type: aws-cdk-lib.RemovalPolicy
- Default: Not set.
Policy to apply when the secret is removed from this stack.
public readonly replicaRegions: ReplicaRegion[];
- Type: aws-cdk-lib.aws_secretsmanager.ReplicaRegion[]
- Default: Secret is not replicated
A list of regions where to replicate this secret.
public readonly secretName: string;
- Type: string
- Default: A name is generated by CloudFormation.
A name for the secret.
Note that deleting secrets from SecretsManager does not happen immediately, but after a 7 to 30 days blackout period. During that period, it is not possible to create another secret that shares the same name.
public readonly secretObjectValue: {[ key: string ]: SecretValue};
- Type: {[ key: string ]: aws-cdk-lib.SecretValue}
- Default: SecretsManager generates a new secret value.
Initial value for a JSON secret.
NOTE: *It is highly encouraged to leave this field undefined and allow SecretsManager to create the secret value. The secret object -- if provided -- will be included in the output of the cdk as part of synthesis, and will appear in the CloudFormation template in the console. This can be secure(-ish) if that value is merely reference to another resource (or one of its attributes), but if the value is a plaintext string, it will be visible to anyone with access to the CloudFormation template (via the AWS Console, SDKs, or CLI).
Specifies a JSON object that you want to encrypt and store in this new version of the secret.
To specify a simple string value instead, use SecretProps.secretStringValue
Only one of secretStringBeta1
, secretStringValue
, 'secretObjectValue', and generateSecretString
can be provided.
Example
declare const user: iam.User;
declare const accessKey: iam.AccessKey;
declare const stack: Stack;
new secretsmanager.Secret(stack, 'JSONSecret', {
secretObjectValue: {
username: SecretValue.unsafePlainText(user.userName), // intrinsic reference, not exposed as plaintext
database: SecretValue.unsafePlainText('foo'), // rendered as plain text, but not a secret
password: accessKey.secretAccessKey, // SecretValue
},
});
- Deprecated: Use
secretStringValue
instead.
public readonly secretStringBeta1: SecretStringValueBeta1;
- Type: aws-cdk-lib.aws_secretsmanager.SecretStringValueBeta1
- Default: SecretsManager generates a new secret value.
Initial value for the secret.
NOTE: *It is highly encouraged to leave this field undefined and allow SecretsManager to create the secret value. The secret string -- if provided -- will be included in the output of the cdk as part of synthesis, and will appear in the CloudFormation template in the console. This can be secure(-ish) if that value is merely reference to another resource (or one of its attributes), but if the value is a plaintext string, it will be visible to anyone with access to the CloudFormation template (via the AWS Console, SDKs, or CLI).
Specifies text data that you want to encrypt and store in this new version of the secret. May be a simple string value, or a string representation of a JSON structure.
Only one of secretStringBeta1
, secretStringValue
, and generateSecretString
can be provided.
public readonly secretStringValue: SecretValue;
- Type: aws-cdk-lib.SecretValue
- Default: SecretsManager generates a new secret value.
Initial value for the secret.
NOTE: *It is highly encouraged to leave this field undefined and allow SecretsManager to create the secret value. The secret string -- if provided -- will be included in the output of the cdk as part of synthesis, and will appear in the CloudFormation template in the console. This can be secure(-ish) if that value is merely reference to another resource (or one of its attributes), but if the value is a plaintext string, it will be visible to anyone with access to the CloudFormation template (via the AWS Console, SDKs, or CLI).
Specifies text data that you want to encrypt and store in this new version of the secret.
May be a simple string value. To provide a string representation of JSON structure, use SecretProps.secretObjectValue
instead.
Only one of secretStringBeta1
, secretStringValue
, 'secretObjectValue', and generateSecretString
can be provided.
public readonly convertToJSON: boolean;
- Type: boolean
- Default: true
Should the encrypted sops value should be converted to JSON?
Only JSON can be handled by cloud formations dynamic references.
public readonly creationType: CreationType;
- Type: CreationType
public readonly flatten: boolean;
- Type: boolean
- Default: true
Should the structure be flattened?
The result will be a flat structure and all object keys will be replaced with the full jsonpath as key. This is usefull for dynamic references, as those don't support nested objects.
public readonly flattenSeparator: string;
- Type: string
- Default: '.'
If the structure should be flattened use the provided separator between keys.
public readonly parameterKeyPrefix: string;
- Type: string
Add this prefix to parameter names.
public readonly resourceType: ResourceType;
- Type: ResourceType
public readonly sopsAgeKey: SecretValue;
- Type: aws-cdk-lib.SecretValue
The age key that should be used for encryption.
public readonly sopsFileFormat: string;
- Type: string
- Default: The fileformat will be derived from the file ending
The format of the sops file.
public readonly sopsFilePath: string;
- Type: string
The filepath to the sops file.
public readonly sopsKmsKey: IKey[];
- Type: aws-cdk-lib.aws_kms.IKey[]
- Default: The key will be derived from the sops file
The kmsKey used to encrypt the sops file.
Encrypt permissions will be granted to the custom resource provider.
public readonly sopsProvider: SopsSyncProvider;
- Type: SopsSyncProvider
- Default: A new singleton provider will be created
The custom resource provider to use.
If you don't specify any, a new provider will be created - or if already exists within this stack - reused.
public readonly sopsS3Bucket: string;
- Type: string
If you want to pass the sops file via s3, you can specify the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified.
public readonly sopsS3Key: string;
- Type: string
If you want to pass the sops file via s3, you can specify the key inside the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified.
public readonly stringifyValues: boolean;
- Type: boolean
Shall all values be flattened?
This is usefull for dynamic references, as there are lookup errors for certain float types
public readonly uploadType: UploadType;
- Type: UploadType
- Default: INLINE
How should the secret be passed to the CustomResource?
The configuration options of the StringParameter.
import { SopsStringParameterProps } from 'cdk-sops-secrets'
const sopsStringParameterProps: SopsStringParameterProps = { ... }
Name | Type | Description |
---|---|---|
convertToJSON |
boolean |
Should the encrypted sops value should be converted to JSON? |
creationType |
CreationType |
No description. |
flatten |
boolean |
Should the structure be flattened? |
flattenSeparator |
string |
If the structure should be flattened use the provided separator between keys. |
parameterKeyPrefix |
string |
Add this prefix to parameter names. |
resourceType |
ResourceType |
No description. |
sopsAgeKey |
aws-cdk-lib.SecretValue |
The age key that should be used for encryption. |
sopsFileFormat |
string |
The format of the sops file. |
sopsFilePath |
string |
The filepath to the sops file. |
sopsKmsKey |
aws-cdk-lib.aws_kms.IKey[] |
The kmsKey used to encrypt the sops file. |
sopsProvider |
SopsSyncProvider |
The custom resource provider to use. |
sopsS3Bucket |
string |
If you want to pass the sops file via s3, you can specify the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified. |
sopsS3Key |
string |
If you want to pass the sops file via s3, you can specify the key inside the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified. |
stringifyValues |
boolean |
Shall all values be flattened? |
uploadType |
UploadType |
How should the secret be passed to the CustomResource? |
allowedPattern |
string |
A regular expression used to validate the parameter value. |
description |
string |
Information about the parameter that you want to add to the system. |
parameterName |
string |
The name of the parameter. |
simpleName |
boolean |
Indicates if the parameter name is a simple name (i.e. does not include "/" separators). |
tier |
aws-cdk-lib.aws_ssm.ParameterTier |
The tier of the string parameter. |
stringValue |
string |
The value of the parameter. |
dataType |
aws-cdk-lib.aws_ssm.ParameterDataType |
The data type of the parameter, such as text or aws:ec2:image . |
type |
aws-cdk-lib.aws_ssm.ParameterType |
The type of the string parameter. |
encryptionKey |
aws-cdk-lib.aws_kms.IKey |
No description. |
public readonly convertToJSON: boolean;
- Type: boolean
- Default: true
Should the encrypted sops value should be converted to JSON?
Only JSON can be handled by cloud formations dynamic references.
public readonly creationType: CreationType;
- Type: CreationType
public readonly flatten: boolean;
- Type: boolean
- Default: true
Should the structure be flattened?
The result will be a flat structure and all object keys will be replaced with the full jsonpath as key. This is usefull for dynamic references, as those don't support nested objects.
public readonly flattenSeparator: string;
- Type: string
- Default: '.'
If the structure should be flattened use the provided separator between keys.
public readonly parameterKeyPrefix: string;
- Type: string
Add this prefix to parameter names.
public readonly resourceType: ResourceType;
- Type: ResourceType
public readonly sopsAgeKey: SecretValue;
- Type: aws-cdk-lib.SecretValue
The age key that should be used for encryption.
public readonly sopsFileFormat: string;
- Type: string
- Default: The fileformat will be derived from the file ending
The format of the sops file.
public readonly sopsFilePath: string;
- Type: string
The filepath to the sops file.
public readonly sopsKmsKey: IKey[];
- Type: aws-cdk-lib.aws_kms.IKey[]
- Default: The key will be derived from the sops file
The kmsKey used to encrypt the sops file.
Encrypt permissions will be granted to the custom resource provider.
public readonly sopsProvider: SopsSyncProvider;
- Type: SopsSyncProvider
- Default: A new singleton provider will be created
The custom resource provider to use.
If you don't specify any, a new provider will be created - or if already exists within this stack - reused.
public readonly sopsS3Bucket: string;
- Type: string
If you want to pass the sops file via s3, you can specify the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified.
public readonly sopsS3Key: string;
- Type: string
If you want to pass the sops file via s3, you can specify the key inside the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified.
public readonly stringifyValues: boolean;
- Type: boolean
Shall all values be flattened?
This is usefull for dynamic references, as there are lookup errors for certain float types
public readonly uploadType: UploadType;
- Type: UploadType
- Default: INLINE
How should the secret be passed to the CustomResource?
public readonly allowedPattern: string;
- Type: string
- Default: no validation is performed
A regular expression used to validate the parameter value.
For example, for String types with values restricted to
numbers, you can specify the following: ^\d+$
public readonly description: string;
- Type: string
- Default: none
Information about the parameter that you want to add to the system.
public readonly parameterName: string;
- Type: string
- Default: a name will be generated by CloudFormation
The name of the parameter.
public readonly simpleName: boolean;
- Type: boolean
- Default: auto-detect based on
parameterName
Indicates if the parameter name is a simple name (i.e. does not include "/" separators).
This is required only if parameterName
is a token, which means we
are unable to detect if the name is simple or "path-like" for the purpose
of rendering SSM parameter ARNs.
If parameterName
is not specified, simpleName
must be true
(or
undefined) since the name generated by AWS CloudFormation is always a
simple name.
public readonly tier: ParameterTier;
- Type: aws-cdk-lib.aws_ssm.ParameterTier
- Default: undefined
The tier of the string parameter.
public readonly stringValue: string;
- Type: string
The value of the parameter.
It may not reference another parameter and {{}}
cannot be used in the value.
public readonly dataType: ParameterDataType;
- Type: aws-cdk-lib.aws_ssm.ParameterDataType
- Default: ParameterDataType.TEXT
The data type of the parameter, such as text
or aws:ec2:image
.
- Deprecated: - type will always be 'String'
public readonly type: ParameterType;
- Type: aws-cdk-lib.aws_ssm.ParameterType
- Default: ParameterType.STRING
The type of the string parameter.
public readonly encryptionKey: IKey;
- Type: aws-cdk-lib.aws_kms.IKey
Configuration options for the SopsSync.
import { SopsSyncOptions } from 'cdk-sops-secrets'
const sopsSyncOptions: SopsSyncOptions = { ... }
Name | Type | Description |
---|---|---|
convertToJSON |
boolean |
Should the encrypted sops value should be converted to JSON? |
creationType |
CreationType |
No description. |
flatten |
boolean |
Should the structure be flattened? |
flattenSeparator |
string |
If the structure should be flattened use the provided separator between keys. |
parameterKeyPrefix |
string |
Add this prefix to parameter names. |
resourceType |
ResourceType |
No description. |
sopsAgeKey |
aws-cdk-lib.SecretValue |
The age key that should be used for encryption. |
sopsFileFormat |
string |
The format of the sops file. |
sopsFilePath |
string |
The filepath to the sops file. |
sopsKmsKey |
aws-cdk-lib.aws_kms.IKey[] |
The kmsKey used to encrypt the sops file. |
sopsProvider |
SopsSyncProvider |
The custom resource provider to use. |
sopsS3Bucket |
string |
If you want to pass the sops file via s3, you can specify the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified. |
sopsS3Key |
string |
If you want to pass the sops file via s3, you can specify the key inside the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified. |
stringifyValues |
boolean |
Shall all values be flattened? |
uploadType |
UploadType |
How should the secret be passed to the CustomResource? |
public readonly convertToJSON: boolean;
- Type: boolean
- Default: true
Should the encrypted sops value should be converted to JSON?
Only JSON can be handled by cloud formations dynamic references.
public readonly creationType: CreationType;
- Type: CreationType
public readonly flatten: boolean;
- Type: boolean
- Default: true
Should the structure be flattened?
The result will be a flat structure and all object keys will be replaced with the full jsonpath as key. This is usefull for dynamic references, as those don't support nested objects.
public readonly flattenSeparator: string;
- Type: string
- Default: '.'
If the structure should be flattened use the provided separator between keys.
public readonly parameterKeyPrefix: string;
- Type: string
Add this prefix to parameter names.
public readonly resourceType: ResourceType;
- Type: ResourceType
public readonly sopsAgeKey: SecretValue;
- Type: aws-cdk-lib.SecretValue
The age key that should be used for encryption.
public readonly sopsFileFormat: string;
- Type: string
- Default: The fileformat will be derived from the file ending
The format of the sops file.
public readonly sopsFilePath: string;
- Type: string
The filepath to the sops file.
public readonly sopsKmsKey: IKey[];
- Type: aws-cdk-lib.aws_kms.IKey[]
- Default: The key will be derived from the sops file
The kmsKey used to encrypt the sops file.
Encrypt permissions will be granted to the custom resource provider.
public readonly sopsProvider: SopsSyncProvider;
- Type: SopsSyncProvider
- Default: A new singleton provider will be created
The custom resource provider to use.
If you don't specify any, a new provider will be created - or if already exists within this stack - reused.
public readonly sopsS3Bucket: string;
- Type: string
If you want to pass the sops file via s3, you can specify the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified.
public readonly sopsS3Key: string;
- Type: string
If you want to pass the sops file via s3, you can specify the key inside the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified.
public readonly stringifyValues: boolean;
- Type: boolean
Shall all values be flattened?
This is usefull for dynamic references, as there are lookup errors for certain float types
public readonly uploadType: UploadType;
- Type: UploadType
- Default: INLINE
How should the secret be passed to the CustomResource?
The configuration options extended by the target Secret.
import { SopsSyncProps } from 'cdk-sops-secrets'
const sopsSyncProps: SopsSyncProps = { ... }
Name | Type | Description |
---|---|---|
convertToJSON |
boolean |
Should the encrypted sops value should be converted to JSON? |
creationType |
CreationType |
No description. |
flatten |
boolean |
Should the structure be flattened? |
flattenSeparator |
string |
If the structure should be flattened use the provided separator between keys. |
parameterKeyPrefix |
string |
Add this prefix to parameter names. |
resourceType |
ResourceType |
No description. |
sopsAgeKey |
aws-cdk-lib.SecretValue |
The age key that should be used for encryption. |
sopsFileFormat |
string |
The format of the sops file. |
sopsFilePath |
string |
The filepath to the sops file. |
sopsKmsKey |
aws-cdk-lib.aws_kms.IKey[] |
The kmsKey used to encrypt the sops file. |
sopsProvider |
SopsSyncProvider |
The custom resource provider to use. |
sopsS3Bucket |
string |
If you want to pass the sops file via s3, you can specify the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified. |
sopsS3Key |
string |
If you want to pass the sops file via s3, you can specify the key inside the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified. |
stringifyValues |
boolean |
Shall all values be flattened? |
uploadType |
UploadType |
How should the secret be passed to the CustomResource? |
encryptionKey |
aws-cdk-lib.aws_kms.IKey |
The encryption key used for encrypting the ssm parameter if parameterName is set. |
parameterName |
string |
The parameter name. |
parameterNames |
string[] |
The parameter name. |
secret |
aws-cdk-lib.aws_secretsmanager.ISecret |
The secret that will be populated with the encrypted sops file content. |
public readonly convertToJSON: boolean;
- Type: boolean
- Default: true
Should the encrypted sops value should be converted to JSON?
Only JSON can be handled by cloud formations dynamic references.
public readonly creationType: CreationType;
- Type: CreationType
public readonly flatten: boolean;
- Type: boolean
- Default: true
Should the structure be flattened?
The result will be a flat structure and all object keys will be replaced with the full jsonpath as key. This is usefull for dynamic references, as those don't support nested objects.
public readonly flattenSeparator: string;
- Type: string
- Default: '.'
If the structure should be flattened use the provided separator between keys.
public readonly parameterKeyPrefix: string;
- Type: string
Add this prefix to parameter names.
public readonly resourceType: ResourceType;
- Type: ResourceType
public readonly sopsAgeKey: SecretValue;
- Type: aws-cdk-lib.SecretValue
The age key that should be used for encryption.
public readonly sopsFileFormat: string;
- Type: string
- Default: The fileformat will be derived from the file ending
The format of the sops file.
public readonly sopsFilePath: string;
- Type: string
The filepath to the sops file.
public readonly sopsKmsKey: IKey[];
- Type: aws-cdk-lib.aws_kms.IKey[]
- Default: The key will be derived from the sops file
The kmsKey used to encrypt the sops file.
Encrypt permissions will be granted to the custom resource provider.
public readonly sopsProvider: SopsSyncProvider;
- Type: SopsSyncProvider
- Default: A new singleton provider will be created
The custom resource provider to use.
If you don't specify any, a new provider will be created - or if already exists within this stack - reused.
public readonly sopsS3Bucket: string;
- Type: string
If you want to pass the sops file via s3, you can specify the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified.
public readonly sopsS3Key: string;
- Type: string
If you want to pass the sops file via s3, you can specify the key inside the bucket you can use cfn parameter here Both, sopsS3Bucket and sopsS3Key have to be specified.
public readonly stringifyValues: boolean;
- Type: boolean
Shall all values be flattened?
This is usefull for dynamic references, as there are lookup errors for certain float types
public readonly uploadType: UploadType;
- Type: UploadType
- Default: INLINE
How should the secret be passed to the CustomResource?
public readonly encryptionKey: IKey;
- Type: aws-cdk-lib.aws_kms.IKey
The encryption key used for encrypting the ssm parameter if parameterName
is set.
public readonly parameterName: string;
- Type: string
The parameter name.
If set this creates an encrypted SSM Parameter instead of a secret.
public readonly parameterNames: string[];
- Type: string[]
The parameter name.
If set this creates an encrypted SSM Parameter instead of a secret.
public readonly secret: ISecret;
- Type: aws-cdk-lib.aws_secretsmanager.ISecret
The secret that will be populated with the encrypted sops file content.
Configuration options for a custom SopsSyncProvider.
import { SopsSyncProviderProps } from 'cdk-sops-secrets'
const sopsSyncProviderProps: SopsSyncProviderProps = { ... }
Name | Type | Description |
---|---|---|
securityGroups |
aws-cdk-lib.aws_ec2.ISecurityGroup[] |
Only if vpc is supplied: The list of security groups to associate with the Lambda's network interfaces. |
vpc |
aws-cdk-lib.aws_ec2.IVpc |
VPC network to place Lambda network interfaces. |
vpcSubnets |
aws-cdk-lib.aws_ec2.SubnetSelection |
Where to place the network interfaces within the VPC. |
public readonly securityGroups: ISecurityGroup[];
- Type: aws-cdk-lib.aws_ec2.ISecurityGroup[]
- Default: A dedicated security group will be created for the lambda function.
Only if vpc
is supplied: The list of security groups to associate with the Lambda's network interfaces.
public readonly vpc: IVpc;
- Type: aws-cdk-lib.aws_ec2.IVpc
- Default: Lambda function is not placed within a VPC.
VPC network to place Lambda network interfaces.
public readonly vpcSubnets: SubnetSelection;
- Type: aws-cdk-lib.aws_ec2.SubnetSelection
- Default: Subnets will be chosen automatically.
Where to place the network interfaces within the VPC.
Name | Description |
---|---|
SINGLE |
Create or update a single secret/parameter. |
MULTI |
Create or update a multiple secrets/parameters by flattening the SOPS file. |
Create or update a single secret/parameter.
Create or update a multiple secrets/parameters by flattening the SOPS file.
Name | Description |
---|---|
SECRET |
No description. |
PARAMETER |
No description. |
Name | Description |
---|---|
INLINE |
Pass the secret data inline (base64 encoded and compressed). |
ASSET |
Uplaod the secert data as asset. |
Pass the secret data inline (base64 encoded and compressed).
Uplaod the secert data as asset.