Secrets Manager Manager-Beispiele mit AWS CLI - AWS Command Line Interface

Diese Dokumentation bezieht sich AWS CLI nur auf Version 1 von. Dokumentation zu Version 2 von finden Sie im Benutzerhandbuch für Version 2. AWS CLI

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.

Secrets Manager Manager-Beispiele mit AWS CLI

Die folgenden Codebeispiele zeigen Ihnen, wie Sie mithilfe von Secrets Manager Aktionen ausführen und allgemeine Szenarien implementieren. AWS Command Line Interface

Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Während Aktionen Ihnen zeigen, wie Sie einzelne Servicefunktionen aufrufen, können Sie Aktionen im Kontext der zugehörigen Szenarien und serviceübergreifenden Beispiele sehen.

Szenarien sind Codebeispiele, die Ihnen zeigen, wie Sie eine bestimmte Aufgabe ausführen können, indem Sie mehrere Funktionen innerhalb desselben Services aufrufen.

Jedes Beispiel enthält einen Link zu GitHub, wo Sie Anweisungen zum Einrichten und Ausführen des Codes im Kontext finden.

Themen

Aktionen

Das folgende Codebeispiel zeigt die Verwendungbatch-get-secret-value.

AWS CLI

Beispiel 1: Um den geheimen Wert für eine Gruppe von Geheimnissen abzurufen, die nach Namen aufgelistet sind

Im folgenden batch-get-secret-value Beispiel wird der geheime Wert Secrets für drei Geheimnisse abgerufen.

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

Ausgabe:

{ "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": [] }

Weitere Informationen finden Sie unter Abrufen einer Gruppe von Geheimnissen in einem Batch im AWS Secrets Manager Manager-Benutzerhandbuch.

Beispiel 2: Um den geheimen Wert für eine Gruppe von Geheimnissen abzurufen, die durch einen Filter ausgewählt wurden

Im folgenden batch-get-secret-value Beispiel wird der geheime Wert in Ihrem Konto abgerufen, der MySecret im Namen enthalten ist. Bei dem Filtern nach Namen muss die Groß- und Kleinschreibung beachtet werden.

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

Ausgabe:

{ "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": [] }

Weitere Informationen finden Sie unter Abrufen einer Gruppe von Geheimnissen in einem Batch im AWS Secrets Manager Manager-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungcancel-rotate-secret.

AWS CLI

Um die automatische Rotation für ein Geheimnis auszuschalten

Im folgenden cancel-rotate-secret Beispiel wird die automatische Rotation für ein Geheimnis deaktiviert. Rufen Sie an, um die Rotation fortzusetzenrotate-secret.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Rotation eines Secrets im Secrets Manager-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungcreate-secret.

AWS CLI

Beispiel 1: Um ein Geheimnis zu erstellen

Das folgende create-secret-Beispiel erstellt ein Secret mit zwei Schlüssel-/Wert-Paaren.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Create a Secret im Secrets Manager Manager-Benutzerhandbuch.

Beispiel 2: So erstellen Sie ein Geheimnis aus Anmeldeinformationen in einer JSON-Datei

Das folgende create-secret-Beispiel erstellt ein Secret anhand von Anmeldeinformationen in einer Datei. Weitere Informationen finden Sie unter AWS CLI-Parameter aus einer Datei laden im AWS CLI-Benutzerhandbuch.

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

Inhalt von mycreds.json:

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

Ausgabe:

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

Weitere Informationen finden Sie unter Create a Secret im Secrets Manager Manager-Benutzerhandbuch.

  • Einzelheiten zur API finden Sie CreateSecretunter AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungdelete-resource-policy.

AWS CLI

Um die ressourcenbasierte Richtlinie zu löschen, die einem Geheimnis zugeordnet ist

Im folgenden delete-resource-policy-Beispiel wird die an ein Secret angefügte ressourcenbasierte Richtlinie gelöscht.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Authentifizierung und Zugriffskontrolle im Secrets Manager Manager-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungdelete-secret.

