Geheime Verschlüsselung und Entschlüsselung in AWS Secrets Manager - AWS Secrets Manager

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.

Geheime Verschlüsselung und Entschlüsselung in AWS Secrets Manager

Secrets Manager verwendet eine Umschlagverschlüsselung mit AWS KMS Schlüsseln und Datenschlüsseln, um jeden geheimen Wert zu schützen. Immer wenn sich der geheime Wert in einem Geheimnis ändert, fordert Secrets Manager einen neuen Datenschlüssel von AWS KMS an, um ihn zu schützen. Der Datenschlüssel wird unter einem KMS-Schlüssel verschlüsselt und in den Metadaten des Secrets gespeichert. Um das Geheimnis zu entschlüsseln, entschlüsselt Secrets Manager zuerst den verschlüsselten Datenschlüssel mit dem KMS-Schlüssel in. AWS KMS

Secrets Manager verwendet den KMS-Schlüssel nicht zum direkten Verschlüsseln des Secret-Werts. Stattdessen verwendet der Service den KMS-Schlüssel zum Generieren und Verschlüsseln eines symmetrischen 256-Bit Advanced Encryption Standard (AES)-Datenschlüssels und den Datenschlüssel zum Verschlüsseln des Secret-Werts. Secrets Manager verwendet den Klartext-Datenschlüssel, um den geheimen Wert außerhalb von zu verschlüsseln AWS KMS, und entfernt ihn dann aus dem Speicher. Die verschlüsselte Kopie des Datenschlüssels wird in den Metadaten des Geheimnisses gespeichert.

Auswahl eines Schlüssels AWS KMS

Wenn Sie ein Geheimnis erstellen, können Sie einen beliebigen vom Kunden verwalteten symmetrischen Verschlüsselungsschlüssel in der Region AWS-Konto und wählen oder den Von AWS verwalteter Schlüssel for Secrets Manager (aws/secretsmanager) verwenden. Wenn Sie das auswählen Von AWS verwalteter Schlüssel aws/secretsmanager und es noch nicht existiert, erstellt Secrets Manager es und ordnet es dem Geheimnis zu. Sie können entweder denselben KMS-Schlüssel oder unterschiedliche KMS-Schlüssel für jedes Secret in Ihrem Konto verwenden. Möglicherweise möchten Sie verschiedene KMS-Schlüssel verwenden, um benutzerdefinierte Berechtigungen für die Schlüssel für eine Gruppe von Secrets festzulegen oder wenn Sie bestimmte Vorgänge für diese Schlüssel überprüfen möchten. Secrets Manager unterstützt nur symmetrische KMS-Verschlüsselungsschlüssel. Wenn Sie einen KMS-Schlüssel in einem externen Schlüsselspeicher verwenden, können kryptografische Operationen mit dem KMS-Schlüssel länger dauern und weniger zuverlässig und dauerhaft sein, da die Anforderung außerhalb von AWS gesendet werden muss.

Informationen zum Ändern des Verschlüsselungsschlüssels für ein Secret finden Sie unter Ändern Sie den Verschlüsselungsschlüssel für ein AWS Secrets Manager Geheimnis.

Wenn Sie den Verschlüsselungsschlüssel ändern, verschlüsselt Secrets Manager AWSCURRENTAWSPENDING, und AWSPREVIOUS Versionen erneut mit dem neuen Schlüssel. Um zu verhindern, dass Sie aus dem Geheimnis ausgesperrt werden, speichert Secrets Manager alle vorhandenen Versionen mit dem vorherigen Schlüssel verschlüsselt. Das bedeutet AWSCURRENTAWSPENDING, dass Sie AWSPREVIOUS Versionen mit dem vorherigen Schlüssel oder dem neuen Schlüssel entschlüsseln können.

Damit es nur mit dem neuen Verschlüsselungsschlüssel entschlüsselt werden AWSCURRENT kann, erstellen Sie eine neue Version des Geheimnisses mit dem neuen Schlüssel. Um dann die AWSCURRENT geheime Version entschlüsseln zu können, benötigen Sie die Erlaubnis für den neuen Schlüssel.

