Verschlüsseln von Amazon RDS-Ressourcen - Amazon Relational Database Service

Verschlüsseln von Amazon RDS-Ressourcen

Amazon RDS kann Ihre Amazon RDS-DB-Instances verschlüsseln. Daten, die im Ruhezustand verschlüsselt werden, umfassen den zugehörigen Speicherplatz von DB-Instances sowie deren automatisierte Backups, Lesereplikate und Snapshots.

Amazon RDS-verschlüsselte DB-Instances verwenden den standardmäßig in der Branche verwendeten AES-256-Verschlüsselungsalgorithmus, um Ihre Daten auf dem Server zu verschlüsseln, der Ihre Amazon RDS-DB-Instances hostet. Sobald Sie die Daten verschlüsselt haben, übernimmt Amazon RDS die Authentifizierung des Zugriffs und die Entschlüsselung Ihrer Daten auf transparente Art und Weise und mit minimaler Auswirkung auf die Leistung. Sie müssen Ihre Datenbank-Client-Anwendungen nicht ändern, um Verschlüsselung anzuwenden.

Anmerkung

Bei verschlüsselten und unverschlüsselten DB-Instances- werden Daten zwischen der Quelle und den Lesereplikaten verschlüsselt, auch wenn die Replikation AWS-regionsübergreifend erfolgt.

Übersicht über die Verschlüsselung von Amazon RDS-Ressourcen

Amazon RDS-verschlüsselte DB-Instances bieten zusätzlichen Datenschutz, indem Sie Ihre Daten vor unautorisiertem Zugriff auf den zugehörigen Speicherplatz sichern. Sie können die Amazon RDS-Verschlüsselung verwenden, um den Datenschutz für Ihre in der Cloud bereitgestellten Anwendungen zu erhöhen und die Compliance-Anforderungen bei der Verschlüsselung von Daten im Ruhezustand zu erfüllen.

Amazon RDS unterstützt auch die Verschlüsselung einer Oracle- oder SQL Server-DB-Instance mit Transparent Data Encryption (TDE). TDE kann mit Verschlüsselung im Ruhezustande verwendet werden, jedoch kann sich die gleichzeitige Verwendung von TDE mit Verschlüsselung im Ruhezustand geringfügig auf die Leistung Ihrer Datenbank auswirken. Sie müssen verschiedene Schlüssel für jede Verschlüsselungsmethode verwalten. Weitere Informationen zu TDE finden Sie unter Oracle Transparent Data Encryption oder Unterstützung für transparente Datenverschlüsselung in SQL Server.

Für eine Amazon-RDS-verschlüsselte DB-Instance werden alle Protokolle, Backups und Snapshots verschlüsselt. Amazon RDS verwendet eine AWS KMS key, um diese Ressourcen zu verschlüsseln. Weitere Informationen über KMS-Schlüssel finden Sie unter AWS KMS keys im AWS Key Management Service Developer Guide. Wenn Sie einen verschlüsselten Snapshot kopieren, können Sie zum Verschlüsseln des Ziel-Snapshots einen anderen KMS-Schlüssel verwenden als den, der zum Verschlüsseln des Quell-Snapshots verwendet wurde.

Ein Lese-Replikat einer verschlüsselten Amazon RDS-Instanz muss mit demselben KMS-Schlüssel verschlüsselt werden wie die primäre DB-Instanz, wenn sich beide in derselben AWS Region befinden. Wenn sich die primäre DB-Instance und die Lesereplikat in unterschiedlichen AWS Regionen befinden, verschlüsseln Sie das Lesereplikat mit dem KMS-Schlüssel für diese AWS Region.

