RotationScheduleProps Struct
Construction properties for a RotationSchedule.
Example
ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import * as cdk from 'aws-cdk-lib';
import { aws_lambda as lambda } from 'aws-cdk-lib';
import { aws_secretsmanager as secretsmanager } from 'aws-cdk-lib';
declare const function_: lambda.Function;
declare const hostedRotation: secretsmanager.HostedRotation;
declare const secret: secretsmanager.Secret;
const rotationScheduleProps: secretsmanager.RotationScheduleProps = {
secret: secret,
// the properties below are optional
automaticallyAfter: cdk.Duration.minutes(30),
hostedRotation: hostedRotation,
rotateImmediatelyOnUpdate: false,
rotationLambda: function_,
};
Properties
automaticallyAfteroptionalDurationautomatically_afteroptionalDurationautomaticallyAfteroptionalDurationAutomaticallyAfteroptionalDurationAutomaticallyAfteroptionalDuration= Duration.days(30)#Specifies the number of days after the previous rotation before Secrets Manager triggers the next automatic rotation.
The minimum value is 4 hours. The maximum value is 1000 days.
A value of zero (Duration.days(0)) will not create RotationRules.
hostedRotationoptionalHostedRotationhosted_rotationoptionalHostedRotationhostedRotationoptionalHostedRotationHostedRotationoptionalHostedRotationHostedRotationoptionalHostedRotation#Hosted rotation.
Default: either rotationLambda or hostedRotation must be specified
rotateImmediatelyOnUpdateoptionalbooleanrotate_immediately_on_updateoptionalboolrotateImmediatelyOnUpdateoptionalBooleanRotateImmediatelyOnUpdateoptionalboolRotateImmediatelyOnUpdateoptional*bool= true#Specifies whether to rotate the secret immediately or wait until the next scheduled rotation window.
rotationLambdaoptionalIFunctionrotation_lambdaoptionalIFunctionrotationLambdaoptionalIFunctionRotationLambdaoptionalIFunctionRotationLambdaoptionalIFunction#A Lambda function that can rotate the secret.
Default: either rotationLambda or hostedRotation must be specified
The secret to rotate.
notes
If hosted rotation is used, this must be a JSON string with the following format:
{
"engine": <required: database engine>,
"host": <required: instance host name>,
"username": <required: username>,
"password": <required: password>,
"dbname": <optional: database name>,
"port": <optional: if not specified, default port will be used>,
"masterarn": <required for multi user rotation: the arn of the master secret which will be used to create users/change passwords>
}
This is typically the case for a secret referenced from an AWS::SecretsManager::SecretTargetAttachment or an ISecret returned by the attach() method of Secret.