Sie können den Zugriff auf den verweigern Von AWS verwalteter Schlüssel aws/secretsmanager und verlangen, dass Geheimnisse mit einem vom Kunden verwalteten Schlüssel verschlüsselt werden. Weitere Informationen finden Sie unter Beispiel: Verweigern Sie einen bestimmten AWS KMS Schlüssel zur Verschlüsselung von Geheimnissen.

Um den KMS-Schlüssel zu finden, der einem Geheimnis zugeordnet ist, schauen Sie sich das Geheimnis in der Konsole an oder rufen Sie ListSecretsoder an DescribeSecret. Wenn das Geheimnis mit dem Von AWS verwalteter Schlüssel for Secrets Manager (aws/secretsmanager) verknüpft ist, geben diese Operationen keinen KMS-Schlüsselbezeichner zurück.

Was ist verschlüsselt?

Secrets Manager verschlüsselt den geheimen Wert, aber Folgendes wird nicht verschlüsselt:

  • Name und Beschreibung des Secrets

  • Rotationseinstellungen

  • ARN des mit dem Secret verknüpften KMS-Schlüssels

  • Alle angehängten AWS Tags

Ver- und Entschlüsselungsprozesse

Um den Secret-Wert in einem Secret zu verschlüsseln, geht Secrets Manager wie folgt vor.

  1. Secrets Manager ruft den AWS KMS GenerateDataKeyVorgang mit der ID des KMS-Schlüssels für das Geheimnis und einer Anforderung für einen symmetrischen 256-Bit-AES-Schlüssel auf. AWS KMS gibt einen Klartext-Datenschlüssel und eine Kopie dieses Datenschlüssels zurück, der unter dem KMS-Schlüssel verschlüsselt wurde.

  2. Secrets Manager verwendet den Klartext-Datenschlüssel und den Advanced Encryption Standard (AES) -Algorithmus, um den geheimen Wert außerhalb von zu verschlüsseln. AWS KMS Der Klartextschlüssel wird direkt nach der Verwendung aus dem Speicher gelöscht.

  3. Secrets Manager speichert den verschlüsselten Datenschlüssel in den Metadaten des Secrets, sodass er jederzeit zum Entschlüsseln des Secret-Werts verfügbar ist. Keine der Secrets Manager APIs gibt jedoch das verschlüsselte Secret oder den verschlüsselten Datenschlüssel zurück.

So wird ein verschlüsselter Geheimniswert entschlüsselt:

  1. Secrets Manager ruft den AWS KMS Decrypt-Vorgang auf und übergibt den verschlüsselten Datenschlüssel.

  2. AWS KMS verwendet den KMS-Schlüssel für das Geheimnis, um den Datenschlüssel zu entschlüsseln. gibt den Datenschlüssel in Klartext zurück.

  3. Secrets Manager entschlüsselt den Secret-Wert mithilfe des Nur-Text-Datenschlüssels. Anschließend entfernt er den Datenschlüssel so schnell wie möglich aus dem Speicher.

Berechtigungen für den KMS-Schlüssel

Wenn Secrets Manager einen KMS-Schlüssel in kryptografischen Operationen verwendet, handelt er im Namen des Benutzers, der auf den Secret-Wert zugreift oder diesen aktualisiert. Sie können Berechtigungen in einer IAM-Richtlinie oder einer Schlüsselrichtlinie gewähren. Für die folgenden Secrets Manager Manager-Operationen sind AWS KMS Berechtigungen erforderlich.

Damit der KMS-Schlüssel nur für Anfragen verwendet werden kann, die ihren Ursprung in Secrets Manager haben, können Sie in der Berechtigungsrichtlinie den ViaService Bedingungsschlüssel kms: mit dem secretsmanager.<Region>.amazonaws.com Wert verwenden.