Sie können eine Von AWS verwalteter Schlüssel verwenden, oder Sie können kundenverwaltete Schlüssel erstellen. Zur Verwaltung der vom Kunden verwalteten Schlüssel, die zum Ver- und Entschlüsseln Ihrer Amazon RDS-Ressourcen verwendet werden, verwenden Sie die AWS Key Management Service (AWS KMS). AWS KMS kombiniert sichere, hochverfügbare Hardware und Software, um ein für die Cloud skaliertes Schlüsselverwaltungssystem bereitzustellen. Mit AWS KMS können Sie kundenverwaltete Schlüssel erstellen und die Richtlinien definieren, die die Verwendung dieser kundenverwalteten Schlüssel steuern. AWS KMS unterstützt CloudTrail, so dass Sie die Verwendung von KMS-Schlüsseln prüfen können, um sicherzustellen, dass die vom Kunden verwalteten Schlüssel ordnungsgemäß verwendet werden. Sie können Ihre vom Kunden verwalteten Schlüssel mit Amazon Aurora und unterstützten AWS Services wie Amazon S3, Amazon EBS und Amazon Redshift verwenden. Eine Liste der Services, die in AWS KMS integriert sind, finden Sie unter AWS-Service-Integration.

Aktivieren der Amazon RDS-Verschlüsselung für eine DB-Instance

Wählen Sie Verschlüsselung aktivieren in der Amazon RDS-Konsole, um die Verschlüsslung für eine neue DB-Instance zu aktivieren. Hinweise zum Erstellen einer DB-Instance finden Sie unter Erstellen einer Amazon RDS-DB-Instance.

Wenn Sie den AWS CLI-Befehl create-db-instance verwenden, um eine verschlüsselte DB-Instance zu erstellen, legen Sie den Parameter --storage-encrypted fest. Wenn Sie die API-Operation CreateDBInstance verwenden, legen Sie den Parameter StorageEncrypted auf „true“ fest.

Wenn Sie eine verschlüsselte DB-Instanz erstellen, können Sie einen vom Kunden verwalteten Schlüssel oder den Von AWS verwalteter Schlüssel für Amazon RDS wählen, um Ihre DB-Instanz zu verschlüsseln. Wenn Sie den Schlüsselbezeichner für einen vom Kunden verwalteten Schlüssel nicht angeben, verwendet Amazon RDS die Von AWS verwalteter Schlüssel für Ihre neue DB-Instanz. Amazon RDS erstellt eine Von AWS verwalteter Schlüssel für Amazon RDS für Ihr AWS Konto. Ihr AWS Konto hat eine andere Von AWS verwalteter Schlüssel für Amazon RDS für jede AWS Region.

Sobald Sie eine verschlüsselte DB-Instanz erstellt haben, können Sie den von dieser DB-Instanz verwendeten KMS-Schlüssel nicht mehr ändern. Stellen Sie daher sicher, dass Sie Ihre KMS-Schlüsselanforderungen bestimmen, bevor Sie Ihre verschlüsselte DB-Instanz erstellen.

Wenn Sie den Befehl AWS CLI create-db-instance verwenden, um eine verschlüsselte DB-Instanz mit einem vom Kunden verwalteten Schlüssel zu erstellen, setzen Sie den Parameter --kms-key-id auf einen beliebigen Schlüsselbezeichner für den KMS-Schlüssel. Wenn Sie den Vorgang Amazon RDS API CreateDBInstance verwenden, setzen Sie den Parameter KmsKeyId auf einen beliebigen Schlüsselbezeichner für den KMS-Schlüssel. Um einen vom Kunden verwalteten Schlüssel in einem anderen AWS-Konto zu verwenden, geben Sie die Schlüssel-ARN oder Alias-ARN an.

Wichtig

Wenn Amazon RDS den Zugriff auf den KMS-Schlüssel für eine DB-Instanz verliert - zum Beispiel, wenn der RDS-Zugriff auf einen KMS-Schlüssel widerrufen wird - geht die verschlüsselte DB-Instanz in einen Endzustand über. In diesem Fall können Sie die DB-Instance nur aus einem Backup wiederherstellen. Wir empfehlen nachdrücklich, dass Sie zu jeder Zeit Backups für verschlüsselte DB-Instances aktiviert lassen, um sich gegen den Datenverlust von verschlüsselten Daten in Ihren Datenbanken abzusichern.