AWS CLI

Beispiel 1: Um ein Geheimnis zu löschen

Im folgenden delete-secret-Beispiel wird ein Secret gelöscht. Sie können das Geheimnis restore-secret bis zu dem Datum und der Uhrzeit im DeletionDate Antwortfeld wiederherstellen. Um ein Secret zu löschen, das in andere Regionen repliziert wird, entfernen Sie zuerst die zugehörigen Replikate mit remove-regions-from-replication und rufen Sie dann delete-secret auf.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Löschen eines Geheimnisses im Secrets Manager-Benutzerhandbuch.

Beispiel 2: Um ein Geheimnis sofort zu löschen

Das folgende delete-secret-Beispiel löscht ein Secret sofort und ohne ein Wiederherstellungsfenster. Sie können dieses Secret nicht wiederherstellen.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Löschen eines Geheimnisses im Secrets Manager-Benutzerhandbuch.

  • Einzelheiten zur API finden Sie DeleteSecretunter AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungdescribe-secret.

AWS CLI

Um die Details eines Geheimnisses abzurufen

Das folgende describe-secret Beispiel zeigt die Details eines Geheimnisses.

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

Ausgabe:

{ "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" } ] }

Weitere Informationen finden Sie unter Secret im Secrets Manager-Benutzerhandbuch.

  • Einzelheiten zur API finden Sie DescribeSecretunter AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungget-random-password.

AWS CLI

Um ein zufälliges Passwort zu generieren

Im folgenden get-random-password Beispiel wird ein zufälliges Passwort mit einer Länge von 20 Zeichen generiert, das mindestens einen Großbuchstaben, einen Kleinbuchstaben, eine Zahl und ein Satzzeichen enthält.

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

Ausgabe:

{ "RandomPassword": "EXAMPLE-PASSWORD" }

Weitere Informationen finden Sie unter Create and manage Secrets im Secrets Manager Manager-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungget-resource-policy.

AWS CLI

Um die ressourcenbasierte Richtlinie abzurufen, die einem Geheimnis zugeordnet ist

Im folgenden get-resource-policy-Beispiel wird die an ein Secret angefügte ressourcenbasierte Richtlinie abgerufen.

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

Ausgabe:

{ "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}" }

Weitere Informationen finden Sie unter Authentifizierung und Zugriffskontrolle im Secrets Manager Manager-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungget-secret-value.

AWS CLI

Beispiel 1: Um den verschlüsselten Geheimwert eines Geheimnisses abzurufen

Im folgenden get-secret-value-Beispiel wird der aktuelle Secret-Wert abgerufen.

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

Ausgabe:

{ "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 }

Weitere Informationen finden Sie unter Retrieve a Secret im Secrets Manager Manager-Benutzerhandbuch.

Beispiel 2: Um den vorherigen geheimen Wert abzurufen

Im folgenden get-secret-value Beispiel wird der vorherige geheime Wert abgerufen. :

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

Ausgabe:

{ "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 }

Weitere Informationen finden Sie unter Retrieve a Secret im Secrets Manager Manager-Benutzerhandbuch.

  • Einzelheiten zur API finden Sie GetSecretValueunter AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendunglist-secret-version-ids.

AWS CLI

Um alle geheimen Versionen aufzulisten, die einem Geheimnis zugeordnet sind

Im folgenden list-secret-version-ids Beispiel wird eine Liste aller Versionen eines Secrets abgerufen.

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

Ausgabe:

{ "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" }

Weitere Informationen finden Sie unter Version im Secrets Manager Manager-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendunglist-secrets.

AWS CLI

Beispiel 1: Um die Geheimnisse in Ihrem Konto aufzulisten

Das folgende list-secrets-Beispiel erhält eine Liste der Secrets in Ihrem Konto.

aws secretsmanager list-secrets

Ausgabe:

{ "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" ] } } ] }