Sie können auch die Schlüssel oder Werte im Verschlüsselungskontext als Bedingung für die Verwendung des KMS-Schlüssels für kryptografische Operationen verwenden. Verwenden Sie beispielsweise einen Zeichenfolgen-Bedingungsoperator in einem IAM- oder Schlüsselrichtliniendokument oder eine Erteilungseinschränkung in einer Erteilung. Die Propagierung von Berechtigungen für KMS-Schlüssel kann bis zu fünf Minuten dauern. Weitere Informationen finden Sie unter CreateGrant.

Wie Secrets Manager den KMS-Schlüssel verwendet

Secrets Manager ruft die folgenden AWS KMS Operationen mit Ihrem KMS-Schlüssel auf.

GenerateDataKey

Secrets Manager ruft die AWS KMS GenerateDataKeyOperation als Antwort auf die folgenden Secrets Manager Manager-Operationen auf.

  • CreateSecret— Wenn das neue Geheimnis einen geheimen Wert enthält, fordert Secrets Manager einen neuen Datenschlüssel an, um es zu verschlüsseln.

  • PutSecretValue— Secrets Manager fordert einen neuen Datenschlüssel an, um den angegebenen geheimen Wert zu verschlüsseln.

  • ReplicateSecretToRegions— Um das replizierte Geheimnis zu verschlüsseln, fordert Secrets Manager einen Datenschlüssel für den KMS-Schlüssel in der Replikatregion an.

  • UpdateSecret— Wenn Sie den geheimen Wert oder den KMS-Schlüssel ändern, fordert Secrets Manager einen neuen Datenschlüssel an, um den neuen geheimen Wert zu verschlüsseln.

Die RotateSecretOperation wird nicht aufgerufenGenerateDataKey, da sie den geheimen Wert nicht ändert. Wenn RotateSecret jedoch eine Lambda-Rotationsfunktion aufruft, die den Secret-Wert ändert, löst sein Aufruf der Operation PutSecretValue eine GenerateDataKey-Anforderung aus.

Decrypt

Secrets Manager ruft die Operation Decrypt als Reaktion auf die folgenden Secrets-Manager-Operationen auf.

  • GetSecretValueund BatchGetSecretValue— Secrets Manager entschlüsselt den geheimen Wert, bevor er an den Aufrufer zurückgegeben wird. Um einen verschlüsselten geheimen Wert zu entschlüsseln, ruft Secrets Manager die Operation AWS KMS Decrypt auf, um den verschlüsselten Datenschlüssel im Secret zu entschlüsseln. Dann wird der verschlüsselte Geheimniswert mithilfe des Klartext-Datenschlüssels entschlüsselt. Bei Batch-Befehlen kann Secrets Manager den entschlüsselten Schlüssel wiederverwenden, sodass nicht alle Aufrufe zu einer Decrypt-Anforderung führen.

  • PutSecretValueund UpdateSecret— Die meisten PutSecretValue UpdateSecret AND-Anfragen lösen keine Operation aus. Decrypt Wenn jedoch eine PutSecretValue- oder UpdateSecret-Anforderung versucht, den Secret-Wert in einer vorhandenen Version eines Secrets zu ändern, entschlüsselt Secrets Manager den vorhandenen Secret-Wert und vergleicht ihn mit dem Secret-Wert in der Anforderung, um zu bestätigen, dass beide Werte identisch sind. Somit wird die Idempotenz von Secrets-Manager-Operationen sichergestellt. Um einen verschlüsselten geheimen Wert zu entschlüsseln, ruft Secrets Manager die Operation AWS KMS Decrypt auf, um den verschlüsselten Datenschlüssel im Secret zu entschlüsseln. Dann wird der verschlüsselte Geheimniswert mithilfe des Klartext-Datenschlüssels entschlüsselt.

  • ReplicateSecretToRegions— Secrets Manager entschlüsselt zuerst den geheimen Wert in der primären Region, bevor er den geheimen Wert mit dem KMS-Schlüssel in der Replikatregion erneut verschlüsselt.

Encrypt

