AWS::SecretsManager-Transformation - AWS CloudFormation

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

AWS::SecretsManager-Transformation

Verwenden Sie die AWS::SecretsManager Transformation, ein Makro, das von bereitgestellt wird AWS CloudFormation, um eine AWS Lambda Funktion für die Rotation von Geheimnissen anzugeben. Wenn Einen Änderungssatz erstellen oder CloudFormation Stapel mithilfe von Änderungssätzen aktualisieren und die Vorlagen referenzierenAWS::SecretsManager, AWS CloudFormation wird eine AWS Lambda Funktion zur Rotation von Geheimnissen generiert. Verwenden Sie den HostedRotationLambda Eigenschaftstyp der AWS::SecretsManager::RotationSchedule Ressource, um die Attribute der gewünschten AWS Lambda Funktion anzugeben.

Die AWS Lambda Funktion befindet sich in einem verschachtelten Stapel (einer AWS::CloudFormation::StackRessource) in der verarbeiteten Vorlage. Diese Ressource verlinkt dann auf die entsprechende Funktionsvorlage im AWS Secrets Manager Rotation Lambda Functions-Repository, basierend auf den in der AWS::SecretsManager::RotationSchedule Ressource RotationTypeangegebenen.

Verwendung

Verwenden Sie die AWS::SecretsManager-Transformation auf der obersten Ebene der Vorlage. Sie können AWS::SecretsManager nicht als Transformation verwenden, die in einem anderen Vorlagenabschnitt eingebettet ist.

Der Wert der Transformationsdeklaration muss eine Literalzeichenfolge sein. Parameter oder Funktionen dürfen nicht zur Angabe eines Transformationswerts verwendet werden.

Syntax der obersten Ebene einer Vorlage

Wenn Sie AWS::SecretsManager auf der obersten Ebene einer Vorlage im Abschnitt „Transform“ einschließen möchten, verwenden Sie die folgende Syntax.

JSON

{ "Transform": "AWS::SecretsManager-2020-07-23", . . . }

YAML

Transform: AWS::SecretsManager-2020-07-23

Parameter

Die AWS::SecretsManager-Transformation akzeptiert keine Parameter. Geben Sie stattdessen die Eigenschaften der geheimen AWS Lambda Rotationsfunktion, die Sie erstellen möchten, anhand des HostedRotationLambda Eigenschaftstyps der AWS::SecretsManager::RotationSchedule Ressourcen in der Stack-Vorlage an.

Anmerkungen

Allgemeine Hinweise zur Verwendung von Makros finden Sie unter Überlegungen zur Erstellung von CloudFormation -Makrodefinitionen.

Beispiel

Das folgende Beispiel für eine teilweise Vorlage zeigt, wie die AWS::SecretsManager Transformation verwendet wird, um eine AWS Lambda Funktion für die geheime Rotation in einer MySQL-Datenbank für einen einzelnen Benutzer anzugeben, basierend auf den Eigenschaften, die im HostedRotationLambda Eigenschaftstyp der AWS::SecretsManager::RotationSchedule Ressource angegeben sind.

Vollständige Vorlagenbeispiele zur Veranschaulichung geheimer Rotationen für RDS-Datenbanken, Amazon Redshift Redshift-Cluster und Document DB-Cluster finden Sie im Abschnitt Beispiele von. AWS::SecretsManager::RotationSchedule

JSON

{ "AWSTemplateFormatVersion": "2010-09-09", "Transform": "AWS::SecretsManager-2020-07-23", "Resources": { . . . "MySecretRotationSchedule": { "Type": "AWS::SecretsManager::RotationSchedule", "DependsOn": "SecretRDSInstanceAttachment", "Properties": { "SecretId": { "Ref": "MyRDSInstanceRotationSecret" }, "HostedRotationLambda": { "RotationType": "MySQLSingleUser", "RotationLambdaName": "SecretsManagerRotation", "VpcSecurityGroupIds": { "Fn::GetAtt": [ "TestVPC", "DefaultSecurityGroup" ] }, "VpcSubnetIds": { "Fn::Join": [ ",", [ { "Ref": "TestSubnet01" }, { "Ref": "TestSubnet02" } ] ] } }, "RotationRules": { "AutomaticallyAfterDays": 30 } } } } }

YAML

AWSTemplateFormatVersion: 2010-09-09 Transform: AWS::SecretsManager-2020-07-23 Resources: . . . MySecretRotationSchedule: Type: AWS::SecretsManager::RotationSchedule DependsOn: SecretRDSInstanceAttachment Properties: SecretId: !Ref MyRDSInstanceRotationSecret HostedRotationLambda: RotationType: MySQLSingleUser RotationLambdaName: SecretsManagerRotation VpcSecurityGroupIds: !GetAtt TestVPC.DefaultSecurityGroup VpcSubnetIds: Fn::Join: - "," - - Ref: TestSubnet01 - Ref: TestSubnet02 RotationRules: AutomaticallyAfterDays: 30