Bewährte Methoden für vorbeugende DynamoDB-Sicherheitsmaßnahmen - Amazon-DynamoDB

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.

Bewährte Methoden für vorbeugende DynamoDB-Sicherheitsmaßnahmen

Die folgenden bewährten Methoden können Ihnen helfen, Sicherheitsvorfälle in Amazon DynamoDB zu antizipieren und zu verhindern.

Verschlüsselung im Ruhezustand

DynamoDB verschlüsselt im Ruhezustand alle Benutzerdaten, die in Tabellen, Indexen, Streams und Backups gespeichert sind, mithilfe von Verschlüsselungsschlüsseln, die in AWS Key Management Service (AWS KMS) gespeichert sind. Dies bietet eine zusätzliche Datenschutzebene, indem Ihre Daten vor unbefugtem Zugriff auf den zugrunde liegenden Speicher geschützt werden.

Sie können angeben, ob DynamoDB einen AWS-eigener Schlüssel (Standardverschlüsselungstyp), einen oder einen Von AWS verwalteter Schlüssel vom Kunden verwalteten Schlüssel zum Verschlüsseln von Benutzerdaten verwenden soll. Weitere Informationen finden Sie unter Amazon DynamoDB-Verschlüsselung im Ruhezustand.

Verwenden von IAM-Rollen zum Authentifizieren des Zugriffs auf DynamoDB

Damit Benutzer, Anwendungen und andere AWS Dienste auf DynamoDB zugreifen können, müssen sie gültige AWS Anmeldeinformationen in ihren AWS API-Anfragen angeben. Sie sollten AWS Anmeldeinformationen nicht direkt in der Anwendung oder EC2-Instance speichern. Dies sind langfristige Anmeldeinformationen, die nicht automatisch rotiert werden und daher erhebliche geschäftliche Auswirkungen haben können, wenn sie kompromittiert werden. Mit einer IAM-Rolle können Sie temporäre Zugriffsschlüssel abrufen, die für den Zugriff auf AWS Dienste und Ressourcen verwendet werden können.

Weitere Informationen finden Sie unter Identity and Access Management für Amazon DynamoDB.

Verwenden von IAM-Richtlinien für die DynamoDB-Basisautorisierung

Beim Erteilen von Berechtigungen entscheiden Sie, wer sie erhält, für welche DynamoDB-APIs sie Berechtigungen erhalten und welche spezifischen Aktionen Sie für diese Ressourcen zulassen möchten. Die Implementierung der geringsten Rechte ist der Schlüssel zur Verringerung des Sicherheitsrisikos und der Auswirkungen, die sich aus Fehlern oder böswilligen Absichten ergeben können.

Weisen Sie IAM-Identitäten (d. h. Benutzern, Gruppen und Rollen) Berechtigungsrichtlinien zu und erteilen Sie somit Berechtigungen zum Ausführen von Operationen für DynamoDB-Ressourcen.

Sie können dies wie folgt tun:

Verwenden von IAM-Richtlinienbedingungen für eine differenzierte Zugriffssteuerung

Wenn Sie in DynamoDB Berechtigungen gewähren, können Sie Bedingungen angeben, die bestimmen, wie eine Berechtigungsrichtlinie wirksam wird. Die Implementierung der geringsten Rechte ist der Schlüssel zur Verringerung des Sicherheitsrisikos und der Auswirkungen, die sich aus Fehlern oder böswilligen Absichten ergeben können.

Sie können Bedingungen angeben, wenn Sie Berechtigungen mithilfe einer IAM-Richtlinie erteilen. Sie können z. B. Folgendes tun:

  • Erteilen Sie Berechtigungen, um Benutzern schreibgeschützten Zugriff auf bestimmte Elemente und Attribute in einer Tabelle oder einem sekundären Index zu gewähren.

  • Erteilen von Berechtigungen, damit den Benutzern lesegeschützter Zugriff auf bestimmte Attribute in einer Tabelle, basierend auf der Identität dieses Benutzers, gewährt wird.

Weitere Informationen finden Sie unter Verwenden von IAM-Richtlinienbedingungen für die differenzierte Zugriffskontrolle.