Secrets Manager ruft die Verschlüsselungsoperation als Reaktion auf die folgenden Secrets-Manager-Operationen auf:

  • UpdateSecret— Wenn Sie den KMS-Schlüssel ändern, verschlüsselt Secrets Manager den Datenschlüssel, der die AWSPENDING geheimen VersionenAWSCURRENT, und schütztAWSPREVIOUS, erneut mit dem neuen Schlüssel.

  • ReplicateSecretToRegions— Secrets Manager verschlüsselt den Datenschlüssel während der Replikation erneut mithilfe des KMS-Schlüssels in der Replikatregion.

DescribeKey

Secrets Manager ruft den DescribeKeyVorgang auf, um zu bestimmen, ob der KMS-Schlüssel aufgeführt werden soll, wenn Sie ein Geheimnis in der Secrets Manager-Konsole erstellen oder bearbeiten.

Validieren des Zugriffs auf den KMS-Schlüssel

Wenn Sie den einem Secret zugeordneten KMS-Schlüssel einrichten oder ändern, ruft Secrets Manager die Operationen GenerateDataKey und Decrypt mit dem angegebenen KMS-Schlüssel auf. Damit wird bestätigt, dass der Aufrufer über die Berechtigung zur Verwendung des KMS-Schlüssels für diese Operation verfügt. Secrets Manager verwirft die Ergebnisse dieser Operationen. Sie werden nicht für Entschlüsselungsoperationen verwendet.

Sie können diese Validierungsaufrufe daran erkennen, dass der SecretVersionIdWert des -Verschlüsselungskontexts in diesen Anforderungen RequestToValidateKeyAccess ist.

Anmerkung

Bisher enthielten Secrets-Manager-Validierungsaufrufe keinen Verschlüsselungskontext. Möglicherweise finden Sie in älteren AWS CloudTrail Protokollen Aufrufe ohne Verschlüsselungskontext.

Schlüsselrichtlinie des Von AWS verwalteter Schlüssel (aws/secretsmanager)

Die Schlüsselrichtlinie für den Von AWS verwalteter Schlüssel for Secrets Manager (aws/secretsmanager) gibt Benutzern nur dann die Erlaubnis, den KMS-Schlüssel für bestimmte Operationen zu verwenden, wenn Secrets Manager die Anfrage im Namen des Benutzers stellt. Die Schlüsselrichtlinie erlaubt es keinem Benutzer, den KMS-Schlüssel direkt zu verwenden.

Diese Schlüsselrichtlinie wird – wie die Richtlinien aller Von AWS verwaltete Schlüssel – vom Service eingerichtet. Sie können die Schlüsselrichtlinie nicht ändern, Sie können sie jedoch jederzeit anzeigen. Details dazu finden Sie unter Anzeigen einer Schlüsselrichtlinie.

Die Richtlinienanweisungen in der Schlüsselrichtlinie haben folgende Wirkungen:

  • Benutzer im Konto dürfen den KMS-Schlüssel für kryptografische Operationen nur verwenden, wenn die Anforderung von Secrets Manager in ihrem Namen ergeht. Der Bedingungsschlüssel kms:ViaService setzt diese Beschränkung durch.

  • Ermöglicht dem AWS Konto, IAM-Richtlinien zu erstellen, die es Benutzern ermöglichen, die Eigenschaften von KMS-Schlüsseln einzusehen und Zuweisungen zu widerrufen.

  • Secrets Manager verwendet zwar keine Erteilungen für den Zugriff auf KMS-Schlüssel, die Richtlinie ermöglicht es Secrets Manager jedoch, im Namen des Benutzers für den KMS-Schlüssel Erteilungen zu erstellen, und erlaubt es dem Konto, Erteilungen zu widerrufen, mit denen Secrets Manager den KMS-Schlüssel verwenden kann. Dies sind Standardkomponenten des Richtliniendokuments für einen Von AWS verwalteter Schlüssel.

Im Folgenden finden Sie eine wichtige Richtlinie für ein Beispiel Von AWS verwalteter Schlüssel für Secrets Manager.

