

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.

# Ruhende DynamoDB-Verschlüsselung
<a name="EncryptionAtRest"></a>

Alle Benutzerdaten, die in Amazon DynamoDB gespeichert sind, werden im Ruhezustand vollständig verschlüsselt. Die DynamoDB-Verschlüsselung im Ruhezustand bietet erhöhte Sicherheit, indem alle Ruhedaten mit Verschlüsselungsschlüsseln verschlüsselt werden, die in [AWS Key Management Service (AWS KMS)](https://aws.amazon.com/kms/) gespeichert sind. Diese Funktionalität trägt zur Verringerung des Betriebsaufwands und der Komplexität bei, die mit dem Schutz sensibler Daten einhergeht. Mit der Verschlüsselung ruhender Daten können Sie sicherheitsrelevante Anwendungen erstellen, die eine strenge Einhaltung der Verschlüsselungsvorschriften und der gesetzlichen Bestimmungen erfordern.

Die DynamoDB-Verschlüsselung im Ruhezustand bietet eine zusätzliche Datenschutzebene, indem Ihre Daten stets in einer verschlüsselten Tabelle gesichert werden – einschließlich des Primärschlüssels, lokaler und globaler sekundärer Indizes, Datenströme, globaler Tabellen, Backups und DynamoDB-Accelerator-(DAX)-Clustern –, wenn die Daten auf dauerhaften Datenträgern gespeichert werden. Richtlinien der Organisation, Vorschriften der Branche oder Behörde und Compliance-Anforderungen schreiben oft die Verschlüsselung ruhender Daten vor, um den Datenschutz Ihrer Anwendungen zu erhöhen. Weitere Informationen zur Verschlüsselung für Datenbankanwendungen finden Sie unter [AWS Database Encryption SDK](https://docs.aws.amazon.com/database-encryption-sdk/latest/devguide/what-is-database-encryption-sdk.html).

Encryption at Rest ist in die Verwaltung der Verschlüsselungsschlüssel integriert, die AWS KMS zur Verschlüsselung Ihrer Tabellen verwendet werden. Weitere Informationen zu Schlüsseltypen und -status finden Sie unter [AWS Key Management Service -Konzepte](https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html#key-state-cmk-type) im *AWS Key Management Service -Entwicklerhandbuch*.

Wenn Sie eine neue Tabelle erstellen, können Sie einen der folgenden AWS KMS key Typen zum Verschlüsseln Ihrer Tabelle auswählen. Sie können jederzeit zwischen diesen Schlüsseltypen wechseln.
+ **AWS-eigener Schlüssel —** Standardverschlüsselungstyp. Der Schlüssel befindet sich im Besitz von DynamoDB (kein Aufpreis).
+ **Von AWS verwalteter Schlüssel —** Der Schlüssel ist in Ihrem Konto gespeichert und wird von verwaltet AWS KMS (es AWS KMS fallen Gebühren an).
+ **Vom Kunden verwalteter Schlüssel –** Der Schlüssel wird in Ihrem Konto gespeichert und von Ihnen erstellt, besessen und verwaltet. Sie haben die volle Kontrolle über den KMS-Schlüssel (es AWS KMS fallen Gebühren an).

Weitere Informationen zu Schlüsseltypen finden Sie unter [Kundenschlüssel und AWS Schlüssel](/kms/latest/developerguide/concepts.html#key-mgmt).

**Anmerkung**  
Beim Erstellen eines neuen DAX-Clusters mit aktivierter Verschlüsselung im Ruhezustand wird ein Von AWS verwalteter Schlüssel verwendet, um Daten im Ruhezustand im Cluster zu verschlüsseln.
Wenn Ihre Tabelle einen Sortierschlüssel hat, werden einige der Sortierschlüssel, die Bereichsgrenzen markieren, in Klartext in den Metadaten der Tabelle gespeichert.

Wenn Sie auf eine verschlüsselte Tabelle zugreifen, entschlüsselt DynamoDB die Tabellendaten transparent. Sie müssen keinen Code oder Anwendungen ändern, um verschlüsselte Tabellen zu verwenden oder zu verwalten. DynamoDB liefert weiterhin dieselbe Latenz im einstelligen Millisekundenbereich, die Sie gewohnt sind, und alle DynamoDB Abfragen funktionieren nahtlos für Ihre verschlüsselten Daten.

Sie können einen Verschlüsselungsschlüssel angeben, wenn Sie eine neue Tabelle erstellen oder die Verschlüsselungsschlüssel für eine bestehende Tabelle mithilfe der AWS-Managementkonsole, AWS Command Line Interface (AWS CLI) oder der Amazon DynamoDB DynamoDB-API austauschen. Um zu erfahren wie dies geht, vgl. [Verwalten von verschlüsselten Tabellen in DynamoDB](encryption.tutorial.md).

Die Verschlüsselung im Ruhezustand mithilfe von AWS-eigener Schlüssel wird ohne zusätzliche Kosten angeboten. Es AWS KMS fallen jedoch Gebühren für einen Von AWS verwalteter Schlüssel und für einen vom Kunden verwalteten Schlüssel an. Weitere Informationen zur Preisgestaltung finden Sie unter [AWS KMS  – Preise](https://aws.amazon.com/kms/pricing).

DynamoDB-Verschlüsselung im Ruhezustand ist in allen AWS Regionen verfügbar, einschließlich der Regionen AWS China (Peking) und AWS China (Ningxia) sowie der Regionen AWS GovCloud (USA). Weitere Informationen erhalten Sie unter [Verschlüsselung im Ruhezustand mit DynamoDB: Funktionsweise](encryption.howitworks.md) und [Nutzungshinweise zur Verschlüsselung ruhender Daten in DynamoDB](encryption.usagenotes.md).

# Verschlüsselung im Ruhezustand mit DynamoDB: Funktionsweise
<a name="encryption.howitworks"></a>

Die Amazon-DynamoDB-Verschlüsselung verschlüsselt Ihre Daten mit 256-bit-Advanced-Encryption-Standard (AES-256), um Ihre Daten vor unautorisiertem Zugriff auf den zugrunde liegenden Speicher zu schützen.

Encryption at Rest ist in AWS Key Management Service (AWS KMS) integriert, um die Verschlüsselungsschlüssel zu verwalten, die zur Verschlüsselung Ihrer Tabellen verwendet werden.

**Anmerkung**  
Im Mai 2022 AWS KMS wurde der Rotationsplan Von AWS verwaltete Schlüssel von allen drei Jahren (etwa 1.095 Tage) auf jedes Jahr (ungefähr 365 Tage) geändert.  
Neue Von AWS verwaltete Schlüssel werden automatisch ein Jahr nach ihrer Erstellung und danach ungefähr jedes Jahr rotiert.  
Bestehende Von AWS verwaltete Schlüssel werden automatisch ein Jahr nach ihrer letzten Rotation und danach jedes Jahr gewechselt.

## AWS-eigene Schlüssel
<a name="ddb-owned"></a>

 AWS-eigene Schlüssel sind nicht in Ihrem AWS Konto gespeichert. Sie sind Teil einer Sammlung von KMS-Schlüsseln, die AWS Eigentümer sind und für die Verwendung in mehreren AWS Konten verwaltet werden. AWS Dienste, die Sie AWS-eigene Schlüssel zum Schutz Ihrer Daten verwenden können. AWS-eigene Schlüssel die von DynamoDB verwendet werden, werden jedes Jahr rotiert (ungefähr 365 Tage). 

Sie können ihre Verwendung nicht einsehen, verwalten AWS-eigene Schlüssel, verwenden oder überwachen. Sie müssen jedoch keine Maßnahmen ergreifen oder Programme zum Schutz der Schlüssel ändern, die zur Verschlüsselung Ihrer Daten verwendet werden.

Ihnen wird weder eine monatliche Gebühr noch eine Nutzungsgebühr für die Nutzung von berechnet AWS-eigene Schlüssel, und sie werden auch nicht auf die AWS KMS Kontingente für Ihr Konto angerechnet.

## Von AWS verwaltete Schlüssel
<a name="managed-key-service-default-kms"></a>

Von AWS verwaltete Schlüssel sind KMS-Schlüssel in Ihrem Konto, die in Ihrem Namen von einem integrierten AWS Dienst erstellt, verwaltet und verwendet werden. AWS KMS Sie können die Von AWS verwaltete Schlüssel in Ihrem Konto anzeigen, ihre Schlüsselrichtlinien abrufen und ihre Verwendung in AWS CloudTrail -Protokollen prüfen. Sie haben jedoch nicht die Möglichkeit, diese KMS-Schlüssel zu verwalten oder ihre Berechtigungen zu ändern.

Encryption at Rest integriert sich automatisch in die Verwaltung von AWS KMS Von AWS verwaltete Schlüssel for DynamoDB (`aws/dynamodb`), die zum Verschlüsseln Ihrer Tabellen verwendet werden. Wenn beim Erstellen Ihrer verschlüsselten DynamoDB-Tabelle Von AWS verwalteter Schlüssel kein vorhanden ist, AWS KMS wird automatisch ein neuer Schlüssel für Sie erstellt. Dieser Schlüssel wird für verschlüsselte Tabellen verwendet, die in future erstellt werden. AWS KMS kombiniert sichere, hochverfügbare Hardware und Software, um ein für die Cloud skaliertes Schlüsselverwaltungssystem bereitzustellen.

Weitere Informationen zur Verwaltung der Von AWS verwalteter Schlüssel Berechtigungen von finden Sie unter [Autorisieren der Verwendung von Von AWS verwalteter Schlüssel im AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/services-dynamodb.html#dynamodb-authz) *Entwicklerhandbuch*.

## Kundenseitig verwaltete Schlüssel
<a name="managed-key-customer-managed"></a>

Von Kunden verwaltete Schlüssel sind KMS-Schlüssel in Ihrem AWS Konto, die Sie erstellen, besitzen und verwalten. Sie haben die volle Kontrolle über diese KMS-Schlüssel, einschließlich der Festlegung und Pflege ihrer wichtigsten Richtlinien, IAM-Richtlinien und Unterstützungen. Aktivieren und Deaktivieren; Drehen ihres kryptographischen Materials; Hinzufügen von Tags; Erstellen von Aliasen, die auf sie verweisen; und sie zum Löschen planen. Weitere Informationen zum Verwalten von Berechtigungen eines kundenseitig verwalteten Schlüssels finden Sie unter [Kundenseitig verwaltete Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk).

Wenn Sie einen kundenverwalteten Schlüssel als Verschlüsselungsschlüssel auf Tabellenebene angeben, werden die DynamoDB-Tabelle, die lokalen und globalen sekundären Indizes und Streams mit demselben kundenverwalteten Schlüssel verschlüsselt. Bei Bedarf werden Backups mit dem Verschlüsselungsschlüssel auf Tabellenebene verschlüsselt, der zum Zeitpunkt der Erstellung der Backup angegeben wird. Beim Aktualisieren des Verschlüsselungsschlüssels auf Tabellenebene wird der Verschlüsselungsschlüssel nicht geändert, der vorhandenen On-Demand-Backups zugeordnet ist.

Durch Festlegen des Status des kundenverwalteten Schlüssels auf Deaktivierung oder Planung für das Löschen wird verhindert, dass alle Benutzer und der DynamoDB-Service Daten verschlüsseln oder entschlüsseln und Lese- und Schreibvorgänge für die Tabelle ausführen können. DynamoDB muss Zugriff auf Ihren Verschlüsselungsschlüssel haben, um sicherzustellen, dass Sie weiterhin auf Ihre Tabelle zugreifen können und Datenverluste zu verhindern.

Wenn Sie den kundenverwalteten Schlüssel deaktivieren oder planen ihn zu Löschen, wird Ihr Tabellenstatus **Unzugänglich**. Um sicherzustellen, dass Sie die Arbeit mit der Tabelle fortsetzen können, müssen Sie DynamoDB Zugriff auf den angegebenen Verschlüsselungsschlüssel innerhalb von sieben Tagen gewähren. Sobald der Dienst erkennt, dass der Zugriff auf den Verschlüsselungsschlüssel nicht möglich ist, sendet DynamoDB eine E-Mail-Benachrichtigung, um Sie zu benachrichtigen.

**Anmerkung**  
Wenn auf Ihren kundenverwalteten Schlüssel länger als sieben Tage nicht mehr vom DynamoDB-Service zugegriffen werden kann, wird die Tabelle archiviert und es kann nicht mehr darauf zugegriffen werden. DynamoDB erstellt eine On-Demand-Backup Ihrer Tabelle, und es wird Ihnen in Rechnung gestellt. Sie können diese On-Demand-Backup verwenden, um Ihre Daten in einer neuen Tabelle wiederherzustellen. Um die Wiederherstellung zu initiieren, muss der letzte kundenverwaltete Schlüssel in der Tabelle aktiviert sein, und DynamoDB muss Zugriff darauf haben.
Wenn Ihr kundenverwalteter Schlüssel, der zum Verschlüsseln eines globalen Tabellenreplikats verwendet wurde, nicht zugänglich ist, entfernt DynamoDB dieses Replikat aus der Replikationsgruppe. Das Replikat wird nicht gelöscht, und die Replikation wird 20 Stunden nach der Erkennung des kundenverwalteten Schlüssels als nicht zugänglich angehalten.

Weitere Informationen finden Sie unter [Aktivieren von Schlüsseln](/kms/latest/developerguide/enabling-keys.html) und [Löschen von Schlüsseln](/kms/latest/developerguide/deleting-keys.html). 

## Hinweise zur Verwendung Von AWS verwaltete Schlüssel
<a name="managed-key-notes"></a>

Amazon DynamoDB kann Ihre Tabellendaten nur lesen, wenn es Zugriff auf den in Ihrem AWS KMS Konto gespeicherten KMS-Schlüssel hat. DynamoDB verwendet die Envelope-Verschlüsselung und die Schlüsselhierarchie, um Daten zu verschlüsseln. Ihr AWS KMS Verschlüsselungsschlüssel wird verwendet, um den Stammschlüssel dieser Schlüsselhierarchie zu verschlüsseln. Weitere Informationen zur [Envelope-Verschlüsselung](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#enveloping) finden Sie im *AWS Key Management Service -Entwicklerhandbuch*.

 DynamoDB ruft nicht AWS KMS für jeden DynamoDB-Vorgang auf. Der Schlüssel wird einmal alle 5 Minuten pro Aufrufer mit aktivem Datenverkehr aktualisiert.

Stellen Sie sicher, dass das SDK für die Wiederverwendung von Verbindungen konfiguriert ist. Andernfalls treten Latenzen auf, da DynamoDB für jeden DynamoDB-Vorgang neue AWS KMS Cacheeinträge neu einrichten muss. Darüber hinaus müssen Sie möglicherweise mit höheren Kosten rechnen. AWS KMS CloudTrail Um dies beispielsweise mit dem Node.js SDK zu tun, können Sie einen neuen HTTPS-Agent mit aktivierter `keepAlive` erstellen. Weitere Informationen finden Sie unter [Konfigurieren von keepAlive in Node.js](https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/node-reusing-connections.html) im *AWS SDK für JavaScript -Entwicklerhandbuch*.

# Nutzungshinweise zur Verschlüsselung ruhender Daten in DynamoDB
<a name="encryption.usagenotes"></a>

Beachten Sie Folgendes, wenn Sie die Verschlüsselung ruhender Daten in Amazon DynamoDB verwenden.

## Alle Tabellendaten werden verschlüsselt
<a name="encryption.usagenotes.tabledata"></a>

Die serverseitige Verschlüsselung ruhender Daten ist für alle DynamoDB-Tabellendaten aktiviert und kann nicht deaktiviert werden. Sie können nicht nur eine Teilmenge von Elementen in einer Tabelle verschlüsseln.

Die Verschlüsselung ruhender Daten verschlüsselt Daten nur, während sie auf persistenten Speichermedien statisch (ruhende Daten) sind. Wenn die Datensicherheit für in Übertragung befindliche oder genutzte Daten wichtig ist, müssen Sie ggf. zusätzliche Maßnahmen ergreifen:
+ Daten während der Übertragung: Alle Ihre Daten in DynamoDB werden während der Übertragung verschlüsselt. Standardmäßig verwenden Mitteilungen an und von DynamoDB das HTTPS-Protokoll, das den Netzwerkverkehr mittels Secure-Sockets-Layer-(SSL)-/Transport-Layer-Security-(TLS)-Verschlüsselung schützt.
+ Genutzte Daten: Schützen Sie Daten durch Client-seitige Verschlüsselung, bevor sie an DynamoDB gesendet werden. Weitere Informationen finden Sie unter [Client- und serverseitige Verschlüsselung im Entwicklerhandbuch](https://docs.aws.amazon.com/dynamodb-encryption-client/latest/devguide/client-server-side.html) für *Amazon DynamoDB Encryption Client*.

Sie können Streams mit verschlüsselten Tabellen verwenden. DynamoDB-Streams werden immer mit einem Verschlüsselungsschlüssel auf Tabellenebene verschlüsselt. Weitere Informationen finden Sie unter [Ändern Sie die Datenerfassung für DynamoDB Streams](Streams.md).

DynamoDB-Backups werden verschlüsselt. Für die Tabelle, die aus einem Backup wiederhergestellt wird, ist die Verschlüsselung ebenfalls aktiviert. Sie können den AWS-eigener Schlüssel Von AWS verwalteter Schlüssel, oder vom Kunden verwalteten Schlüssel verwenden, um Ihre Backup-Daten zu verschlüsseln. Weitere Informationen finden Sie unter [Backup und Wiederherstellung für DynamoDB](Backup-and-Restore.md).

Lokale Sekundärindizes und globale Sekundärindizes werden mit dem gleichen Schlüssel wie die Basistabelle verschlüsselt.

## Verschlüsselungstypen
<a name="encryption.usagenotes.encryptiontypes"></a>

**Anmerkung**  
Vom Kunden verwaltete Schlüssel werden in der globalen Tabelle Version 2017 nicht unterstützt. Wenn Sie einen vom Kunden verwalteten Schlüssel in einer globalen DynamoDB-Tabelle verwenden möchten, müssen Sie die Tabelle auf Version 2019 aktualisieren und dann aktivieren.

Bei der handelt es sich um den Verschlüsselungstyp AWS-Managementkonsole, `KMS` wenn Sie den Von AWS verwalteter Schlüssel oder den vom Kunden verwalteten Schlüssel zum Verschlüsseln Ihrer Daten verwenden. Der Verschlüsselungstyp lautet `DEFAULT`, wenn Sie den AWS-eigener Schlüssel verwenden. In der Amazon DynamoDB DynamoDB-API ist der Verschlüsselungstyp der Fall, `KMS` wenn Sie den Von AWS verwalteter Schlüssel oder den vom Kunden verwalteten Schlüssel verwenden. Wenn kein Verschlüsselungstyp angegeben wird, werden Ihre Daten mit dem AWS-eigener Schlüssel verschlüsselt. Sie können jederzeit zwischen dem AWS-eigener Schlüssel Von AWS verwalteter Schlüssel, und dem vom Kunden verwalteten Schlüssel wechseln. Sie können die Konsole, die AWS Command Line Interface (AWS CLI) oder die Amazon DynamoDB DynamoDB-API verwenden, um die Verschlüsselungsschlüssel zu wechseln.

Beachten Sie die folgenden Einschränkungen bei Verwendung kundenverwalteter Schlüssel:
+ Sie können einen kundenverwalteten Schlüssel nicht mit den DynamoDB-Accelerator (DAX)-Clustern verwenden. Weitere Informationen finden Sie unter [DAX-Verschlüsselung im Ruhezustand](DAXEncryptionAtRest.md).
+ Sie können einen kundenverwalteten Schlüssel nutzen, um Tabellen zu verschlüsseln, die Transaktionen verwenden. Um jedoch die Dauerhaftigkeit für die Weitergabe von Transaktionen zu gewährleisten, wird eine Kopie der Transaktionsanforderung vom Dienst vorübergehend gespeichert und mit einem AWS-eigener Schlüssel verschlüsselt. Festgeschriebene Daten in Ihren Tabellen und sekundären Indizes werden im Ruhezustand immer mit Ihrem kundenverwalteten Schlüssel verschlüsselt.
+ Sie können einen kundenverwalteten Schlüssel nutzen, um Tabellen zu verschlüsseln, die Contributor Insights verwenden. Daten, an die übertragen werden, sind jedoch mit einem Amazon CloudWatch verschlüsselt. AWS-eigener Schlüssel
+ Achten Sie beim Umstieg auf einen neuen, vom Kunden verwalteten Schlüssel darauf, dass der ursprüngliche Schlüssel aktiviert bleibt, bis der Vorgang abgeschlossen ist. AWS Sie benötigen weiterhin den Originalschlüssel, um die Daten zu entschlüsseln, bevor Sie sie mit dem neuen Schlüssel verschlüsseln. Der Vorgang ist abgeschlossen, wenn der SSEDescription Status der Tabelle AKTIVIERT ist und der KMSMaster KeyArn des neuen vom Kunden verwalteten Schlüssels angezeigt wird. Zu diesem Zeitpunkt kann der ursprüngliche Schlüssel deaktiviert oder zum Löschen eingeplant werden.
+ Sobald der neue kundenverwaltete Schlüssel angezeigt wird, werden die Tabelle und alle neuen On-Demand-Backups mit dem neuen Schlüssel verschlüsselt.
+ Alle vorhandenen On-Demand-Backups bleiben mit dem kundenverwalteten Schlüssel verschlüsselt, der beim Erstellen dieser Backups verwendet wurde. Sie benötigen denselben Schlüssel, um diese Backups wiederherzustellen. Sie können den Schlüssel für den Zeitraum identifizieren, in dem jedes Backup erstellt wurde, indem Sie die DescribeBackup API verwenden, um die Backups einzusehen SSEDescription.
+ Wenn Sie den kundenverwalteten Schlüssel deaktivieren oder zum Löschen vorsehen, gilt für alle Daten in DynamoDB Streams weiterhin eine 24-stündige Lebensdauer. Nicht abgerufene Daten, die älter als 24 Stunden sind, können jederzeit entfernt werden.
+ Wenn Sie den kundenverwalteten Schlüssel deaktivieren oder zum Löschen planen, werden Time-to-Live (TTL)-Löschungen für 30 Minuten fortgesetzt. Diese TTL-Löschungen werden weiterhin an DynamoDB Streams ausgegeben und unterliegen dem Standardintervall. trimming/retention 

  Weitere Informationen finden Sie unter [Aktivieren von Schlüsseln](/kms/latest/developerguide/enabling-keys.html) und [Löschen von Schlüsseln](/kms/latest/developerguide/deleting-keys.html). 

## Verwenden von KMS-Schlüsseln und Datenschlüsseln
<a name="dynamodb-kms"></a>

Die DynamoDB-Funktion zur Verschlüsselung im Ruhezustand verwendet eine AWS KMS key und eine Hierarchie von Datenschlüsseln, um Ihre Tabellendaten zu schützen. DynamoDB verwendet die gleiche Schlüsselhierarchie zum Schutz von DynamoDB-Streams, globalen Tabellen und Backups, wenn sie auf beständige Medien geschrieben werden.

Wir empfehlen Ihnen, Ihre Verschlüsselungsstrategie zu planen, bevor Sie Ihre Tabelle in DynamoDB implementieren. Wenn Sie sensible oder vertrauliche Daten in DynamoDB speichern, sollten Sie erwägen, eine clientseitige Verschlüsselung in Ihren Plan aufzunehmen. Auf diese Weise können Sie Daten so nah wie möglich an ihrem Ursprung verschlüsseln und den Schutz der Daten während ihres gesamten Lebenszyklus gewährleisten. Weitere Informationen finden Sie in der Dokumentation zum [DynamoDB-Verschlüsselungsclient](https://docs.aws.amazon.com/dynamodb-encryption-client/latest/devguide/what-is-ddb-encrypt.html).

**AWS KMS key**  
Die Verschlüsselung im Ruhezustand schützt Ihre DynamoDB-Tabellen mit einem AWS KMS key. Standardmäßig verwendet DynamoDB einen [AWS-eigener Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk), einen Mehrmandanten-Verschlüsselungsschlüssel, der in einem DynamoDB-Servicekonto erstellt und verwaltet wird. Sie können Ihre DynamoDB-Tabellen jedoch mit einem [vom Kunden verwalteten Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) für DynamoDB (`aws/dynamodb`) in Ihrem AWS-Konto verschlüsseln. Sie können für jede Tabelle einen anderen KMS-Schlüssel auswählen. Der KMS-Schlüssel, den Sie für eine Tabelle auswählen, wird auch zur Verschlüsselung der lokalen und globalen sekundären Indizes, Streams und Backups verwendet.  
Sie wählen den KMS-Schlüssel für eine Tabelle aus, wenn Sie die Tabelle erstellen oder aktualisieren. Sie können den KMS-Schlüssel für eine Tabelle jederzeit ändern, entweder in der DynamoDB-Konsole oder mithilfe des [UpdateTable](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateTable.html)Vorgangs. Der Vorgang des Schlüsselwechsels ist nahtlos und erfolgt ohne Ausfallzeiten oder Beeinträchtigung des Service.  
DynamoDB unterstützt nur [symmetrische KMS-Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#symmetric-cmks). Sie können keinen [asymmetrischen KMS-Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html#asymmetric-cmks) verwenden, um Ihre DynamoDB-Tabellen zu verschlüsseln. 
Verwenden Sie einen kundenverwalteten KMS-Schlüssel, um die folgenden Funktionen zu erhalten:  
+ Sie erstellen und verwalten den KMS-Schlüssel, einschließlich der Einstellung der [Schlüsselrichtlinien](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html), [IAM-Richtlinien](https://docs.aws.amazon.com/kms/latest/developerguide/iam-policies.html) und [Erteilungen](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html), um den Zugriff auf den KMS-Schlüssel zu steuern. Sie können den KMS-Schlüssel [aktivieren und deaktivieren](https://docs.aws.amazon.com/kms/latest/developerguide/enabling-keys.html), die [automatische Schlüsseldrehung](https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html) aktivieren und deaktivieren und [den KMS-Schlüssel löschen](https://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html), wenn er nicht mehr verwendet wird.
+ Sie können einen kundenverwalteten Schlüssel mit [importiertem Schlüsselmaterial](https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html) oder einen kundenverwalteten Schlüssel in einem [benutzerdefinierten Schlüsselspeicher](https://docs.aws.amazon.com/kms/latest/developerguide/custom-key-store-overview.html) verwenden, den Sie besitzen und verwalten. 
+ [Sie können die Verschlüsselung und Entschlüsselung Ihrer DynamoDB-Tabelle überprüfen, indem Sie die DynamoDB-API-Aufrufe in Logs untersuchen. AWS KMSAWS CloudTrail](https://docs.aws.amazon.com/kms/latest/developerguide/services-dynamodb.html#dynamodb-cmk-trail)
Verwenden Sie die, Von AWS verwalteter Schlüssel wenn Sie eine der folgenden Funktionen benötigen:  
+ Sie können [den KMS-Schlüssel anzeigen](https://docs.aws.amazon.com/kms/latest/developerguide/viewing-keys.html) und [seine Schlüsselrichtlinie anzeigen](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-viewing.html). (Sie können die Schlüsselrichtlinie nicht ändern.)
+ [Sie können die Verschlüsselung und Entschlüsselung Ihrer DynamoDB-Tabelle überprüfen, indem Sie die DynamoDB-API-Aufrufe in Logs untersuchen. AWS KMSAWS CloudTrail](https://docs.aws.amazon.com/kms/latest/developerguide/services-dynamodb.html#dynamodb-cmk-trail)
[Sie ist jedoch kostenlos und ihre Nutzung AWS-eigener Schlüssel wird nicht auf Ressourcen- oder Anforderungskontingente angerechnet AWS KMS .](https://docs.aws.amazon.com/kms/latest/developerguide/limits.html) Vom Kunden verwaltete Schlüssel, für die für jeden API-Aufruf [eine Von AWS verwaltete Schlüssel Gebühr](https://aws.amazon.com/kms/pricing/) anfällt. Für diese KMS-Schlüssel gelten AWS KMS Kontingente.

**Tabellenschlüssel**  
DynamoDB verwendet den KMS-Schlüssel, der als *Tabellenschlüssel* bezeichnet wird, zum [Generieren](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html) und Verschlüsseln eines eindeutigen [Datenschlüssels](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#data-keys) für die Tabelle. Der Tabellenschlüssel bleibt für die Lebensdauer der verschlüsselten Tabelle bestehen.   
Der Tabellenschlüssel wird als Schlüssel-Verschlüsselungsschlüssel verwendet. DynamoDB verwendet diesen Tabellenschlüssel zum Schutz von Daten-Verschlüsselungsschlüsseln, die zum Verschlüsseln der Tabellendaten verwendet werden. DynamoDB generiert einen eindeutigen Datenverschlüsselungsschlüssel für jede zugrunde liegende Struktur in einer Tabelle, mehrere Tabellenelemente können jedoch vom gleichen Datenverschlüsselungsschlüssel geschützt werden.  

![\[Verschlüsseln einer DynamoDB-Tabelle per Verschlüsselung im Ruhezustand\]](http://docs.aws.amazon.com/de_de/amazondynamodb/latest/developerguide/images/service-ddb-encrypt.png)

Wenn Sie zum ersten Mal auf eine verschlüsselte Tabelle zugreifen, sendet DynamoDB eine Anfrage an, den KMS-Schlüssel AWS KMS zum Entschlüsseln des Tabellenschlüssels zu verwenden. Anschließend wird der Klartext-Tabellenschlüssel zum Entschlüsseln der Datenverschlüsselungsschlüssel verwendet und die Klartext-Datenverschlüsselungsschlüssel werden zum Entschlüsseln der Tabellendaten verwendet.  
DynamoDB speichert und verwendet den Tabellenschlüssel und die Datenverschlüsselungsschlüssel außerhalb von. AWS KMS Alle Schlüssel werden mit [Advanced Encryption Standard](https://en.wikipedia.org/wiki/Advanced_Encryption_Standard) (AES)-Verschlüsselung und 256-Bit-Verschlüsselungsschlüsseln geschützt. Anschließend werden die verschlüsselten Schlüssel zusammen mit den verschlüsselten Daten gespeichert, damit sie bei Bedarf für die Entschlüsselung der Tabellendaten verfügbar sind.  
Wenn Sie den KMS-Schlüssel für Ihre Tabelle ändern, generiert DynamoDB einen neuen Tabellenschlüssel. Anschließend wird der neue Tabellenschlüssel verwendet, um die Datenverschlüsselungsschlüssel neu zu verschlüsseln.

**Tabellenschlüssel-Caching**  
Um zu vermeiden, dass AWS KMS jede DynamoDB-Operation aufgerufen wird, speichert DynamoDB die Klartext-Tabellenschlüssel für jeden Aufrufer im Speicher zwischen. Wenn DynamoDB nach fünf Minuten Inaktivität eine Anfrage für den zwischengespeicherten Tabellenschlüssel erhält, sendet es eine neue Anfrage an, um den Tabellenschlüssel AWS KMS zu entschlüsseln. Dieser Aufruf erfasst alle Änderungen, die seit der letzten Anforderung zur Entschlüsselung des Tabellenschlüssels an den Zugriffsrichtlinien des KMS-Schlüssels in AWS KMS oder AWS Identity and Access Management (IAM) vorgenommen wurden.

## Autorisieren der Nutzung Ihres KMS-Schlüssels
<a name="dynamodb-kms-authz"></a>

Wenn Sie einen [kundenverwalteten Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) oder den [Von AWS verwalteter Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk)-verwalteten Schlüssel in Ihrem Konto zum Schutz Ihrer DynamoDB-Tabelle verwenden, müssen die Richtlinien für diesen KMS-Schlüssel DynamoDB zu seiner Verwendung in Ihrem Namen berechtigen. Der Autorisierungskontext auf dem Von AWS verwalteter Schlüssel für DynamoDB umfasst seine wichtigsten Richtlinien und Berechtigungen, mit denen die Berechtigungen zu seiner Verwendung delegiert werden. 

Sie haben die volle Kontrolle über die Richtlinien und Erteilungen für einen kundenverwalteten Schlüssel. Nachdem der Von AWS verwalteter Schlüssel in Ihrem Konto ist, können Sie die seine Richtlinien und Erteilungen anzeigen. Da er jedoch von verwaltet wird AWS, können Sie die Richtlinien nicht ändern.

DynamoDB benötigt keine zusätzliche Autorisierung, um den Standard zum Schutz der DynamoDB-Tabellen in Ihrem [AWS-eigener Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#kms_keys)zu verwenden. AWS-Konto

**Topics**
+ [

### Wichtige Richtlinie für ein Von AWS verwalteter Schlüssel
](#dynamodb-policies)
+ [

### Schlüsselrichtlinie für einen kundenverwalteten Schlüssel
](#dynamodb-customer-cmk-policy)
+ [

### Verwenden von Erteilungen zum Autorisieren von DynamoDB
](#dynamodb-grants)

### Wichtige Richtlinie für ein Von AWS verwalteter Schlüssel
<a name="dynamodb-policies"></a>

Wenn DynamoDB den [Von AWS verwalteter Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) für DynamoDB (`aws/dynamodb`) in kryptografischen Operationen verwendet, geschieht dies im Auftrag des Benutzers, der auf die [DynamoDB-Ressource](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/access-control-overview.html) zugreift. Die wichtigste Richtlinie für Von AWS verwalteter Schlüssel gibt allen Benutzern des Kontos die Erlaubnis, das Von AWS verwalteter Schlüssel für bestimmte Operationen zu verwenden. Die Berechtigung wird aber nur gewährt, wenn DynamoDB die Anforderung für den Benutzer ausgibt. Die [ViaService Bedingung](https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms-via-service) in der Schlüsselrichtlinie erlaubt es keinem Benutzer, die zu verwenden, Von AWS verwalteter Schlüssel es sei denn, die Anforderung stammt vom DynamoDB-Dienst.

Diese wichtige Richtlinie wurde, wie alle Richtlinien Von AWS verwaltete Schlüssel, von festgelegt. AWS Sie können sie nicht ändern, aber jederzeit anzeigen. Details dazu finden Sie unter [Anzeigen einer Schlüsselrichtlinie](https://docs.aws.amazon.com//kms/latest/developerguide/key-policy-viewing.html).

Die Richtlinienanweisungen in der Schlüsselrichtlinie haben folgende Wirkungen:
+ Erlauben Sie Benutzern im Konto, Von AWS verwalteter Schlüssel for DynamoDB in kryptografischen Vorgängen zu verwenden, wenn die Anforderung von DynamoDB in ihrem Namen kommt. Die Richtlinie erlaubt Benutzern auch das [Erstellen von Erteilungen](https://docs.aws.amazon.com/kms/latest/developerguide/services-dynamodb.html#dynamodb-grants) für den KMS-Schlüssel.
+ Ermöglicht es autorisierten IAM-Identitäten im Konto, die Eigenschaften des Von AWS verwalteter Schlüssel für DynamoDB anzuzeigen und [die Erteilung zu widerrufen](https://docs.aws.amazon.com/kms/latest/APIReference/API_RevokeGrant.html), die DynamoDB die Verwendung des KMS-Schlüssels erlaubt. DynamoDB verwendet [Erteilungen](https://docs.aws.amazon.com/kms/latest/developerguide/services-dynamodb.html#dynamodb-grants) für laufende Wartungsoperationen.
+ Ermöglicht DynamoDB, schreibgeschützte Operationen durchzuführen, um die Von AWS verwalteter Schlüssel für DynamoDB in Ihrem Konto zu finden.

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Id" : "auto-dynamodb-1",
  "Statement" : [ {
    "Sid" : "Allow access through Amazon DynamoDB for all principals in the account that are authorized to use Amazon DynamoDB",
    "Effect" : "Allow",
    "Principal" : {
      "AWS" : "*"
    },
    "Action" : [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:CreateGrant", "kms:DescribeKey" ],
    "Resource" : "*",
    "Condition" : {
      "StringEquals" : {
        "kms:CallerAccount" : "111122223333",
        "kms:ViaService" : "dynamodb.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" : "*"
  }, {
    "Sid" : "Allow DynamoDB Service with service principal name dynamodb.amazonaws.com to describe the key directly",
    "Effect" : "Allow",
    "Principal" : {
      "Service" : "dynamodb.amazonaws.com"
    },
    "Action" : [ "kms:Describe*", "kms:Get*", "kms:List*" ],
    "Resource" : "*"
  } ]
}
```

------

### Schlüsselrichtlinie für einen kundenverwalteten Schlüssel
<a name="dynamodb-customer-cmk-policy"></a>

Wenn Sie einen [kundenverwalteten KMS-Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) zum Schutz einer DynamoDB-Tabelle auswählen, erhält DynamoDB die Berechtigung, den KMS-Schlüssel im Namen des Prinzipals zu verwenden, der die Auswahl trifft. Dieser Prinzipal, ein Benutzer oder eine Rolle, muss über die Berechtigungen für den KMS-Schlüssel verfügen, die DynamoDB benötigt. Sie können diese Berechtigungen in einer [Schlüsselrichtlinie](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html), einer [IAM-Richtlinie](https://docs.aws.amazon.com/kms/latest/developerguide/iam-policies.html) oder einer [Erteilung](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html) bereitstellen.

DynamoDB erfordert mindestens die folgenden Berechtigungen für einen kundenverwalteten Schlüssel:
+ [kms:Encrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Encrypt.html)
+ [kms:Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html)
+ [kms](https://docs.aws.amazon.com/kms/latest/APIReference/API_ReEncrypt.html): \$1 (für und) ReEncrypt kms: ReEncryptFrom kms: ReEncryptTo
+ kms: GenerateDataKey \$1 (für [kms: GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html) und [kms: GenerateDataKeyWithoutPlaintext](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKeyWithoutPlaintext.html))
+ [km: DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html)
+ [km: CreateGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html)

Beispielsweise bietet die folgende Beispiel-Schlüsselrichtlinie nur die erforderlichen Berechtigungen. Die Richtlinie hat folgende Auswirkungen:
+ Erlaubt DynamoDB die Verwendung des KMS-Schlüssels in kryptografischen Operationen und das Erstellen von Erteilungen, jedoch nur, wenn es im Auftrag von Prinzipalen im Konto handelt, die über die Berechtigung zur Verwendung von DynamoDB verfügen. Wenn die in der Richtlinienanweisung angegebenen Prinzipale nicht zur Verwendung von DynamoDB berechtigt sind, schlägt der Aufruf selbst dann fehl, wenn er vom DynamoDB-Service stammt. 
+ Der ViaService Bedingungsschlüssel [kms:](https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms-via-service) erlaubt die Berechtigungen nur, wenn die Anforderung von DynamoDB im Namen der in der Richtlinienerklärung aufgeführten Prinzipale kommt. Diese Prinzipale können diese Operationen nicht direkt aufrufen. Beachten Sie, dass der `kms:ViaService`-Wert, `dynamodb.*.amazonaws.com`, in der Region-Position ein Sternchen (\$1) hat. DynamoDB benötigt die Berechtigung, unabhängig von einem bestimmten Objekt zu sein, AWS-Region damit es regionsübergreifende Aufrufe zur Unterstützung globaler [DynamoDB-Tabellen](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GlobalTables.html) durchführen kann.
+ Gewährt den KMS-Schlüsseladministratoren (Benutzer, die die `db-team`-Rolle annehmen können) schreibgeschützten Zugriff auf den KMS-Schlüssel und die Berechtigung, Erteilungen zu widerrufen, einschließlich der [Erteilungen, die DynamoDB zum Schutz der Tabelle benötigt](#dynamodb-grants).

Bevor Sie eine Beispielschlüsselrichtlinie verwenden, ersetzen Sie die Beispielprinzipale durch tatsächliche Prinzipale aus Ihrer. AWS-Konto

------
#### [ JSON ]

****  

```
{
  "Id": "key-policy-dynamodb",
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid" : "Allow access through Amazon DynamoDB for all principals in the account that are authorized to use Amazon DynamoDB",
      "Effect": "Allow",
      "Principal": {"AWS": "arn:aws:iam::111122223333:user/db-lead"},
      "Action": [
        "kms:Encrypt",
        "kms:Decrypt",
        "kms:ReEncrypt*",
        "kms:GenerateDataKey*",
        "kms:DescribeKey",
        "kms:CreateGrant"
      ],
      "Resource": "*",      
      "Condition": { 
         "StringLike": {
           "kms:ViaService" : "dynamodb.*.amazonaws.com"
         }
      }
    },
    {
      "Sid":  "Allow administrators to view the KMS key and revoke grants",
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::111122223333:role/db-team"
       },
      "Action": [
        "kms:Describe*",
        "kms:Get*",
        "kms:List*",
        "kms:RevokeGrant"
      ],
      "Resource": "*"
    }
  ]
}
```

------

### Verwenden von Erteilungen zum Autorisieren von DynamoDB
<a name="dynamodb-grants"></a>

Zusätzlich zu den Schlüsselrichtlinien verwendet DynamoDB Erteilungen, um Berechtigungen für einen kundenverwalteten KMS-Schlüssel oder den Von AWS verwalteter Schlüssel -verwalteten Schlüssel für DynamoDB festzulegen (`aws/dynamodb`). Verwenden Sie den Vorgang, um die Zuweisungen für einen KMS-Schlüssel in Ihrem Konto anzuzeigen. [ListGrants](https://docs.aws.amazon.com/kms/latest/APIReference/API_ListGrants.html) DynamoDB benötigt keine Erteilungen oder zusätzliche Berechtigungen, um die [AWS-eigener Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk) zum Schutz Ihrer Tabellen zu verwenden.

DynamoDB verwendet die Berechtigungen aus der Erteilung zur Ausführung von Hintergrundsystemwartung und kontinuierlichen Datenschutzaufgaben. Außerdem werden Erteilungen verwenden, um [Tabellenschlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/services-dynamodb.html#dynamodb-encrypt) zu generieren.

Jede Erteilung ist tabellenspezifisch. Wenn in Ihrem Konto mehrere Tabellen mit demselben KMS-Schlüssel verschlüsselt sind, ist eine Erteilung für jede Art von Tabelle vorhanden. Die Gewährung wird durch den [DynamoDB-Verschlüsselungskontext](#dynamodb-encryption-context) eingeschränkt, der den Tabellennamen und die AWS-Konto ID umfasst, und sie beinhaltet die Berechtigung, [die Grant zurückzuziehen](https://docs.aws.amazon.com/kms/latest/APIReference/API_RetireGrant.html), wenn sie nicht mehr benötigt wird. 

Zum Erstellen von Erteilungen muss DynamoDB zum Aufrufen von `CreateGrant` im Auftrag des Benutzers berechtigt sein, der die verschlüsselte Tabelle erstellt hat. Denn Von AWS verwaltete Schlüssel DynamoDB erhält die `kms:CreateGrant` Erlaubnis von der [Schlüsselrichtlinie](#dynamodb-policies), die es Kontonutzern erlaubt, den KMS-Schlüssel nur dann [CreateGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html)aufzurufen, wenn DynamoDB die Anfrage im Namen eines autorisierten Benutzers stellt. 

Die Schlüsselrichtlinie kann es dem Konto auch erlauben, die [Erteilung für den KMS-Schlüssel zu widerrufen](https://docs.aws.amazon.com/kms/latest/APIReference/API_RevokeGrant.html). Wenn Sie jedoch die Erteilung für eine aktive verschlüsselte Tabelle widerrufen, kann DynamoDB die Tabelle nicht mehr schützen und pflegen.

## DynamoDB-Verschlüsselungsclient
<a name="dynamodb-encryption-context"></a>

Ein [Verschlüsselungskontext](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context) ist eine Gruppe von Schlüssel/Wert-Paaren mit willkürlichen, nicht geheimen Daten. Wenn Sie einen Verschlüsselungskontext in eine Datenverschlüsselungsanforderung aufnehmen, 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. 

DynamoDB verwendet bei allen AWS KMS kryptografischen Vorgängen denselben Verschlüsselungskontext. Wenn Sie einen [kundenverwalteten Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) oder einen [Von AWS verwalteter Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk)-verwalteten Schlüssel zum Schutz Ihrer DynamoDB-Tabelle verwenden, können Sie anhand des Verschlüsselungskontexts die Verwendung des KMS-Schlüssels in Prüfungs-Datensätzen und -Protokollen identifizieren. Es erscheint auch im Klartext in Protokollen wie [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)[Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html). 

Der Verschlüsselungskontext kann auch als Bedingung für die Autorisierung in Richtlinien und Erteilungen verwendet werden. DynamoDB verwendet den Verschlüsselungskontext, um die Berechtigungen einzuschränken, die [den](#dynamodb-grants) Zugriff auf den vom Kunden verwalteten Schlüssel oder Von AWS verwalteter Schlüssel in Ihrem Konto und Ihrer Region ermöglichen.

In seinen Anfragen an AWS KMS verwendet DynamoDB einen Verschlüsselungskontext mit zwei Schlüssel-Wert-Paaren.

```
"encryptionContextSubset": {
    "aws:dynamodb:tableName": "Books"
    "aws:dynamodb:subscriberId": "111122223333"
}
```
+ **Tabelle**: Das erste Schlüssel-Wert-Paar gibt die Tabelle an, die DynamoDB verschlüsselt. Der Schlüssel lautet `aws:dynamodb:tableName`. Der Wert ist der Name der Tabelle.

  ```
  "aws:dynamodb:tableName": "<table-name>"
  ```

  Beispiel:

  ```
  "aws:dynamodb:tableName": "Books"
  ```
+ **Konto** – Das zweite Schlüssel-Wert-Paar identifiziert das AWS-Konto. Der Schlüssel lautet `aws:dynamodb:subscriberId`. Der Wert ist die Konto-ID.

  ```
  "aws:dynamodb:subscriberId": "<account-id>"
  ```

  Beispiel:

  ```
  "aws:dynamodb:subscriberId": "111122223333"
  ```

## Überwachen der DynamoDB-Interaktion mit AWS KMS
<a name="dynamodb-cmk-trail"></a>

Wenn Sie einen vom [Kunden verwalteten Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) oder einen [Von AWS verwalteter Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk)zum Schutz Ihrer DynamoDB-Tabellen verwenden, können Sie mithilfe von AWS CloudTrail Protokollen die Anfragen verfolgen, an die DynamoDB in Ihrem Namen sendet. AWS KMS 

Die Anforderungen `GenerateDataKey`, `Decrypt` und `CreateGrant` werden in diesem Abschnitt beschrieben. Darüber hinaus ermittelt DynamoDB mithilfe eines [DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html)Vorgangs, ob der von Ihnen ausgewählte KMS-Schlüssel im Konto und in der Region vorhanden ist. Außerdem wird ein [RetireGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_RetireGrant.html)Vorgang verwendet, um einen Zuschuss zu entfernen, wenn Sie eine Tabelle löschen. 

**GenerateDataKey**  
Wenn Sie die Verschlüsselung im Ruhezustand für eine Tabelle aktivieren, erstellt DynamoDB einen eindeutigen Tabellenschlüssel. Es sendet eine *[GenerateDataKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_GenerateDataKey.html)*Anfrage an AWS KMS , die den KMS-Schlüssel für die Tabelle angibt.   
Das Ereignis, das die `GenerateDataKey`-Operation aufzeichnet, ähnelt dem folgenden Beispielereignis. Der Benutzer ist das DynamoDB-Servicekonto. Die Parameter enthalten den Amazon-Ressourcennamen (ARN) des KMS-Schlüssels, einen Schlüsselbezeichner, der einen 256-Bit-Schlüssel benötigt, und den [Verschlüsselungskontext](#dynamodb-encryption-context), der die Tabelle und das AWS-Konto identifiziert.  

```
{
    "eventVersion": "1.05",
    "userIdentity": {
        "type": "AWSService", 
        "invokedBy": "dynamodb.amazonaws.com" 
    },
    "eventTime": "2018-02-14T00:15:17Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "GenerateDataKey",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "dynamodb.amazonaws.com",
    "userAgent": "dynamodb.amazonaws.com",
    "requestParameters": {
        "encryptionContext": {
            "aws:dynamodb:tableName": "Services",
            "aws:dynamodb:subscriberId": "111122223333"
        }, 
        "keySpec": "AES_256", 
        "keyId": "1234abcd-12ab-34cd-56ef-1234567890ab"
    }, 
    "responseElements": null,
    "requestID": "229386c1-111c-11e8-9e21-c11ed5a52190",
    "eventID": "e3c436e9-ebca-494e-9457-8123a1f5e979",
    "readOnly": true,
    "resources": [
        {
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
            "accountId": "111122223333",
            "type": "AWS::KMS::Key" 
        } 
    ],
    "eventType": "AwsApiCall",
    "recipientAccountId": "111122223333",
    "sharedEventID": "bf915fa6-6ceb-4659-8912-e36b69846aad"
}
```

**Decrypt**  
Wenn Sie auf eine verschlüsselte DynamoDB-Tabelle zugreifen, muss DynamoDB den Tabellenschlüssel entschlüsseln, damit die in der Hierarchie tiefer angeordneten Schlüssel entschlüsselt werden können. Anschließend werden die Daten in der Tabelle entschlüsselt. Entschlüsseln des Tabellenschlüssels DynamoDB sendet eine [Decrypt-Anfrage](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) an AWS KMS , die den KMS-Schlüssel für die Tabelle angibt.  
Das Ereignis, das die `Decrypt`-Operation aufzeichnet, ähnelt dem folgenden Beispielereignis. Der Benutzer ist Ihr Hauptbenutzer, der auf AWS-Konto die Tabelle zugreift. Zu den Parametern gehören der verschlüsselte Tabellenschlüssel (als Chiffretext-Blob) und der [Verschlüsselungskontext](#dynamodb-encryption-context), der die Tabelle und den identifiziert. AWS-Konto AWS KMS leitet die ID des KMS-Schlüssels aus dem Chiffretext ab.   

```
{
    "eventVersion": "1.05",
    "userIdentity": {
        "type": "AssumedRole",
        "principalId": "AROAIGDTESTANDEXAMPLE:user01",
        "arn": "arn:aws:sts::111122223333:assumed-role/Admin/user01",
        "accountId": "111122223333",
        "accessKeyId": "AKIAIOSFODNN7EXAMPLE",
        "sessionContext": {
            "attributes": {
                "mfaAuthenticated": "false", 
                "creationDate": "2018-02-14T16:42:15Z"
            },
            "sessionIssuer": {
                "type": "Role",
                "principalId": "AROAIGDT3HGFQZX4RY6RU",
                "arn": "arn:aws:iam::111122223333:role/Admin",
                "accountId": "111122223333",
                "userName": "Admin" 
            }
        },
        "invokedBy": "dynamodb.amazonaws.com"
    },
    "eventTime": "2018-02-14T16:42:39Z",
    "eventSource": "kms.amazonaws.com",
    "eventName": "Decrypt",
    "awsRegion": "us-west-2",
    "sourceIPAddress": "dynamodb.amazonaws.com",
    "userAgent": "dynamodb.amazonaws.com",
    "requestParameters": 
    {
        "encryptionContext":
        {
            "aws:dynamodb:tableName": "Books",
            "aws:dynamodb:subscriberId": "111122223333" 
        }
    }, 
    "responseElements": null, 
    "requestID": "11cab293-11a6-11e8-8386-13160d3e5db5",
    "eventID": "b7d16574-e887-4b5b-a064-bf92f8ec9ad3", 
    "readOnly": true, 
    "resources": [ 
        {
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
            "accountId": "111122223333", 
            "type": "AWS::KMS::Key" 
        }
    ],
    "eventType": "AwsApiCall", 
    "recipientAccountId": "111122223333"
}
```

**CreateGrant**  
Wenn Sie einen [kundenverwalteten Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk) oder einen [Von AWS verwalteter Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) zum Schutz Ihrer DynamoDB-Tabelle verwenden, verwendet DynamoDB [Erteilungen](#dynamodb-grants), um dem Service die Ausführung von Aufgaben für kontinuierlichen Datenschutz, Wartung und Haltbarkeit zu erlauben. Diese Erteilungen sind für [AWS-eigener Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-owned-cmk) nicht erforderlich.  
Die von DynamoDB erstellten Erteilungen sind tabellenspezifisch. Der Principal in der [CreateGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html)Anfrage ist der Benutzer, der die Tabelle erstellt hat.   
Das Ereignis, das die `CreateGrant`-Operation aufzeichnet, ähnelt dem folgenden Beispielereignis. Die Parameter enthalten den Amazon-Ressourcennamen (ARN) des KMS-Schlüssels für die Tabelle, den Empfänger-Prinzipal und den ausscheidenden Prinzipal (der DynamoDB-Service) sowie die Operationen, für die die Erteilung gilt. Enthalten ist auch eine Beschränkung, die für alle Verschlüsselungsoperationen den angegebenen [Verschlüsselungskontext](#dynamodb-encryption-context) voraussetzt.  

```
{ 
    "eventVersion": "1.05", 
    "userIdentity": 
    { 
        "type": "AssumedRole", 
        "principalId": "AROAIGDTESTANDEXAMPLE:user01", 
        "arn": "arn:aws:sts::111122223333:assumed-role/Admin/user01", 
        "accountId": "111122223333", 
        "accessKeyId": "AKIAIOSFODNN7EXAMPLE", 
        "sessionContext": { 
            "attributes": { 
                "mfaAuthenticated": "false", 
                "creationDate": "2018-02-14T00:12:02Z" 
            }, 
            "sessionIssuer": { 
                "type": "Role", 
                "principalId": "AROAIGDTESTANDEXAMPLE", 
                "arn": "arn:aws:iam::111122223333:role/Admin", 
                "accountId": "111122223333", 
                "userName": "Admin" 
            }
        }, 
        "invokedBy": "dynamodb.amazonaws.com" 
    }, 
    "eventTime": "2018-02-14T00:15:15Z", 
    "eventSource": "kms.amazonaws.com", 
    "eventName": "CreateGrant", 
    "awsRegion": "us-west-2", 
    "sourceIPAddress": "dynamodb.amazonaws.com", 
    "userAgent": "dynamodb.amazonaws.com", 
    "requestParameters": { 
        "keyId": "1234abcd-12ab-34cd-56ef-1234567890ab", 
        "retiringPrincipal": "dynamodb.us-west-2.amazonaws.com", 
        "constraints": { 
            "encryptionContextSubset": {
                "aws:dynamodb:tableName": "Books",
                "aws:dynamodb:subscriberId": "111122223333" 
            } 
        }, 
        "granteePrincipal": "dynamodb.us-west-2.amazonaws.com", 
        "operations": [ 
            "DescribeKey", 
            "GenerateDataKey", 
            "Decrypt", 
            "Encrypt", 
            "ReEncryptFrom", 
            "ReEncryptTo", 
            "RetireGrant" 
        ] 
    }, 
    "responseElements": { 
        "grantId": "5c5cd4a3d68e65e77795f5ccc2516dff057308172b0cd107c85b5215c6e48bde" 
    }, 
    "requestID": "2192b82a-111c-11e8-a528-f398979205d8", 
    "eventID": "a03d65c3-9fee-4111-9816-8bf96b73df01", 
    "readOnly": false, 
    "resources": [ 
        { 
            "ARN": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab",
            "accountId": "111122223333", 
            "type": "AWS::KMS::Key" 
        } 
    ], 
    "eventType": "AwsApiCall",
    "recipientAccountId": "111122223333"
}
```

# Verwalten von verschlüsselten Tabellen in DynamoDB
<a name="encryption.tutorial"></a>

Sie können das AWS-Managementkonsole oder das AWS Command Line Interface (AWS CLI) verwenden, um den Verschlüsselungsschlüssel für neue Tabellen anzugeben und die Verschlüsselungsschlüssel für bestehende Tabellen in Amazon DynamoDB zu aktualisieren.

**Topics**
+ [

## Angeben des Verschlüsselungsschlüssels für eine neue Tabelle
](#encryption.tutorial-creating)
+ [

## Aktualisieren eines Verschlüsselungsschlüssels
](#encryption.tutorial-update)

## Angeben des Verschlüsselungsschlüssels für eine neue Tabelle
<a name="encryption.tutorial-creating"></a>

Führen Sie die folgenden Schritte aus, um den Verschlüsselungsschlüssel für eine neue Tabelle mithilfe der Amazon-DynamoDB-Konsole oder AWS CLI.

### Erstellen einer verschlüsselten Tabelle (Konsole)
<a name="encryption.tutorial-console"></a>

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die DynamoDB-Konsole unter. [https://console.aws.amazon.com/dynamodb/](https://console.aws.amazon.com/dynamodb/)

1.  Klicken Sie im Navigationsbereich auf der linken Seite der Konsole auf **Tabellen**.

1. Wählen Sie **Create Table** (Tabelle erstellen) aus. Geben Sie für **Table name (Tabellenname)** den Namen **Music** ein. Geben Sie als Primärschlüssel **Artist** und als Sortierschlüssel **SongTitle** ein, beide als Zeichenfolgen.

1. Stellen sie in **Einstellungen** sicher, dass **Einstellungen anpassen** ausgewählt ist.
**Anmerkung**  
Wenn **„Standardeinstellungen verwenden**“ ausgewählt ist, werden Tabellen im Ruhezustand ohne zusätzliche AWS-eigener Schlüssel Kosten verschlüsselt.

1. Wählen Sie **unter Verschlüsselung im Ruhezustand** einen Verschlüsselungstyp - AWS-eigener Schlüssel Von AWS verwalteter Schlüssel, oder einen vom Kunden verwalteten Schlüssel aus.
   +  **Gehört Amazon DynamoDB.** AWS eigener Schlüssel, der speziell DynamoDB gehört und von DynamoDB verwaltet wird. Für die Verwendung dieses Schlüssels wird Ihnen keine zusätzliche Gebühr berechnet.
   + **AWS verwalteter Schlüssel**. Schlüssel-Alias: `aws/dynamodb` Der Schlüssel ist in Ihrem Konto gespeichert und wird von AWS Key Management Service (AWS KMS) verwaltet. AWS KMS Es fallen Gebühren an.
   +  **In Ihrem Konto gespeichert, in Ihrem Besitz und von Ihnen verwaltet.** Vom Kunden verwalteter Schlüssel. Der Schlüssel ist in Ihrem Konto gespeichert und wird von AWS Key Management Service (AWS KMS) verwaltet. AWS KMS Es fallen Gebühren an.
**Anmerkung**  
Wenn Sie Ihren eigenen Schlüssel besitzen und verwalten möchten, stellen Sie sicher, dass die KMS-Schlüsselrichtlinie ordnungsgemäß festgelegt ist. Weitere Informationen sowie Beispiele finden Sie unter [Schlüsselrichtlinie für einen kundenverwalteten Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk).

1. Wählen Sie **Create table** (Tabelle erstellen) , um die verschlüsselte Tabelle zu erstellen. Um den Verschlüsselungstyp zu bestimmen, wählen Sie die Tabellendetails auf der Registerkarte **Übersicht** und überprüfen Sie den Abschnitt **Weitere Details**.

### Erstellen einer verschlüsselten Tabelle (AWS CLI)
<a name="encryption.tutorial-cli"></a>

Verwenden Sie die AWS CLI , um eine Tabelle mit dem Standard- AWS-eigener Schlüssel Von AWS verwalteter Schlüssel, dem oder einem vom Kunden verwalteten Schlüssel für Amazon DynamoDB zu erstellen.

**Um eine verschlüsselte Tabelle mit dem Standard zu erstellen AWS-eigener Schlüssel**
+ Erstellen Sie die verschlüsselte `Music`-Tabelle folgendermaßen.

  ```
  aws dynamodb create-table \
    --table-name Music \
    --attribute-definitions \
        AttributeName=Artist,AttributeType=S \
        AttributeName=SongTitle,AttributeType=S \
    --key-schema \
        AttributeName=Artist,KeyType=HASH \
        AttributeName=SongTitle,KeyType=RANGE \
    --provisioned-throughput \
        ReadCapacityUnits=10,WriteCapacityUnits=5
  ```
**Anmerkung**  
Diese Tabelle ist jetzt mit dem Standard AWS-eigener Schlüssel im DynamoDB-Dienstkonto verschlüsselt.

**Um eine verschlüsselte Tabelle mit dem Von AWS verwalteter Schlüssel für DynamoDB zu erstellen**
+ Erstellen Sie die verschlüsselte `Music`-Tabelle folgendermaßen.

  ```
  aws dynamodb create-table \
    --table-name Music \
    --attribute-definitions \
        AttributeName=Artist,AttributeType=S \
        AttributeName=SongTitle,AttributeType=S \
    --key-schema \
        AttributeName=Artist,KeyType=HASH \
        AttributeName=SongTitle,KeyType=RANGE \
    --provisioned-throughput \
        ReadCapacityUnits=10,WriteCapacityUnits=5 \
    --sse-specification Enabled=true,SSEType=KMS
  ```

   Der `SSEDescription`-Status der Tabellenbeschreibung ist auf `ENABLED` festgelegt und der `SSEType` ist `KMS`. 

  ```
  "SSEDescription": {
    "SSEType": "KMS",
    "Status": "ENABLED",
    "KMSMasterKeyArn": "arn:aws:kms:us-east-1:123456789012:key/abcd1234-abcd-1234-a123-ab1234a1b234",
  }
  ```

**So erstellen Sie eine verschlüsselte Tabelle mit einem kundenverwalteten Schlüssel für DynamoDB**
+ Erstellen Sie die verschlüsselte `Music`-Tabelle folgendermaßen.

  ```
  aws dynamodb create-table \
    --table-name Music \
    --attribute-definitions \
        AttributeName=Artist,AttributeType=S \
        AttributeName=SongTitle,AttributeType=S \
    --key-schema \
        AttributeName=Artist,KeyType=HASH \
        AttributeName=SongTitle,KeyType=RANGE \
    --provisioned-throughput \
        ReadCapacityUnits=10,WriteCapacityUnits=5 \
    --sse-specification Enabled=true,SSEType=KMS,KMSMasterKeyId=abcd1234-abcd-1234-a123-ab1234a1b234
  ```
**Anmerkung**  
Für die `KMSMasterKeyId` können Sie eine Schlüssel-ID, einen Schlüssel-ARN oder einen Schlüsselalias verwenden. Wenn Sie einen Schlüsselalias verwenden (z. B.`alias/my-key`), löst DynamoDB den Alias auf und ordnet den zugrunde liegenden AWS KMS Schlüssel der Tabelle zu. In der Tabellenbeschreibung `KMSMasterKeyArn` wird immer der Schlüssel-ARN des aufgelösten Schlüssels angezeigt, nicht der Alias. Weitere Informationen zu Schlüsselkennungen finden Sie unter [Schlüsselkennungen (KeyId)](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id) im *AWS Key Management Service Entwicklerhandbuch*.

   Der `SSEDescription`-Status der Tabellenbeschreibung ist auf `ENABLED` festgelegt und der `SSEType` ist `KMS`.

  ```
  "SSEDescription": {
    "SSEType": "KMS",
    "Status": "ENABLED",
    "KMSMasterKeyArn": "arn:aws:kms:us-east-1:123456789012:key/abcd1234-abcd-1234-a123-ab1234a1b234",
  }
  ```

## Aktualisieren eines Verschlüsselungsschlüssels
<a name="encryption.tutorial-update"></a>

Sie können auch die DynamoDB-Konsole oder die verwenden AWS CLI , um die Verschlüsselungsschlüssel einer vorhandenen Tabelle zwischen einem AWS-eigener Schlüssel Von AWS verwalteter Schlüssel, und einem vom Kunden verwalteten Schlüssel jederzeit zu aktualisieren.

### Aktualisieren eines Verschlüsselungsschlüssels (Konsole)
<a name="encryption.tutorial-update-console"></a>

1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die DynamoDB-Konsole unter. [https://console.aws.amazon.com/dynamodb/](https://console.aws.amazon.com/dynamodb/)

1.  Klicken Sie im Navigationsbereich auf der linken Seite der Konsole auf **Tabellen**.

1. Wählen Sie die Tabelle, die Sie aktualisieren möchten.

1. Wählen Sie **Aktionen** aus dem Dropdown-Menü und wählen Sie dann die Option **Aktualisieren von Einstellungen**.

1. Wechseln Sie zur Registerkarte **Zusätzliche Einstellungen**.

1. Wählen Sie unter **Verschlüsselung** **Verwalten der Verschlüsselung** aus.

1. Wählen Sie einen Verschlüsselungstyp aus:
   +  **Im Besitz von Amazon DynamoDB.** Der AWS KMS Schlüssel gehört DynamoDB und wird von DynamoDB verwaltet. Für die Verwendung dieses Schlüssels wird Ihnen keine zusätzliche Gebühr berechnet.
   + **AWS verwalteter Schlüssel Schlüsselalias**:. `aws/dynamodb` Der Schlüssel ist in Ihrem Konto gespeichert und wird von verwaltet AWS Key Management Service. (AWS KMS). AWS KMS Gebühren fallen an.
   +  **In Ihrem Konto gespeichert, in Ihrem Besitz und von Ihnen verwaltet.** Der Schlüssel ist in Ihrem Konto gespeichert und wird von verwaltet AWS Key Management Service. (AWS KMS). AWS KMS Gebühren fallen an.
**Anmerkung**  
Wenn Sie Ihren eigenen Schlüssel besitzen und verwalten möchten, stellen Sie sicher, dass die KMS-Schlüsselrichtlinie ordnungsgemäß festgelegt ist. Weitere Informationen finden Sie unter [Schlüsselrichtlinie für einen kundenverwalteten Schlüssel](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk).

   Wählen Sie dann **Save** (Speichern) um die verschlüsselte Tabelle zu aktualisieren. Um den Verschlüsselungstyp zu bestimmen, überprüfen Sie die Tabellendetails auf der Registerkarte **Overview (Übersicht)**.

### Aktualisieren eines Verschlüsselungsschlüssels (AWS CLI)
<a name="encryption.tutorial-update-cli"></a>

Das folgende Beispiel zeigt das Aktualisieren einer verschlüsselten Tabelle mit der AWS CLI.

**Um eine verschlüsselte Tabelle mit dem Standard zu aktualisieren AWS-eigener Schlüssel**
+ Aktualisieren Sie die verschlüsselte `Music`-Tabelle wie im folgenden Beispiel.

  ```
  aws dynamodb update-table \
    --table-name Music \
    --sse-specification Enabled=false
  ```
**Anmerkung**  
Diese Tabelle ist jetzt mit dem Standard AWS-eigener Schlüssel im DynamoDB-Dienstkonto verschlüsselt.

**Um eine verschlüsselte Tabelle mit dem Von AWS verwalteter Schlüssel für DynamoDB zu aktualisieren**
+ Aktualisieren Sie die verschlüsselte `Music`-Tabelle wie im folgenden Beispiel.

  ```
  aws dynamodb update-table \
    --table-name Music \
    --sse-specification Enabled=true
  ```

   Der `SSEDescription`-Status der Tabellenbeschreibung ist auf `ENABLED` festgelegt und der `SSEType` ist `KMS`.

  ```
  "SSEDescription": {
    "SSEType": "KMS",
    "Status": "ENABLED",
    "KMSMasterKeyArn": "arn:aws:kms:us-east-1:123456789012:key/abcd1234-abcd-1234-a123-ab1234a1b234",
  }
  ```

**Um eine verschlüsselte Tabelle mit einem kundenverwalteten Schlüssel für DynamoDB zu aktualisieren**
+ Aktualisieren Sie die verschlüsselte `Music`-Tabelle wie im folgenden Beispiel.

  ```
  aws dynamodb update-table \
    --table-name Music \
    --sse-specification Enabled=true,SSEType=KMS,KMSMasterKeyId=abcd1234-abcd-1234-a123-ab1234a1b234
  ```
**Anmerkung**  
Für die `KMSMasterKeyId` können Sie eine Schlüssel-ID, einen Schlüssel-ARN oder einen Schlüsselalias verwenden. Wenn Sie einen Schlüsselalias verwenden (z. B.`alias/my-key`), löst DynamoDB den Alias auf und ordnet den zugrunde liegenden AWS KMS Schlüssel der Tabelle zu. In der Tabellenbeschreibung `KMSMasterKeyArn` wird immer der Schlüssel-ARN des aufgelösten Schlüssels angezeigt, nicht der Alias.

   Der `SSEDescription`-Status der Tabellenbeschreibung ist auf `ENABLED` festgelegt und der `SSEType` ist `KMS`. 

  ```
  "SSEDescription": {
    "SSEType": "KMS",
    "Status": "ENABLED",
    "KMSMasterKeyArn": "arn:aws:kms:us-east-1:123456789012:key/abcd1234-abcd-1234-a123-ab1234a1b234",
  }
  ```