Verwenden eines VPC-Endpunkts und Richtlinien für den Zugriff auf DynamoDB

Wenn Sie nur innerhalb einer Virtual Private Cloud (VPC) Zugriff auf DynamoDB benötigen, sollten Sie einen VPC-Endpunkt verwenden, um den Zugriff nur von der erforderlichen VPC aus zu beschränken. Dadurch wird verhindert, dass Datenverkehr durch das offene Internet gelangt und dieser Umgebung unterliegt.

Wenn Sie einen VPC Endpunkt für DynamoDB verwenden, können Sie den Zugriff mithilfe der folgenden Optionen steuern und einschränken:

  • VPC Endpunktrichtlinien — Diese Richtlinien werden auf den DynamoDB-VPC-Endpunkt angewendet. Mit ihnen können Sie den API-Zugriff auf die DynamoDB-Tabelle steuern und einschränken.

  • IAM-Richtlinien – Mit der aws:sourceVpce-Bedingung für Richtlinien, die Benutzer, Gruppen oder Rollen zugeordnet sind, können Sie erzwingen, dass der gesamte Zugriff auf die DynamoDB-Tabelle über den angegebenen VPC-Endpunkt erfolgt.

Weitere Informationen finden Sie unter Endpunkte für Amazon DynamoDB.

Clientseitige Verschlüsselung in Betracht ziehen

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. Die Verschlüsselung Ihrer sensiblen Daten während der Übertragung und im Ruhezustand stellt sicher, dass Ihre Klartextdaten nicht für Dritte verfügbar sind.

Das AWS  Database Encryption SDK for DynamoDB ist eine Software-Bibliothek, die Ihnen dabei hilft, Ihre Tabellendaten zu schützen, bevor Sie sie an DynamoDB senden. Es verschlüsselt, signiert, verifiziert und entschlüsselt Ihre DynamoDB-Tabellenelemente. Sie steuern, welche Attribute verschlüsselt und signiert werden.

Überlegungen zu den wichtigsten wichtigsten Aspekten

Verwenden Sie in Ihrem Primärschlüssel für Ihre Tabelle und globale Sekundärindizes keine vertraulichen Namen oder vertraulichen Klartextdaten. Schlüsselnamen werden in Ihrer Tabellendefinition angezeigt. Die Namen der Primärschlüssel sind beispielsweise für jeden zugänglich, der über die erforderlichen Zugriffsrechte verfügt DescribeTable. Schlüsselwerte können in Ihren AWS CloudTrailund anderen Protokollen auftauchen. Darüber hinaus verwendet DynamoDB die Schlüsselwerte, um Daten zu verteilen und Anfragen weiterzuleiten, und AWS Administratoren können die Werte beachten, um die Integrität des Dienstes aufrechtzuerhalten.

Wenn Sie vertrauliche Daten in Ihrer Tabelle oder Ihren GSI-Schlüsselwerten verwenden müssen, empfehlen wir die Verwendung von end-to-end Client-Verschlüsselung. Auf diese Weise können Sie Schlüsselwertverweise auf Ihre Daten durchführen und gleichzeitig sicherstellen, dass sie in Ihren DynamoDB-bezogenen Protokollen niemals unverschlüsselt erscheinen. Eine Möglichkeit, dies zu erreichen, besteht darin, das AWS Database Encryption SDK für DynamoDB zu verwenden, aber das ist nicht erforderlich. Wenn Sie Ihre eigene Lösung verwenden, sollten wir immer einen ausreichend sicheren Verschlüsselungsalgorithmus verwenden. Sie sollten keine nicht-kryptografische Option wie einen Hash verwenden, da diese in den meisten Situationen als nicht ausreichend sicher angesehen werden.

Wenn Ihre Primärschlüsselnamen vertraulich sind, empfehlen wir, stattdessen `pk` und `sk` zu verwenden. Dies ist eine allgemeine bewährte Methode, die das Design Ihres Partitionsschlüssels flexibel macht.

Wenden Sie sich immer an Ihre Sicherheitsexperten oder Ihr AWS Kundenbetreuungsteam, wenn Sie sich nicht sicher sind, welche Wahl die richtige wäre.