{ "Id": "auto-secretsmanager-2", "Version": "2012-10-17", "Statement": [ { "Sid": "Allow access through AWS Secrets Manager for all principals in the account that are authorized to use AWS Secrets Manager", "Effect": "Allow", "Principal": { "AWS": [ "*" ] }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:CreateGrant", "kms:DescribeKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:CallerAccount": "111122223333", "kms:ViaService": "secretsmanager.us-west-2.amazonaws.com" } } }, { "Sid": "Allow access through AWS Secrets Manager for all principals in the account that are authorized to use AWS Secrets Manager", "Effect": "Allow", "Principal": { "AWS": [ "*" ] }, "Action": "kms:GenerateDataKey*", "Resource": "*", "Condition": { "StringEquals": { "kms:CallerAccount": "111122223333" }, "StringLike": { "kms:ViaService": "secretsmanager.us-west-2.amazonaws.com" } } }, { "Sid": "Allow direct access to key metadata to the account", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::111122223333:root" ] }, "Action": [ "kms:Describe*", "kms:Get*", "kms:List*", "kms:RevokeGrant" ], "Resource": "*" } ] }

Verschlüsselungskontext für Secrets Manager

Ein Verschlüsselungskontext ist eine Gruppe von Schlüssel/Wert-Paaren mit willkürlichen, nicht geheimen Daten. Wenn Sie einen Verschlüsselungskontext in eine Anforderung zur Verschlüsselung von Daten einbeziehen, wird der Verschlüsselungskontext AWS KMS kryptografisch an die verschlüsselten Daten gebunden. Zur Entschlüsselung der Daten müssen Sie denselben Verschlüsselungskontext übergeben.

Secrets Manager verwendet in seinen Anfragen GenerateDataKeyund Decrypt an einen Verschlüsselungskontext mit zwei Name-Wert-Paaren, die das Geheimnis und seine Version identifizieren, wie im folgenden Beispiel gezeigt. AWS KMS Die Namen variieren nicht. In Kombination unterscheiden sich die Verschlüsselungskontextwerte jedoch für jeden Geheimniswert.

"encryptionContext": { "SecretARN": "arn:aws:secretsmanager:us-east-2:111122223333:secret:test-secret-a1b2c3", "SecretVersionId": "EXAMPLE1-90ab-cdef-fedc-ba987SECRET1" }

Sie können den Verschlüsselungskontext verwenden, um diese kryptografischen Vorgänge in Prüfaufzeichnungen und Protokollen wie Amazon CloudWatch Logs zu identifizieren AWS CloudTrailund als Voraussetzung für die Autorisierung in Richtlinien und Zuschüssen zu verwenden.

Der Secrets-Manager-Verschlüsselungskontext besteht aus zwei Name-Wert-Paaren.

  • SecretARN – Das erste Name-Wert-Paar dient der Identifizierung des Secrets. Der Schlüssel lautet SecretARN. Der Wert ist der Amazon-Ressourcenname (ARN) des Geheimnisses.

    "SecretARN": "ARN of an Secrets Manager secret"

    Wenn der ARN des Geheimnisses beispielsweise arn:aws:secretsmanager:us-east-2:111122223333:secret:test-secret-a1b2c3 lautet, würde der Verschlüsselungskontext das folgende Paar beinhalten.

    "SecretARN": "arn:aws:secretsmanager:us-east-2:111122223333:secret:test-secret-a1b2c3"
  • SecretVersionId— Das zweite Name-Wert-Paar identifiziert die Version des Geheimnisses. Der Schlüssel lautet SecretVersionId. Der Wert ist die Versions-ID.

    "SecretVersionId": "<version-id>"

    Wenn die Versions-ID des Geheimnisses beispielsweise EXAMPLE1-90ab-cdef-fedc-ba987SECRET1 lautet, würde der Verschlüsselungskontext das folgende Paar beinhalten.

    "SecretVersionId": "EXAMPLE1-90ab-cdef-fedc-ba987SECRET1"

