StringParameterProps Struct
Properties needed to create a String SSM parameter.
Example
import * as lambda from 'aws-cdk-lib/aws-lambda';
const simpleParameter = new ssm.StringParameter(this, 'StringParameter', {
// the parameter name doesn't contain any '/'
parameterName: 'parameter',
stringValue: 'SOME_VALUE',
simpleName: true, // set `simpleName` to true
});
declare const func: lambda.IFunction;
const nonSimpleParameter = new ssm.StringParameter(this, 'StringParameter', {
// the parameter name contains '/'
parameterName: `/${func.functionName}/my/app/param`,
stringValue: 'SOME_VALUE',
simpleName: false, // set `simpleName` to false
});
import aws_cdk.aws_lambda as lambda_
# func: lambda.IFunction
simple_parameter = ssm.StringParameter(self, "StringParameter",
# the parameter name doesn't contain any '/'
parameter_name="parameter",
string_value="SOME_VALUE",
simple_name=True
)
non_simple_parameter = ssm.StringParameter(self, "StringParameter",
# the parameter name contains '/'
parameter_name=f"/{func.functionName}/my/app/param",
string_value="SOME_VALUE",
simple_name=False
)
import software.amazon.awscdk.services.lambda.*;
IFunction func;
StringParameter simpleParameter = StringParameter.Builder.create(this, "StringParameter")
// the parameter name doesn't contain any '/'
.parameterName("parameter")
.stringValue("SOME_VALUE")
.simpleName(true)
.build();
StringParameter nonSimpleParameter = StringParameter.Builder.create(this, "StringParameter")
// the parameter name contains '/'
.parameterName(String.format("/%s/my/app/param", func.getFunctionName()))
.stringValue("SOME_VALUE")
.simpleName(false)
.build();
// Install: dotnet add package Amazon.CDK.Lib
using Amazon.CDK.AWS.Lambda;
IFunction func;
var simpleParameter = new StringParameter(this, "StringParameter", new StringParameterProps {
// the parameter name doesn't contain any '/'
ParameterName = "parameter",
StringValue = "SOME_VALUE",
SimpleName = true
});
var nonSimpleParameter = new StringParameter(this, "StringParameter", new StringParameterProps {
// the parameter name contains '/'
ParameterName = $"/{func.functionName}/my/app/param",
StringValue = "SOME_VALUE",
SimpleName = false
});
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
import lambda "github.com/aws/aws-cdk-go/awscdk"
var func IFunction
simpleParameter := ssm.NewStringParameter(this, jsii.String("StringParameter"), &StringParameterProps{
// the parameter name doesn't contain any '/'
ParameterName: jsii.String("parameter"),
StringValue: jsii.String("SOME_VALUE"),
SimpleName: jsii.Boolean(true),
})
nonSimpleParameter := ssm.NewStringParameter(this, jsii.String("StringParameter"), &StringParameterProps{
// the parameter name contains '/'
ParameterName: fmt.Sprintf("/%v/my/app/param", func.FunctionName),
StringValue: jsii.String("SOME_VALUE"),
SimpleName: jsii.Boolean(false),
})
Properties
allowedPatternoptionalstringallowed_patternoptionalstrallowedPatternoptionalStringAllowedPatternoptionalstringAllowedPatternoptional*string#Default: no validation is performed
For example, for String types with values restricted to numbers, you can specify the following: ^\d+$
dataTypeoptionalParameterDataTypedata_typeoptionalParameterDataTypedataTypeoptionalParameterDataTypeDataTypeoptionalParameterDataTypeDataTypeoptionalParameterDataType= ParameterDataType.TEXT#descriptionoptionalstringdescriptionoptionalstrdescriptionoptionalStringDescriptionoptionalstringDescriptionoptional*string= none#parameterNameoptionalstringparameter_nameoptionalstrparameterNameoptionalStringParameterNameoptionalstringParameterNameoptional*string#Default: a name will be generated by CloudFormation
simpleNameoptionalbooleansimple_nameoptionalboolsimpleNameoptionalBooleanSimpleNameoptionalboolSimpleNameoptional*bool#Default: auto-detect based on parameterName
notes
A parameter name without any "/" is considered a simple name. If the parameter name includes "/", setting simpleName to true might cause unintended issues such as duplicate "/" in the resulting ARN.
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.
It may not reference another parameter and {{}} cannot be used in the value.
tieroptionalParameterTiertieroptionalParameterTiertieroptionalParameterTierTieroptionalParameterTierTieroptionalParameterTier= undefined#typeoptionalParameterTypetypeoptionalParameterTypetypeoptionalParameterTypeTypeoptionalParameterTypeTypeoptionalParameterType= ParameterType.STRINGdeprecated#