Sollte ich zur Verschlüsselung meiner Objekte in Amazon S3 einen von AWS KMS verwalteten Schlüssel oder einen vom Kunden verwalteten KMS-Schlüssel verwenden?

Letzte Aktualisierung: 01.11.2021

Ich möchte die serverseitige Verschlüsselung mit dem AWS Key Management Service (SSE-KMS) für meine im Amazon Simple Storage Service (Amazon S3) gespeicherten Objekte verwenden. Sollte ich einen vom Kunden verwalteten AWS KMS-Schlüssel verwenden? Oder sollte ich den verwalteten AWS KMS-Schlüssel namens aws/s3 verwenden? Worin besteht der Unterschied zwischen den beiden?

Lösung

AWS KMS verwaltet den standardmäßigen aws/s3-KMS-Schlüssel, aber Sie haben die volle Kontrolle über einen vom Kunden verwalteten Schlüssel.

Verwenden des standardmäßigen aws/s3-KMS-Schlüssels

Hinweis: Der Name des KMS-Schlüssels lautet aws/s3 in der Amazon S3-Konsole. Sie geben diesen Namen oder die ID jedoch nicht an, wenn Sie das AWS Command Line Interface (AWS CLI) verwenden.

Erwägen Sie, den standardmäßigen aws/s3-KMS-Schlüssel zu verwenden, wenn:

  • Sie S3-Objekte hochladen oder mit AWS Identity and Access Management (IAM)-Prinzipals zugreifen, die sich im selben AWS-Konto wie der KMS-Schlüssel befinden.
  • Sie keine Richtlinien für den KMS-Schlüssel verwalten möchten.
  • Sie den KMS-Schlüssel nicht rotieren möchten.

Um ein Objekt mit dem standardmäßigen aws/s3-KMS-Schlüssel zu verschlüsseln, definieren Sie die Verschlüsselungsmethode während des Uploads als SSE-KMS, geben Sie jedoch keinen Schlüssel an:

aws s3 cp ./mytextfile.txt s3://DOC-EXAMPLE-BUCKET/ --sse aws:kms

Hinweis: Wenn Sie beim Ausführen von AWS CLI-Befehlen Fehler erhalten, stellen Sie sicher, dass Sie die neueste Version der AWS CLI verwenden.

Verwenden eines vom Kunden verwalteten Schlüssels

Erwägen Sie die Verwendung eines vom Kunden verwalteten Schlüssels, wenn:

  • Sie Zugriffssteuerungen für den Schlüssel erstellen, rotieren, deaktivieren oder definieren möchten.
  • Sie kontoübergreifenden Zugriff auf Ihre S3-Objekte gewähren möchten. Sie können die Richtlinie eines vom Kunden verwalteten Schlüssels so konfigurieren, dass der Zugriff von einem anderen Konto aus ermöglicht wird.

Um ein Objekt mit einem vom Kunden verwalteten Schlüssel zu verschlüsseln, definieren Sie die Verschlüsselungsmethode während des Uploads als SSE-KMS. Geben Sie dann Ihren vom Kunden verwalteten Schlüssel als Schlüssel an (--sse-kms-key-id):

aws s3 cp ./mytextfile.txt s3://DOC-EXAMPLE-BUCKET/ --sse aws:kms --sse-kms-key-id testkey

Um den Zugriff auf Ihren vom Kunden verwalteten Schlüssel zu steuern, ändern Sie die Schlüsselrichtlinie. Weitere Informationen zum Erstellen einer Schlüsselrichtlinie finden Sie unter Beispiel einer Schlüsselrichtlinie.


War dieser Artikel hilfreich?


Benötigen Sie Hilfe zur Fakturierung oder technischen Support?