Verfügbarkeit der Amazon RDS-Verschlüsselung

Die Amazon RDS-Verschlüsselung ist aktuell für alle Datenbank-Engines und Speichertypen verfügbar.

Amazon RDS-Verschlüsselung ist für die meisten DB-Instance-Klassen verfügbar. In der folgenden Tabelle sind die DB-Instance-Klassen aufgeführt, die Amazon RDS-Verschlüsselung nicht unterstützen:

Instance-Typ Instance class

Allzweck (M1)

db.m1.small

db.m1.medium

db.m1.large

db.m1.xlarge

Arbeitsspeicheroptimiert (M2)

db.m2.xlarge

db.m2.2xlarge

db.m2.4xlarge

Burstable (T2)

db.t2.micro

Anmerkung

Die Verschlüsselung im Ruhezustand ist für DB-Instance, die mit SQL Server Express Edition laufen, nicht verfügbar.

Einschränkungen von Amazon-RDS-verschlüsselten DB-instances

Folgende Einschränkungen bestehen für Amazon RDS-verschlüsselte DB-Instances:

  • Sie können eine Verschlüsselung für eine Amazon RDS-DB-Instance nur aktivieren, wenn Sie eine erstellen, nicht nachdem die DB-Instance bereits erstellt ist.

    Da es jedoch möglich ist, die Kopie eines unverschlüsselten Snapshots zu verschlüsseln, können Sie quasi eine Verschlüsselung zu einer unverschlüsselten DB-Instance hinzufügen. Dies lässt sich durchführen, indem Sie einen Snapshot von Ihrer DB-Instance erstellen und dann eine verschlüsselte Kopie dieses Snapshots erstellen. Anschließend können Sie Ihre DB-Instance aus dem verschlüsselten Snapshot wiederherstellen und verfügen so über eine verschlüsselte Kopie Ihrer ursprünglichen DB-Instance. Weitere Informationen finden Sie unter Kopieren eines snapshot.

  • Sie können die Verschlüsselung für eine(n) verschlüsselte(n) DB-Instance nicht deaktivieren.

  • Sie können keinen verschlüsselten Snapshot einer/eines unverschlüsselten DB-Instance erstellen.

  • Ein Snapshot eines verschlüsselten DB-Instance muss mit demselben KMS-Schlüssel verschlüsselt werden wie der DB-Instance.

  • Es ist nicht möglich, ein verschlüsseltes Lesereplikat einer unverschlüsselten DB-Instance oder ein unverschlüsseltes Lesereplikat einer verschlüsselten DB-Instance zu erstellen.

  • Verschlüsselte Lesereplikate müssen mit demselben KMS-Schlüssel verschlüsselt werden wie die Quell-DB-Instanz, wenn sich beide in derselben AWS Region befinden.

  • Sie können ein unverschlüsseltes Backup oder einen solchen Snapshot nicht als verschlüsselte DB-Instance wiederherstellen.

  • Um einen verschlüsselten Snapshot von einer AWS Region in eine andere zu kopieren, müssen Sie den KMS-Schlüssel in der Zielregion AWS angeben. Dies liegt daran, dass KMS-Schlüssel spezifisch für die AWS Region sind, in der sie erstellt werden.

    Der Quell-Snapshot bleibt den gesamten Kopiervorgang über verschlüsselt. Amazon RDS verwendet Envelope-Verschlüsselung, um Daten während des Kopiervorgangs zu schützen. Weitere Informationen zur Envelope-Verschlüsselung finden Sie unter Envelope-Verschlüsselung im AWS Key Management Service-Entwicklerhandbuch.

  • Sie können eine(n) verschlüsselte(n) DB-Instance nicht entschlüsseln. Sie können jedoch Daten aus einer/einem verschlüsselten DB-Instance exportieren und die Daten in eine(n) unverschlüsselte(n) DB-Instance importieren.