Trasformazione AWS::SecretsManager - AWS CloudFormation

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Trasformazione AWS::SecretsManager

Usa la AWS::SecretsManager trasformazione, che è una macro ospitata da AWS CloudFormation, per specificare una AWS Lambda funzione per eseguire la rotazione dei segreti. When Creazione di un set di modifiche or e Aggiorna gli stack utilizzando i set di modifiche i riferimenti ai AWS::SecretsManager modelli AWS CloudFormation generano una AWS Lambda funzione per eseguire la rotazione dei segreti. Utilizzate il tipo di HostedRotationLambda proprietà della AWS::SecretsManager::RotationSchedule risorsa per specificare gli attributi della AWS Lambda funzione desiderata.

La AWS Lambda funzione si trova in uno stack annidato (una AWS::CloudFormation::Stackrisorsa) nel modello elaborato. Questa risorsa si collega quindi al modello di funzione appropriato nel repository AWS Secrets Manager Rotation Lambda Functions, in base a RotationTypequanto specificato nella risorsa. AWS::SecretsManager::RotationSchedule

Utilizzo

Utilizzare la trasformazione AWS::SecretsManager al livello superiore del modello. Non è possibile utilizzare AWS::SecretsManager come trasformazione incorporata in qualsiasi altra sezione del modello.

Il valore della dichiarazione della trasformazione deve essere una stringa letterale. Non è possibile utilizzare un parametro o una funzione per specificare un valore di trasformazione.

Sintassi al livello superiore di un modello

Per includere AWS::SecretsManager al livello superiore di un modello, nella sezione Transform, utilizza la sintassi riportata di seguito.

JSON

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

YAML

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

Parametri

La trasformazione AWS::SecretsManager non accetta alcun parametro. Specificate invece le proprietà della AWS Lambda funzione di rotazione segreta che desiderate creare utilizzando il tipo di HostedRotationLambda proprietà delle AWS::SecretsManager::RotationSchedule risorse nel modello di pila.

Remarks

Per considerazioni generali sull'uso di macro, consulta Considerazioni sulla creazione di definizioni di macro CloudFormation.

Esempio

Il seguente esempio di modello parziale mostra come utilizzare la AWS::SecretsManager trasformazione per specificare una AWS Lambda funzione per la rotazione segreta su un database MySQL per un singolo utente, in base alle proprietà specificate nel tipo di proprietà HostedRotationLambda della risorsa. AWS::SecretsManager::RotationSchedule

Per esempi completi di modelli che illustrano le rotazioni segrete per database RDS, cluster Amazon Redshift e cluster Document DB, consulta la sezione Esempi di. 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