Exemples d'utilisation de Secrets Manager AWS CLI - AWS Command Line Interface

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Exemples d'utilisation de Secrets Manager AWS CLI

Les exemples de code suivants vous montrent comment effectuer des actions et implémenter des scénarios courants à l'aide du AWS Command Line Interface with Secrets Manager.

Les actions sont des extraits de code de programmes plus larges et doivent être exécutées dans leur contexte. Alors que les actions vous indiquent comment appeler des fonctions de service individuelles, vous pouvez les voir en contexte dans leurs scénarios associés.

Chaque exemple inclut un lien vers le code source complet, où vous trouverez des instructions sur la configuration et l’exécution du code en contexte.

Rubriques

Actions

L'exemple de code suivant montre comment utiliserbatch-get-secret-value.

AWS CLI

Exemple 1 : pour extraire la valeur d’un groupe de secrets répertoriés par nom

L’exemple batch-get-secret-value suivant extrait la valeur de trois secrets.

aws secretsmanager batch-get-secret-value \ --secret-id-list MySecret1 MySecret2 MySecret3

Sortie :

{ "SecretValues": [ { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret1-a1b2c3", "Name": "MySecret1", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa", "SecretString": "{\"username\":\"diego_ramirez\",\"password\":\"EXAMPLE-PASSWORD\",\"engine\":\"mysql\",\"host\":\"secretsmanagertutorial.cluster.us-west-2.rds.amazonaws.com\",\"port\":3306,\"dbClusterIdentifier\":\"secretsmanagertutorial\"}", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1523477145.729" }, { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret2-a1b2c3", "Name": "MySecret2", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEbbbbb", "SecretString": "{\"username\":\"akua_mansa\",\"password\":\"EXAMPLE-PASSWORD\"", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1673477781.275" }, { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret3-a1b2c3", "Name": "MySecret3", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEccccc", "SecretString": "{\"username\":\"jie_liu\",\"password\":\"EXAMPLE-PASSWORD\"", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1373477721.124" } ], "Errors": [] }

Pour plus d’informations, consultez Retrieve a group of secrets in a batch dans le Guide de l’utilisateur AWS  Secrets Manager.

Exemple 2 : pour extraire la valeur d’un groupe de secrets sélectionnés par filtre

L’exemple batch-get-secret-value suivant récupère la valeur des secrets de votre compte dont le nom contient MySecret. Le filtrage par nom respecte la casse.

aws secretsmanager batch-get-secret-value \ --filters Key="name",Values="MySecret"

Sortie :

{ "SecretValues": [ { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret1-a1b2c3", "Name": "MySecret1", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa", "SecretString": "{\"username\":\"diego_ramirez\",\"password\":\"EXAMPLE-PASSWORD\",\"engine\":\"mysql\",\"host\":\"secretsmanagertutorial.cluster.us-west-2.rds.amazonaws.com\",\"port\":3306,\"dbClusterIdentifier\":\"secretsmanagertutorial\"}", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1523477145.729" }, { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret2-a1b2c3", "Name": "MySecret2", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEbbbbb", "SecretString": "{\"username\":\"akua_mansa\",\"password\":\"EXAMPLE-PASSWORD\"", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1673477781.275" }, { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MySecret3-a1b2c3", "Name": "MySecret3", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLEccccc", "SecretString": "{\"username\":\"jie_liu\",\"password\":\"EXAMPLE-PASSWORD\"", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": "1373477721.124" } ], "Errors": [] }

Pour plus d’informations, consultez Retrieve a group of secrets in a batch dans le Guide de l’utilisateur AWS  Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous BatchGetSecretValueà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisercancel-rotate-secret.

AWS CLI

Pour désactiver la rotation automatique d’un secret

L’exemple cancel-rotate-secret suivant désactive la rotation automatique d’un secret. Pour reprendre la rotation, appelez rotate-secret.

aws secretsmanager cancel-rotate-secret \ --secret-id MyTestSecret

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }

Pour plus d’informations, consultez Réaliser la rotation d’un secret dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous CancelRotateSecretà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisercreate-secret.

AWS CLI

Exemple 1 : pour créer un secret à partir des informations d’identification d’un fichier JSON

L’exemple suivant create-secret crée un secret à partir des informations d’identification d’un fichier. Pour plus d'informations, consultez la section Chargement des paramètres de la AWS CLI à partir d'un fichier dans le Guide de l'utilisateur de la AWS CLI.

aws secretsmanager create-secret \ --name MyTestSecret \ --secret-string file://mycreds.json

Contenu de mycreds.json :

{ "engine": "mysql", "username": "saanvis", "password": "EXAMPLE-PASSWORD", "host": "my-database-endpoint.us-west-2.rds.amazonaws.com", "dbname": "myDatabase", "port": "3306" }

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

Pour plus d’informations, consultez Création d’un secret dans le Guide de l’utilisateur Secrets Manager.

Exemple 2 : pour créer un secret

L’exemple suivant create-secret crée un secret avec deux paires clé-valeur. Lorsque saisissez des commandes dans un shell de commande, il existe un risque d’accès à l’historique des commandes ou aux paramètres de vos commandes. Cela pose un problème si la commande inclut la valeur d’un secret. Pour plus d’informations, consultez Atténuation des risques liés à l’utilisation des outils de ligne de commande pour stocker vos secrets dans le Guide de l’utilisateur Secrets Manager.

aws secretsmanager create-secret \ --name MyTestSecret \ --description "My test secret created with the CLI." \ --secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}"

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE" }

Pour plus d’informations, consultez Création d’un secret dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous CreateSecretà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-resource-policy.

AWS CLI

Pour supprimer la politique basée sur les ressources associée à un secret

L’exemple suivant delete-resource-policy supprime la politique basée sur les ressources associée à un secret.

aws secretsmanager delete-resource-policy \ --secret-id MyTestSecret

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }

Pour plus d’informations, consultez Authentification et contrôle d’accès dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous DeleteResourcePolicyà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdelete-secret.

AWS CLI

Exemple 1 : pour supprimer un secret

L’exemple suivant delete-secret supprime un secret répliqué. Vous pouvez récupérer le secret à l’aide de restore-secret jusqu’à la date et l’heure indiquées dans le champ de réponse DeletionDate. Pour supprimer un secret répliqué dans d’autres régions, supprimez d’abord ses répliques avec remove-regions-from-replication, puis appelez delete-secret.

aws secretsmanager delete-secret \ --secret-id MyTestSecret \ --recovery-window-in-days 7

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "DeletionDate": 1524085349.095 }

Pour plus d’informations, consultez Suppression d’un secret dans le Guide de l’utilisateur Secrets Manager.

Exemple 2 : pour supprimer un secret immédiatement

L’exemple suivant delete-secret supprime immédiatement le secret, sans plage de récupération. Il n’est pas possible de récupérer ce secret.

aws secretsmanager delete-secret \ --secret-id MyTestSecret \ --force-delete-without-recovery

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "DeletionDate": 1508750180.309 }

Pour plus d’informations, consultez Suppression d’un secret dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous DeleteSecretà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserdescribe-secret.

AWS CLI

Pour récupérer les détails d’un secret

L’exemple describe-secret suivant affiche les détails d’un secret.

aws secretsmanager describe-secret \ --secret-id MyTestSecret

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-Ca8JGt", "Name": "MyTestSecret", "Description": "My test secret", "KmsKeyId": "arn:aws:kms:us-west-2:123456789012:key/EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE", "RotationEnabled": true, "RotationLambdaARN": "arn:aws:lambda:us-west-2:123456789012:function:MyTestRotationLambda", "RotationRules": { "AutomaticallyAfterDays": 2, "Duration": "2h", "ScheduleExpression": "cron(0 16 1,15 * ? *)" }, "LastRotatedDate": 1525747253.72, "LastChangedDate": 1523477145.729, "LastAccessedDate": 1524572133.25, "Tags": [ { "Key": "SecondTag", "Value": "AnotherValue" }, { "Key": "FirstTag", "Value": "SomeValue" } ], "VersionIdsToStages": { "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111": [ "AWSPREVIOUS" ], "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222": [ "AWSCURRENT" ], "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333": [ "AWSPENDING" ] }, "CreatedDate": 1521534252.66, "PrimaryRegion": "us-west-2", "ReplicationStatus": [ { "Region": "eu-west-3", "KmsKeyId": "alias/aws/secretsmanager", "Status": "InSync", "StatusMessage": "Replication succeeded" } ] }

Pour plus d’informations, consultez Secret dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous DescribeSecretà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-random-password.

AWS CLI

Pour générer un mot de passe aléatoire

L’exemple get-random-password suivant génère un mot de passe aléatoire de 20 caractères comprenant au moins une lettre majuscule, une lettre minuscule, un chiffre et un signe de ponctuation.

aws secretsmanager get-random-password \ --require-each-included-type \ --password-length 20

Sortie :

{ "RandomPassword": "EXAMPLE-PASSWORD" }

Pour plus d’informations, consultez Création et gestion des secrets dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous GetRandomPasswordà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-resource-policy.

AWS CLI

Pour récupérer la politique basée sur les ressources associée à un secret

L’exemple suivant get-resource-policy récupère la politique basée sur les ressources associée à un secret.

aws secretsmanager get-resource-policy \ --secret-id MyTestSecret

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "ResourcePolicy": "{\n\"Version\":\"2012-10-17\",\n\"Statement\":[{\n\"Effect\":\"Allow\",\n \"Principal\":{\n\"AWS\":\"arn:aws:iam::123456789012:root\"\n},\n\"Action\": \"secretsmanager:GetSecretValue\",\n\"Resource\":\"*\"\n}]\n}" }

Pour plus d’informations, consultez Authentification et contrôle d’accès dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous GetResourcePolicyà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserget-secret-value.

AWS CLI

Exemple 1 : pour extraire la valeur chiffrée d’un secret

L’exemple suivant get-secret-value récupère la valeur actuelle du secret.

aws secretsmanager get-secret-value \ --secret-id MyTestSecret

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "SecretString": "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}", "VersionStages": [ "AWSCURRENT" ], "CreatedDate": 1523477145.713 }

Pour plus d’informations, consultez Récupération d’un secret dans le Guide de l’utilisateur Secrets Manager.

Exemple 2 : pour extraire la valeur précédente d’un secret

L’exemple suivant get-secret-value extrait la valeur précédente du secret.

aws secretsmanager get-secret-value \ --secret-id MyTestSecret --version-stage AWSPREVIOUS

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "SecretString": "{\"user\":\"diegor\",\"password\":\"PREVIOUS-EXAMPLE-PASSWORD\"}", "VersionStages": [ "AWSPREVIOUS" ], "CreatedDate": 1523477145.713 }

Pour plus d’informations, consultez Récupération d’un secret dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous GetSecretValueà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserlist-secret-version-ids.

AWS CLI

Pour répertorier toutes les versions associées à un secret

L’exemple list-secret-version-ids suivant obtient une liste de toutes les versions d’un secret.

aws secretsmanager list-secret-version-ids \ --secret-id MyTestSecret

Sortie :

{ "Versions": [ { "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "VersionStages": [ "AWSPREVIOUS" ], "LastAccessedDate": 1523477145.713, "CreatedDate": 1523477145.713 }, { "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "VersionStages": [ "AWSCURRENT" ], "LastAccessedDate": 1523477145.713, "CreatedDate": 1523486221.391 }, { "CreatedDate": 1.51197446236E9, "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333;" } ], "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }

Pour plus d’informations, consultez Version dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous ListSecretVersionIdsà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserlist-secrets.

AWS CLI

Exemple 1 : pour répertorier les secrets de votre compte

L’exemple suivant list-secrets permet d’obtenir la liste des secrets de votre compte.

aws secretsmanager list-secrets

Sortie :

{ "SecretList": [ { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "LastChangedDate": 1523477145.729, "SecretVersionsToStages": { "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111": [ "AWSCURRENT" ] } }, { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:AnotherSecret-d4e5f6", "Name": "AnotherSecret", "LastChangedDate": 1523482025.685, "SecretVersionsToStages": { "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222": [ "AWSCURRENT" ] } } ] }

Pour plus d’informations, consultez Recherche de secrets dans le Guide de l’utilisateur Secrets Manager.

Exemple 2 : pour filtrer la liste des secrets de votre compte

L’exemple list-secrets suivant obtient une liste des secrets de votre compte dont le nom contient Test. Le filtrage par nom respecte la casse.

aws secretsmanager list-secrets \ --filter Key="name",Values="Test"

Sortie :

{ "SecretList": [ { "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "LastChangedDate": 1523477145.729, "SecretVersionsToStages": { "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111": [ "AWSCURRENT" ] } } ] }

Pour plus d’informations, consultez Recherche de secrets dans le Guide de l’utilisateur Secrets Manager.

Exemple 3 : pour répertorier les secrets de votre compte géré par un autre service

L’exemple list-secrets suivant renvoie les secrets de votre compte qui sont gérés par Amazon RDS.

aws secretsmanager list-secrets \ --filter Key="owning-service",Values="rds"

Sortie :

{ "SecretList": [ { "Name": "rds!cluster-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Tags": [ { "Value": "arn:aws:rds:us-west-2:123456789012:cluster:database-1", "Key": "aws:rds:primaryDBClusterArn" }, { "Value": "rds", "Key": "aws:secretsmanager:owningService" } ], "RotationRules": { "AutomaticallyAfterDays": 1 }, "LastChangedDate": 1673477781.275, "LastRotatedDate": 1673477781.26, "SecretVersionsToStages": { "a1b2c3d4-5678-90ab-cdef-EXAMPLEaaaaa": [ "AWSPREVIOUS" ], "a1b2c3d4-5678-90ab-cdef-EXAMPLEbbbbb": [ "AWSCURRENT", "AWSPENDING" ] }, "OwningService": "rds", "RotationEnabled": true, "CreatedDate": 1673467300.7, "LastAccessedDate": 1673395200.0, "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:rds!cluster-a1b2c3d4-5678-90ab-cdef-EXAMPLE11111-a1b2c3", "Description": "Secret associated with primary RDS DB cluster: arn:aws:rds:us-west-2:123456789012:cluster:database-1" } ] }

Pour plus d’informations, consultez Secrets gérés par d’autres services dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous ListSecretsà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserput-resource-policy.

AWS CLI

Pour ajouter une politique basée sur les ressources à un secret

L’exemple suivant put-resource-policy ajoute une politique d’autorisations à un secret, en vérifiant d’abord que la politique ne fournit pas un accès étendu au secret. La politique est lue à partir d’un fichier. Pour plus d'informations, consultez la section Chargement des paramètres de la AWS CLI à partir d'un fichier dans le Guide de l'utilisateur de la AWS CLI.

aws secretsmanager put-resource-policy \ --secret-id MyTestSecret \ --resource-policy file://mypolicy.json \ --block-public-policy

Contenu de mypolicy.json :

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:role/MyRole" }, "Action": "secretsmanager:GetSecretValue", "Resource": "*" } ] }

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }

Pour plus d’informations, consultez Attach a permissions policy to a secret dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous PutResourcePolicyà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserput-secret-value.

AWS CLI

Exemple 1 : pour stocker la nouvelle valeur d’un secret

L’exemple put-secret-value suivant crée une nouvelle version d’un secret avec deux paires clé-valeur.

aws secretsmanager put-secret-value \ --secret-id MyTestSecret \ --secret-string "{\"user\":\"diegor\",\"password\":\"EXAMPLE-PASSWORD\"}"

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-1a2b3c", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "VersionStages": [ "AWSCURRENT" ] }

Pour plus d’informations, consultez Modification d’un secret dans le Guide de l’utilisateur Secrets Manager.

Exemple 2 : pour stocker une nouvelle valeur d’un secret à partir des informations d’identification dans un fichier JSON

L’exemple suivant put-secret-value crée une nouvelle version d’un secret à partir des informations d’identification d’un fichier. Pour plus d'informations, consultez la section Chargement des paramètres de la AWS CLI à partir d'un fichier dans le Guide de l'utilisateur de la AWS CLI.

aws secretsmanager put-secret-value \ --secret-id MyTestSecret \ --secret-string file://mycreds.json

Contenu de mycreds.json :

{ "engine": "mysql", "username": "saanvis", "password": "EXAMPLE-PASSWORD", "host": "my-database-endpoint.us-west-2.rds.amazonaws.com", "dbname": "myDatabase", "port": "3306" }

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "VersionStages": [ "AWSCURRENT" ] }

Pour plus d’informations, consultez Modification d’un secret dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous PutSecretValueà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserremove-regions-from-replication.

AWS CLI

Pour supprimer un secret de réplique

L’exemple suivant remove-regions-from-replication supprime un secret répliqué dans eu-west-3. Pour supprimer un secret principal répliqué dans d’autres régions, supprimez d’abord les répliques, puis appelez delete-secret.

aws secretsmanager remove-regions-from-replication \ --secret-id MyTestSecret \ --remove-replica-regions eu-west-3

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-1a2b3c", "ReplicationStatus": [] }

Pour plus d’informations, consultez Suppression d’un secret répliqué dans le Guide de l’utilisateur Secrets Manager.

L'exemple de code suivant montre comment utiliserreplicate-secret-to-regions.

AWS CLI

Pour répliquer un secret dans une autre région

L’exemple suivant replicate-secret-to-regions réplique un secret vers la zone eu-west-3. La réplique est chiffrée à l'aide de la clé AWS géréeaws/secretsmanager.

aws secretsmanager replicate-secret-to-regions \ --secret-id MyTestSecret \ --add-replica-regions Region=eu-west-3

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-1a2b3c", "ReplicationStatus": [ { "Region": "eu-west-3", "KmsKeyId": "alias/aws/secretsmanager", "Status": "InProgress" } ] }

Pour plus d’informations, consultez Réplication d’un secret vers une autre région dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous ReplicateSecretToRegionsà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserrestore-secret.

AWS CLI

Pour restaurer un secret précédemment supprimé

L’exemple suivant restore-secret restaure un secret dont la suppression était précédemment planifiée.

aws secretsmanager restore-secret \ --secret-id MyTestSecret

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }

Pour plus d’informations, consultez Suppression d’un secret dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous RestoreSecretà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserrotate-secret.

AWS CLI

Exemple 1 : pour configurer et lancer la rotation automatique d’un secret

L’exemple rotate-secret suivant configure et lance la rotation automatique d’un secret. Secrets Manager réalise une rotation du secret immédiatement, puis toutes les huit heures dans un créneau de deux heures. La sortie affiche le VersionId de la nouvelle version du secret créée par rotation.

aws secretsmanager rotate-secret \ --secret-id MyTestDatabaseSecret \ --rotation-lambda-arn arn:aws:lambda:us-west-2:1234566789012:function:SecretsManagerTestRotationLambda \ --rotation-rules "{\"ScheduleExpression\": \"cron(0 8/8 * * ? *)\", \"Duration\": \"2h\"}"

Sortie :

{ "ARN": "aws:arn:secretsmanager:us-west-2:123456789012:secret:MyTestDatabaseSecret-a1b2c3", "Name": "MyTestDatabaseSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

Pour plus d’informations, consultez Rotation des secrets dans le Guide de l’utilisateur Secrets Manager.

Exemple 2 : pour configurer et lancer la rotation automatique à un intervalle de rotation

L’exemple rotate-secret suivant configure et lance la rotation automatique d’un secret. Secrets Manager réalise une rotation du secret immédiatement, puis tous les dix jours. La sortie affiche le VersionId de la nouvelle version du secret créée par rotation.

aws secretsmanager rotate-secret \ --secret-id MyTestDatabaseSecret \ --rotation-lambda-arn arn:aws:lambda:us-west-2:1234566789012:function:SecretsManagerTestRotationLambda \ --rotation-rules "{\"ScheduleExpression\": \"rate(10 days)\"}"

Sortie :

{ "ARN": "aws:arn:secretsmanager:us-west-2:123456789012:secret:MyTestDatabaseSecret-a1b2c3", "Name": "MyTestDatabaseSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

Pour plus d’informations, consultez Rotation des secrets dans le Guide de l’utilisateur Secrets Manager.

Exemple 3 : pour effectuer immédiatement la rotation d’un secret

L’exemple suivant rotate-secret lance une rotation immédiate. La sortie affiche le VersionId de la nouvelle version du secret créée par rotation. La rotation du secret doit déjà être configurée à l’heure actuelle.

aws secretsmanager rotate-secret \ --secret-id MyTestDatabaseSecret

Sortie :

{ "ARN": "aws:arn:secretsmanager:us-west-2:123456789012:secret:MyTestDatabaseSecret-a1b2c3", "Name": "MyTestDatabaseSecret", "VersionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

Pour plus d’informations, consultez Rotation des secrets dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous RotateSecretà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserstop-replication-to-replica.

AWS CLI

Pour promouvoir un secret de réplica en secret principal

L’exemple suivant stop-replication-to-replica supprime le lien entre un secret de réplique et le secret principal. Le secret répliqué est promu en secret principal dans la région de la réplique. Vous devez appeler stop-replication-to-replica depuis la région où se trouve la réplique.

aws secretsmanager stop-replication-to-replica \ --secret-id MyTestSecret

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3" }

Pour plus d’informations, consultez Promotion d’un secret répliqué dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous StopReplicationToReplicaà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utilisertag-resource.

AWS CLI

Exemple 1 : pour ajouter une balise à un secret

L’exemple suivant montre comment associer une identification à l’aide d’une syntaxe abrégée.

aws secretsmanager tag-resource \ --secret-id MyTestSecret \ --tags Key=FirstTag,Value=FirstValue

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Balisage de vos secrets dans le Guide de l’utilisateur Secrets Manager.

Exemple 2 : pour ajouter plusieurs balises à un secret

L’exemple suivant tag-resource associe deux balises clé-valeur à un secret.

aws secretsmanager tag-resource \ --secret-id MyTestSecret \ --tags '[{"Key": "FirstTag", "Value": "FirstValue"}, {"Key": "SecondTag", "Value": "SecondValue"}]'

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Balisage de vos secrets dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous TagResourceà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliseruntag-resource.

AWS CLI

Pour supprimer des balises d’un secret

L’exemple suivant untag-resource montre comment supprimer deux identifications d’un secret. Pour chaque balise, la clé et la valeur sont toutes les deux supprimées.

aws secretsmanager untag-resource \ --secret-id MyTestSecret \ --tag-keys '[ "FirstTag", "SecondTag"]'

Cette commande ne produit aucune sortie.

Pour plus d’informations, consultez Balisage de vos secrets dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous UntagResourceà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserupdate-secret-version-stage.

AWS CLI

Exemple 1 : pour rétablir la version précédente d’un secret

L'update-secret-version-stageexemple suivant déplace l'étiquette de mise en scène AWS CURRENT vers la version précédente d'un secret, ce qui rétablit le secret dans sa version précédente. Pour rechercher l’ID de la version précédente, utilisez list-secret-version-ids. Dans cet exemple, la version portant l'étiquette AWS CURRENT est a1b2c3d4-5678-90ab-cdef- et la version portant l'étiquette PREVIOUS est a1b2c3d4-5678-90ab-cdef-. EXAMPLE11111 AWS EXAMPLE22222 Dans cet exemple, vous déplacez l'étiquette AWS CURRENT de la version 11111 à la version 22222. L'étiquette AWS ACTUELLE étant supprimée d'une version, l'étiquette AWS PRÉCÉDENTE est update-secret-version-stage automatiquement déplacée vers cette version (11111). L'effet est que les versions AWS ACTUELLE et AWS PRÉCÉDENTE sont échangées.

aws secretsmanager update-secret-version-stage \ --secret-id MyTestSecret \ --version-stage AWSCURRENT \ --move-to-version-id a1b2c3d4-5678-90ab-cdef-EXAMPLE22222 \ --remove-from-version-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }

Pour plus d’informations, consultez Version dans le Guide de l’utilisateur Secrets Manager.

Exemple 2 : pour ajouter une étiquette de transit à une version d’un secret

L’exemple update-secret-version-stage suivant ajoute une étiquette de transit à une version d’un secret. Vous pouvez voir le résultat en exécutant list-secret-version-ids et en affichant le champ de réponse VersionStages de la version concernée.

aws secretsmanager update-secret-version-stage \ --secret-id MyTestSecret \ --version-stage STAGINGLABEL1 \ --move-to-version-id EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }

Pour plus d’informations, consultez Version dans le Guide de l’utilisateur Secrets Manager.

Exemple 3 : pour supprimer une étiquette de transit attachée à une version d’un secret

L’exemple update-secret-version-stage suivant supprime une étiquette de transit attachée à une version d’un secret. Vous pouvez voir le résultat en exécutant list-secret-version-ids et en affichant le champ de réponse VersionStages de la version concernée.

aws secretsmanager update-secret-version-stage \ --secret-id MyTestSecret \ --version-stage STAGINGLABEL1 \ --remove-from-version-id a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }

Pour plus d’informations, consultez Version dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous UpdateSecretVersionStageà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliserupdate-secret.

AWS CLI

Exemple 1 : pour mettre à jour la description d’un secret

L’exemple suivant update-secret met à jour la description d’un secret.

aws secretsmanager update-secret \ --secret-id MyTestSecret \ --description "This is a new description for the secret."

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }

Pour plus d’informations, consultez Modification d’un secret dans le Guide de l’utilisateur Secrets Manager.

Exemple 2 : pour mettre à jour la clé de chiffrement associée à un secret

L’exemple suivant update-secret met à jour la clé KMS utilisée pour chiffrer la valeur secrète. Les clés KMS doivent être situées dans la même région que le secret.

aws secretsmanager update-secret \ --secret-id MyTestSecret \ --kms-key-id arn:aws:kms:us-west-2:123456789012:key/EXAMPLE1-90ab-cdef-fedc-ba987EXAMPLE

Sortie :

{ "ARN": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyTestSecret-a1b2c3", "Name": "MyTestSecret" }

Pour plus d’informations, consultez Modification d’un secret dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous UpdateSecretà la section Référence des AWS CLI commandes.

L'exemple de code suivant montre comment utiliservalidate-resource-policy.

AWS CLI

Pour valider une stratégie de ressources

L’exemple validate-resource-policy suivant vérifie qu’une stratégie de ressources ne fournit pas d’accès étendu à un secret. La stratégie est lue à partir d’un fichier sur disque. Pour plus d'informations, consultez la section Chargement des paramètres de la AWS CLI à partir d'un fichier dans le Guide de l'utilisateur de la AWS CLI.

aws secretsmanager validate-resource-policy \ --resource-policy file://mypolicy.json

Contenu de mypolicy.json :

{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:role/MyRole" }, "Action": "secretsmanager:GetSecretValue", "Resource": "*" } ] }

Sortie :

{ "PolicyValidationPassed": true, "ValidationErrors": [] }

Pour plus d’informations, consultez Référence des autorisations pour Secrets Manager dans le Guide de l’utilisateur Secrets Manager.

  • Pour plus de détails sur l'API, reportez-vous ValidateResourcePolicyà la section Référence des AWS CLI commandes.