Weitere Informationen finden Sie unter Find a Secret im Secrets Manager Manager-Benutzerhandbuch.

Beispiel 2: So filtern Sie die Liste der Geheimnisse in Ihrem Konto

Im folgenden list-secrets Beispiel wird eine Liste der Geheimnisse in Ihrem Konto abgerufen, die Test im Namen enthalten sind. Bei dem Filtern nach Namen muss die Groß- und Kleinschreibung beachtet werden.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Find a Secret im Secrets Manager Manager-Benutzerhandbuch.

Beispiel 3: Um die Geheimnisse in Ihrem Konto aufzulisten, die von einem anderen Dienst verwaltet werden

Das folgende list-secrets Beispiel gibt die Geheimnisse in Ihrem Konto zurück, die von Amazon RDS verwaltet werden.

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

Ausgabe:

{ "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" } ] }

Weitere Informationen finden Sie unter Von anderen Diensten verwaltete Geheimnisse im Secrets Manager-Benutzerhandbuch.

  • Einzelheiten zur API finden Sie ListSecretsunter AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungput-resource-policy.

AWS CLI

Um einem Geheimnis eine ressourcenbasierte Richtlinie hinzuzufügen

Im folgenden put-resource-policy-Beispiel wird einem Secret eine Berechtigungsrichtlinie hinzugefügt, wobei zunächst geprüft wird, ob die Richtlinie keinen umfassenden Zugriff auf das Secret gewährt. Die Richtlinie wird aus einer Datei gelesen. Weitere Informationen finden Sie unter AWS CLI-Parameter aus einer Datei laden im AWS CLI-Benutzerhandbuch.

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

Inhalt von mypolicy.json:

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

Ausgabe:

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

Weitere Informationen finden Sie unter Anhängen einer Berechtigungsrichtlinie an ein Geheimnis im Secrets Manager-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungput-secret-value.

AWS CLI

Beispiel 1: Um einen neuen geheimen Wert in einem Geheimnis zu speichern

Das folgende put-secret-value Beispiel erstellt eine neue Version eines Geheimnisses mit zwei Schlüssel-Wert-Paaren.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Ändern eines Geheimnisses im Secrets Manager-Benutzerhandbuch.

Beispiel 2: Um einen neuen geheimen Wert aus Anmeldeinformationen in einer JSON-Datei zu speichern

Das folgende put-secret-value-Beispiel erstellt eine neue Version eines Secrets anhand von Anmeldeinformationen in einer Datei. Weitere Informationen finden Sie unter AWS CLI-Parameter aus einer Datei laden im AWS CLI-Benutzerhandbuch.

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

Inhalt von mycreds.json:

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

Ausgabe:

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

Weitere Informationen finden Sie unter Ändern eines Geheimnisses im Secrets Manager-Benutzerhandbuch.

  • Einzelheiten zur API finden Sie PutSecretValueunter AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungremove-regions-from-replication.

AWS CLI

Um ein geheimes Replikat zu löschen

Im folgenden remove-regions-from-replication-Beispiel wird ein Replikat-Secret in eu-west-3 gelöscht. Um ein primäres Secret zu löschen, das in andere Regionen repliziert wird, entfernen Sie zuerst die Replikate und rufen Sie dann delete-secret auf.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Löschen eines geheimen Replikats im Secrets Manager-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungreplicate-secret-to-regions.

AWS CLI

Um ein Geheimnis in eine andere Region zu replizieren

Im folgenden replicate-secret-to-regions-Beispiel wird ein Secret in eu-west-3 repliziert. Das Replikat ist mit dem AWS verwalteten Schlüssel verschlüsselt. aws/secretsmanager

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

Ausgabe:

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

Weitere Informationen finden Sie unter Ein Geheimnis in eine andere Region replizieren im Secrets Manager Manager-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungrestore-secret.

