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 Geheimnisses gespeichert. Um das Geheimnis zu entschlüsseln, entschlüsselt Secrets Manager zunächst den verschlüsselten Datenschlüssel mit dem KMS Schlüssel in. AWS KMS

Secrets Manager verwendet den KMS Schlüssel nicht, um den geheimen Wert direkt zu verschlüsseln. Stattdessen verwendet es den KMS Schlüssel, um einen symmetrischen 256-Bit-Datenschlüssel des Advanced Encryption Standard (AES) zu generieren und zu verschlüsseln, und verwendet den Datenschlüssel, um den geheimen Wert zu verschlüsseln. 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 für jedes Geheimnis in Ihrem Konto denselben KMS KMS Schlüssel oder unterschiedliche Schlüssel verwenden. Möglicherweise möchten Sie unterschiedliche KMS Schlüssel verwenden, um benutzerdefinierte Berechtigungen für die Schlüssel für eine Gruppe von Geheimnissen festzulegen, oder wenn Sie bestimmte Operationen 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 Anfrage außerhalb von AWS

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

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. Wenn Sie keine kms:Decrypt Rechte für den vorherigen Schlüssel haben, kann Secrets Manager beim Ändern des Verschlüsselungsschlüssels die geheimen Versionen nicht entschlüsseln, um sie erneut zu verschlüsseln. In diesem Fall werden die vorhandenen Versionen nicht erneut verschlüsselt.

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 mit einem Geheimnis verknüpft 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 keine KMS Schlüssel-ID 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

  • ARNdes KMS Schlüssels, der dem Geheimnis zugeordnet ist

  • 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 die AWS KMS GenerateDataKeyOperation mit der ID des KMS Schlüssels für das Geheimnis und einer Anforderung für einen AES symmetrischen 256-Bit-Schlüssel auf. AWS KMS gibt einen Klartext-Datenschlüssel und eine Kopie dieses unter dem Schlüssel verschlüsselten Datenschlüssels zurück. KMS

  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. Keiner der Secrets Manager APIs gibt jedoch das verschlüsselte Geheimnis 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 Schlüssel KMS

Wenn Secrets Manager einen KMS Schlüssel für kryptografische Operationen verwendet, handelt er im Namen des Benutzers, der auf den geheimen Wert zugreift oder ihn 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 die Schlüssel oder Werte auch im Verschlüsselungskontext als Bedingung für die Verwendung des KMS Schlüssels für kryptografische Operationen verwenden. Sie können beispielsweise einen Operator mit einer Zeichenkettenbedingung in einem IAM Dokument mit einer Schlüsselrichtlinie oder eine Zuschussbeschränkung in einem Zuschuss verwenden. KMSDie Weitergabe von Schlüsselzuschüssen kann bis zu fünf Minuten dauern. Weitere Informationen finden Sie unter CreateGrant.

So verwendet Secrets Manager Ihren KMS Schlüssel

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 Versionen, und AWSPENDING Secret schützt AWSCURRENTAWSPREVIOUS, erneut mit dem neuen Schlüssel.

  • ReplicateSecretToRegions— Secrets Manager verschlüsselt den Datenschlüssel während der Replikation erneut mit dem KMS Schlüssel 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.

Der Zugriff auf den Schlüssel wird KMS validiert

Wenn Sie den KMS Schlüssel, der mit Secret verknüpft ist, einrichten oder ändern, ruft Secrets Manager die GenerateDataKey Decrypt AND-Operationen mit dem angegebenen KMS Schlüssel auf. Diese Aufrufe bestätigen, dass der Aufrufer berechtigt ist, den KMS Schlüssel für diese Operation zu verwenden. 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 Anrufe 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:

  • Erlauben Sie Benutzern im Konto, den KMS Schlüssel nur dann für kryptografische Operationen zu verwenden, wenn die Anfrage von Secrets Manager in ihrem Namen kommt. Der Bedingungsschlüssel kms:ViaService setzt diese Beschränkung durch.

  • Ermöglicht es dem AWS Konto, IAM Richtlinien zu erstellen, die es Benutzern ermöglichen, KMS Schlüsseleigenschaften einzusehen und Zuschüsse zu widerrufen.

  • Secrets Manager verwendet zwar keine Zuweisungen, um Zugriff auf den KMS Schlüssel zu erhalten, aber die Richtlinie ermöglicht es Secrets Manager auch, im Namen des Benutzers Zuweisungen für den KMS Schlüssel zu erstellen, und ermöglicht dem Konto, alle Zuweisungen zu widerrufen, die Secrets Manager die Verwendung des KMS Schlüssels ermöglichen. 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.

In seinen Anfragen GenerateDataKeyund Decrypt verwendet Secrets Manager 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.

  • Geheim ARN — Das Paar aus Vorname und Wert identifiziert das Geheimnis. 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 lautetarn:aws:secretsmanager:us-east-2:111122223333:secret:test-secret-a1b2c3, 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 diesen Überprüfungsanfragen entspricht der Wert von dem dem SecretARN tatsächlichen Wert ARN des Geheimnisses, aber der SecretVersionId Wert istRequestToValidateKeyAccess, wie im folgenden Beispiel für den Verschlüsselungskontext dargestellt, gleich. 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 ist.

Das Ereignis, das die GenerateDataKey-Operation aufzeichnet, ähnelt dem folgenden Beispielereignis. Die Anforderung wird durch secretsmanager.amazonaws.com aufgerufen. Zu den Parametern gehören der Amazon-Ressourcenname (ARN) des KMS Schlüssels für das Geheimnis, eine Schlüsselspezifikation, für die ein 256-Bit-Schlüssel erforderlich ist, und der Verschlüsselungskontext, der das Geheimnis und die 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 mit einem Geheimnis verknüpften KMS Schlüssel ändern, 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" }