Wenn Sie den KMS-Schlüssel für ein Geheimnis einrichten oder ändern, sendet Secrets Manager Anfragen GenerateDataKeyund entschlüsselt, um AWS KMS zu überprüfen, ob der Anrufer berechtigt ist, den KMS-Schlüssel für diese Operationen zu verwenden. Die Antworten werden verworfen und nicht für den Geheimniswert verwendet.

In diesem Validierungsanfragen ist der Wert von SecretARN der tatsächliche ARN des Geheimnisses. Der Wert SecretVersionId ist jedoch RequestToValidateKeyAccess, wie im folgenden Beispielverschlüsselungskontext dargestellt. Mithilfe dieses speziellen Werts lassen sich Validierungsanfragen in Protokollen und Audit-Trails identifizieren.

"encryptionContext": { "SecretARN": "arn:aws:secretsmanager:us-east-2:111122223333:secret:test-secret-a1b2c3", "SecretVersionId": "RequestToValidateKeyAccess" }
Anmerkung

Bisher enthielten Secrets-Manager-Validierungsanforderungen keinen Verschlüsselungskontext. Möglicherweise finden Sie in älteren AWS CloudTrail Protokollen Anrufe ohne Verschlüsselungskontext.

Überwachen Sie die Secrets Manager Manager-Interaktion mit AWS KMS

Sie können Amazon AWS CloudTrail CloudWatch Logs verwenden, um die Anfragen zu verfolgen, an die Secrets Manager in AWS KMS Ihrem Namen sendet. Weitere Informationen über das Überwachen der Verwendung von Secrets finden Sie unter AWS Secrets Manager Geheimnisse überwachen.

GenerateDataKey

Wenn Sie den geheimen Wert in einem Geheimnis erstellen oder ändern, sendet Secrets Manager eine GenerateDataKeyAnfrage an AWS KMS , in der der KMS-Schlüssel für das Geheimnis angegeben wird.

Das Ereignis, das die GenerateDataKey-Operation aufzeichnet, ähnelt dem folgenden Beispielereignis. Die Anforderung wird durch secretsmanager.amazonaws.com aufgerufen. Die Parameter enthalten den Amazon-Ressourcennamen (ARN) des KMS-Schlüssels für das Secret, einen Schlüsselbezeichner, der einen 256-Bit-Schlüssel benötigt, und den Verschlüsselungskontext, der das Secret und dessen Version identifiziert.

{ "eventVersion": "1.05", "userIdentity": { "type": "IAMUser", "principalId": "AROAIGDTESTANDEXAMPLE:user01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/user01", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "2018-05-31T23:23:41Z" } }, "invokedBy": "secretsmanager.amazonaws.com" }, "eventTime": "2018-05-31T23:23:41Z", "eventSource": "kms.amazonaws.com", "eventName": "GenerateDataKey", "awsRegion": "us-east-2", "sourceIPAddress": "secretsmanager.amazonaws.com", "userAgent": "secretsmanager.amazonaws.com", "requestParameters": { "keyId": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "keySpec": "AES_256", "encryptionContext": { "SecretARN": "arn:aws:secretsmanager:us-east-2:111122223333:secret:test-secret-a1b2c3", "SecretVersionId": "EXAMPLE1-90ab-cdef-fedc-ba987SECRET1" } }, "responseElements": null, "requestID": "a7d4dd6f-6529-11e8-9881-67744a270888", "eventID": "af7476b6-62d7-42c2-bc02-5ce86c21ed36", "readOnly": true, "resources": [ { "ARN": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "accountId": "111122223333", "type": "AWS::KMS::Key" } ], "eventType": "AwsApiCall", "recipientAccountId": "111122223333" }
Decrypt

Wenn Sie den geheimen Wert eines Geheimnisses abrufen oder ändern, sendet Secrets Manager eine Entschlüsselungsanforderung an, AWS KMS um den verschlüsselten Datenschlüssel zu entschlüsseln. Bei Batch-Befehlen kann Secrets Manager den entschlüsselten Schlüssel wiederverwenden, sodass nicht alle Aufrufe zu einer Decrypt-Anforderung führen.