AWS CLI

Um ein zuvor gelöschtes Geheimnis wiederherzustellen

Das folgende restore-secret-Beispiel stellt ein Secret wieder her, dessen Löschung zuvor geplant war.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Löschen eines Geheimnisses im Secrets Manager-Benutzerhandbuch.

  • Einzelheiten zur API finden Sie RestoreSecretunter AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungrotate-secret.

AWS CLI

Beispiel 1: Um die automatische Rotation für ein Geheimnis zu konfigurieren und zu starten

Im folgenden rotate-secret Beispiel wird die automatische Rotation für ein Geheimnis konfiguriert und gestartet. Secrets Manager wechselt das Geheimnis einmal sofort und dann alle acht Stunden in einem zweistündigen Fenster. Die Ausgabe zeigt die VersionId neue geheime Version, die durch Rotation erstellt wurde.

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\"}"

Ausgabe:

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

Weitere Informationen finden Sie unter Rotation von Geheimnissen im Secrets Manager Manager-Benutzerhandbuch.

Beispiel 2: Um die automatische Rotation in einem Rotationsintervall zu konfigurieren und zu starten

Im folgenden rotate-secret Beispiel wird die automatische Rotation für ein Geheimnis konfiguriert und gestartet. Secrets Manager wechselt das Secret einmal sofort und dann alle 10 Tage. Die Ausgabe zeigt die VersionId neue geheime Version, die durch Rotation erstellt wurde.

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)\"}"

Ausgabe:

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

Weitere Informationen finden Sie unter Rotation von Geheimnissen im Secrets Manager Manager-Benutzerhandbuch.

Beispiel 3: Um ein Geheimnis sofort zu rotieren

Im folgenden rotate-secret-Beispiel wird eine sofortige Rotation gestartet. Die Ausgabe zeigt die VersionId der neuen geheimen Version, die durch Rotation erstellt wurde. Für das Secret muss die Rotation bereits konfiguriert sein.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Rotation von Geheimnissen im Secrets Manager Manager-Benutzerhandbuch.

  • Einzelheiten zur API finden Sie RotateSecretin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungstop-replication-to-replica.

AWS CLI

Um ein geheimes Replikat zu einem Primärgeheimnis heraufzustufen

Im folgenden stop-replication-to-replica-Beispiel wird die Verknüpfung zwischen einem Replikat-Secret und dem primären entfernt. Das Replikat-Secret wird in der Replikat-Region zum primären Secret heraufgestuft. Sie müssen stop-replication-to-replica innerhalb der Replikatregion aufrufen.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Promote a Replica Secret im Secrets Manager-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungtag-resource.

AWS CLI

Beispiel 1: Um einem Geheimnis ein Tag hinzuzufügen

Im folgenden -Beispiel wird gezeigt, wie Sie ein Tag mit Abkürzungssyntax anfügen.

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

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Kennzeichnen Sie Ihre Geheimnisse im Secrets Manager Manager-Benutzerhandbuch.

Beispiel 2: So fügen Sie einem Geheimnis mehrere Tags hinzu

Das folgende tag-resource-Beispiel fügt zwei Schlüssel-/Wert-Tags an ein Secret an.

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

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Kennzeichnen von Geheimnissen im Secrets Manager Manager-Benutzerhandbuch.

  • Einzelheiten zur API finden Sie TagResourcein der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendunguntag-resource.

AWS CLI

Um Tags aus einem Geheimnis zu entfernen

Im folgenden untag-resource-Beispiel werden zwei Tags aus einem Secret entfernt. Für jedes Tag werden sowohl der Schlüssel als auch der Wert entfernt.

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

Mit diesem Befehl wird keine Ausgabe zurückgegeben.

Weitere Informationen finden Sie unter Kennzeichnen von Geheimnissen im Secrets Manager Manager-Benutzerhandbuch.

  • Einzelheiten zur API finden Sie UntagResourcein der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungupdate-secret-version-stage.

AWS CLI

Beispiel 1: Um ein Geheimnis auf die vorherige Version zurückzusetzen

Im folgenden update-secret-version-stage Beispiel wird das Staging-Label AWS CURRENT auf die vorherige Version eines Secrets verschoben, wodurch das Secret auf die vorherige Version zurückgesetzt wird. Um die ID für die vorherige Version zu finden, verwenden Sie. list-secret-version-ids In diesem Beispiel ist die Version mit der Bezeichnung AWS AKTUELL a1B2C3D4-5678-90AB-CDEF-Example11111 und die Version mit der Bezeichnung PREVIOUS ist a1B2C3D4-5678-90AB-CDEF-EXAMPLE22222. AWS In diesem Beispiel verschieben Sie AWS das Label CURRENT von Version 11111 nach 22222. Da die Bezeichnung AWS CURRENT aus einer Version entfernt wird, wird die Bezeichnung AWS PREVIOUS update-secret-version-stage automatisch in diese Version (11111) verschoben. Dies hat zur Folge, dass die AWS AKTUELLE und die AWS VORHERIGE Version vertauscht werden.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Version im Secrets Manager Manager-Benutzerhandbuch.

Beispiel 2: So fügen Sie ein Staging-Label hinzu, das an eine Version eines Secrets angehängt ist

Im folgenden update-secret-version-stage Beispiel wird einer Version eines Secrets ein Staging-Label hinzugefügt. Sie können die Ergebnisse überprüfen, indem Sie das VersionStages Antwortfeld für die betroffene Version ausführen list-secret-version-ids und anzeigen.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Version im Secrets Manager Manager-Benutzerhandbuch.

Beispiel 3: Um ein Staging-Label zu löschen, das an eine Version eines Secrets angehängt ist

Im folgenden update-secret-version-stage Beispiel wird ein Staging-Label gelöscht, das an eine Version eines Secrets angehängt ist. Sie können die Ergebnisse überprüfen, indem Sie das VersionStages Antwortfeld für die betroffene Version ausführen list-secret-version-ids und anzeigen.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Version im Secrets Manager Manager-Benutzerhandbuch.

Das folgende Codebeispiel zeigt die Verwendungupdate-secret.

AWS CLI

Beispiel 1: Um die Beschreibung eines Geheimnisses zu aktualisieren

Im folgenden update-secret-Beispiel wird die Beschreibung eines Secrets aktualisiert.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Ändern eines Geheimnisses im Secrets Manager-Benutzerhandbuch.

Beispiel 2: So aktualisieren Sie den Verschlüsselungsschlüssel, der einem Geheimnis zugeordnet ist

Im folgenden update-secret-Beispiel wird der KMS-Schlüssel aktualisiert, der zum Verschlüsseln des Secret-Werts verwendet wird. Der KMS-Schlüssel muss sich in derselben Region wie das Secret befinden.

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

Ausgabe:

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

Weitere Informationen finden Sie unter Ändern eines Geheimnisses im Secrets Manager-Benutzerhandbuch.

  • Einzelheiten zur API finden Sie UpdateSecretunter AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungvalidate-resource-policy.

AWS CLI

Um eine Ressourcenrichtlinie zu validieren

Im folgenden validate-resource-policy Beispiel wird überprüft, ob eine Ressourcenrichtlinie keinen umfassenden Zugriff auf ein Geheimnis gewährt. Die Richtlinie wird aus einer Datei auf der Festplatte gelesen. Weitere Informationen finden Sie unter AWS CLI-Parameter aus einer Datei laden im AWS CLI-Benutzerhandbuch.

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

Inhalt von mypolicy.json:

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

Ausgabe:

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

Weitere Informationen finden Sie unter Berechtigungsreferenz für Secrets Manager im Secrets Manager Manager-Benutzerhandbuch.