Das Ereignis, das die Decrypt-Operation aufzeichnet, ähnelt dem folgenden Beispielereignis. Der Benutzer ist der Hauptbenutzer in Ihrem AWS Konto, der auf die Tabelle zugreift. Zu den Parametern gehören der verschlüsselte Tabellenschlüssel (als Chiffretext-Blob) und der Verschlüsselungskontext, der die Tabelle und das Konto identifiziert. AWS AWS KMS leitet die ID des KMS-Schlüssels aus dem Chiffretext ab.

{ "eventVersion": "1.05", "userIdentity": { "type": "IAMUser", "principalId": "AROAIGDTESTANDEXAMPLE:user01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/user01", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "2018-05-31T23:36:09Z" } }, "invokedBy": "secretsmanager.amazonaws.com" }, "eventTime": "2018-05-31T23:36:09Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-east-2", "sourceIPAddress": "secretsmanager.amazonaws.com", "userAgent": "secretsmanager.amazonaws.com", "requestParameters": { "encryptionContext": { "SecretARN": "arn:aws:secretsmanager:us-east-2:111122223333:secret:test-secret-a1b2c3", "SecretVersionId": "EXAMPLE1-90ab-cdef-fedc-ba987SECRET1" } }, "responseElements": null, "requestID": "658c6a08-652b-11e8-a6d4-ffee2046048a", "eventID": "f333ec5c-7fc1-46b1-b985-cbda13719611", "readOnly": true, "resources": [ { "ARN": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "accountId": "111122223333", "type": "AWS::KMS::Key" } ], "eventType": "AwsApiCall", "recipientAccountId": "111122223333" }
Encrypt

Wenn Sie den KMS-Schlüssel ändern, der einem Geheimnis zugeordnet ist, sendet Secrets Manager eine Verschlüsselungsanforderung an, AWS KMS um die AWSPENDING geheimen Versionen AWSCURRENTAWSPREVIOUS, und mit dem neuen Schlüssel erneut zu verschlüsseln. Wenn Sie ein Secret in eine andere Region replizieren, sendet Secrets Manager außerdem eine Verschlüsselungsanfrage an  AWS KMS.

Das Ereignis, das die Encrypt-Operation aufzeichnet, ähnelt dem folgenden Beispielereignis. Der Benutzer ist der Hauptbenutzer in Ihrem AWS Konto, der auf die Tabelle zugreift.

{ "eventVersion": "1.08", "userIdentity": { "type": "IAMUser", "principalId": "AROAIGDTESTANDEXAMPLE:user01", "arn": "arn:aws:sts::111122223333:assumed-role/Admin/user01", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "attributes": { "creationDate": "2023-06-09T18:11:34Z", "mfaAuthenticated": "false" } }, "invokedBy": "secretsmanager.amazonaws.com" }, "eventTime": "2023-06-09T18:11:34Z", "eventSource": "kms.amazonaws.com", "eventName": "Encrypt", "awsRegion": "us-east-2", "sourceIPAddress": "secretsmanager.amazonaws.com", "userAgent": "secretsmanager.amazonaws.com", "requestParameters": { "keyId": "arn:aws:kms:us-east-2:111122223333:key/EXAMPLE1-f1c8-4dce-8777-aa071ddefdcc", "encryptionAlgorithm": "SYMMETRIC_DEFAULT", "encryptionContext": { "SecretARN": "arn:aws:secretsmanager:us-east-2:111122223333:secret:ChangeKeyTest-5yKnKS", "SecretVersionId": "EXAMPLE1-5c55-4d7c-9277-1b79a5e8bc50" } }, "responseElements": null, "requestID": "129bd54c-1975-4c00-9b03-f79f90e61d60", "eventID": "f7d9ff39-15ab-47d8-b94c-56586de4ab68", "readOnly": true, "resources": [ { "accountId": "AWS Internal", "type": "AWS::KMS::Key", "ARN": "arn:aws:kms:us-west-2:111122223333:key/EXAMPLE1-f1c8-4dce-8777-aa071ddefdcc" } ], "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "111122223333", "eventCategory": "Management" }