Freigeben eines DB--Snapshots - Amazon Relational Database Service

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.

Freigeben eines DB--Snapshots

Mithilfe von Amazon RDS können Sie einen manuellen DB-Snapshot wie folgt freigeben:

  • Die Freigabe eines manuellen DB-Snapshots, ob verschlüsselt oder nicht verschlüsselt, ermöglicht autorisierten AWS-Konten, den Snapshot zu kopieren.

  • Die Freigabe eines nicht verschlüsselten manuellen DB-Snapshots ermöglicht autorisierten AWS-Konten die direkte Wiederherstellung einer DB-Instance aus dem Snapshot, statt eine Kopie der DB-Instance zu erstellen und sie aus dieser Kopie wiederherzustellen. Sie können eine DB-Instance jedoch nicht aus einem DB-Snapshot wiederherstellen, der zugleich freigegeben und verschlüsselt ist. Stattdessen können Sie eine Kopie des DB-Snapshots erstellen und die DB-Instance aus der Kopie wiederherstellen.

Anmerkung

Um einen automatisierten DB-Snapshot freizugeben, erstellen Sie einen manuellen DB-Snapshot, indem Sie den automatisierten Snapshot kopieren und diese Kopie dann freigeben. Dieser Vorgang gilt auch für Ressourcen, die von AWS Backup generiert wurden.

Weitere Informationen zum Kopieren von Snapshots finden Sie unter Kopieren eines -Snapshots. Weitere Informationen zum Wiederherstellen einer DB-Instance aus einem DB-Snapshot finden Sie unter Wiederherstellen aus einem DB--Snapshot.

Sie können einen manuellen Snapshot für bis zu 20 weitere AWS-Konten freigeben. Sie können darüber hinaus einen nicht verschlüsselten Snapshot als öffentlich freigeben. Damit ist der Snapshot für alle AWS-Konten verfügbar. Achten Sie bei der Freigabe eines Snapshots als öffentlich darauf, dass in Ihren öffentlichen Snapshots keine privaten Informationen enthalten sind.

Bei der Freigabe manueller Snapshots für andere AWS-Konten gelten die folgenden Einschränkungen:

  • Wenn Sie eine DB-Instance über die AWS Command Line Interface (AWS CLI)- oder Amazon RDS-API aus einem freigegebenen Snapshot wiederherstellen, müssen Sie den Amazon-Ressourcennamen (ARN) des freigegebenen Snapshots als Snapshot-Bezeichner angeben.

  • Sie können keinen DB-Snapshot freigeben, der eine Optionsgruppe mit permanenten oder persistenten Optionen verwendet, mit Ausnahme von Oracle-DB-Instances, die die Option Timezone oder OLS (oder beide) haben.

    Eine permanente Option kann nicht aus einer Optionsgruppe entfernt werden. Optionsgruppen mit persistenten Optionen können nicht mehr aus einer DB-Instance entfernt werden, nachdem die Optionsgruppe der DB-Instance zugewiesen wurde.

    Die folgende Tabelle listet die permanenten und persistenten Optionen und die entsprechenden DB-Engines auf.

    Optionsname Persistent Permanent DB-Engine
    TDE Ja Nein Microsoft SQL Server Enterprise Edition
    TDE Ja Ja Oracle Enterprise Edition
    Zeitzone Ja Ja

    Oracle Enterprise Edition

    Oracle Standard Edition

    Oracle Standard Edition One

    Oracle Standard Edition Two

Bei Oracle-DB-Instances können Sie gemeinsam genutzte DB-Snapshots mit der Option Timezone oder OLS (oder beiden) kopieren. Geben Sie dazu eine Zieloptionengruppe an, die diese Optionen enthält, wenn Sie den DB-Snapshot kopieren. Die OLS ist nur für Oracle DB-Instances permanent und persistent, die Oracle Version 12.2 oder höher ausführen. Weitere Informationen zu diesen Optionen finden Sie unter Oracle-Zeitzone und Oracle Label Security.

Freigeben eines verschlüsselten Snapshots

Sie können DB-Snapshots freigeben, die während der Speicherung mittels des AES-256-Verschlüsselungsalgorithmus verschlüsselt wurden, wie in Verschlüsseln von Amazon RDS-Ressourcen beschrieben. Hierzu müssen Sie die folgenden Schritte ausführen:

  1. Geben Sie den AWS Key Management Service (AWS KMS)-Kundenmasterschlüssel (CMK), der für die Verschlüsselung des Snapshots verwendet wurde, für alle Konten frei, die auf den Snapshot zugreifen können sollen.

    Sie können AWS KMS-CMKs für andere AWS-Konten freigeben, indem Sie die anderen Konten der AWS KMS-Schlüsselrichtlinie hinzufügen. Details zum Aktualisieren einer Schlüsselrichtlinie finden Sie unter Schlüsselrichtlinien im AWS KMS-Entwicklerhandbuch. Ein Beispiel für die Erstellung einer Schlüsselrichtlinie finden Sie unter Gewähren des Zugriffs auf einen AWS KMS-Kundenmasterschlüssel (CMK) an späterer Stelle in diesem Thema.

  2. Mittels der AWS Management Console, AWS CLI oder Amazon RDS-API können Sie den verschlüsselten Snapshot für die anderen Konten freigeben.

Die folgenden Einschränkungen gelten für die Freigabe verschlüsselter Snapshots:

  • Sie können verschlüsselte Snapshots nicht als öffentlich freigeben.

  • Sie können keine Oracle- oder Microsoft SQL Server-Snapshots freigeben, die mittels Transparent Data Encryption (TDE) verschlüsselt sind.

  • Sie können keine Snapshots freigeben, die mittels des Standard-AWS KMS-CMK des AWS-Kontos verschlüsselt wurden, das den Snapshot freigegeben hat.

Gewähren des Zugriffs auf einen AWS KMS-Kundenmasterschlüssel (CMK)

Damit ein anderes AWS-Konto einen verschlüsselten DB-Snapshot kopieren kann, der von Ihrem Konto freigegeben wurde, muss das Konto, für das Sie den Snapshot freigeben, Zugriff auf den AWS KMS-Kundenmasterschlüssel (CMK) besitzen, der den Snapshot verschlüsselt hat. Damit ein anderes AWS-Konto auf einen AWS KMS-CMK zugreifen kann, müssen Sie die Schlüsselrichtlinie für den AWS KMS-CMK mit dem ARN des AWS-Kontos, für das Sie die Freigabe ausführen, auf Principal in der AWS KMS-Schlüsselrichtlinie aktualisieren und anschließend die Aktion kms:CreateGrant zulassen.

Nachdem Sie einem AWS-Konto Zugriff auf Ihren AWS KMS-CMK erteilt haben, muss dieses AWS-Konto einen AWS Identity and Access Management (IAM)-Benutzer erstellen, wenn es noch keinen solchen besitzt, um den verschlüsselten Snapshot kopieren zu können. Zusätzlich muss dieses AWS-Konto diesem IAM-Benutzer auch eine IAM-Richtlinie anfügen, die für den IAM-Benutzer das Kopieren eines verschlüsselten DB-Snapshots mittels Ihres AWS KMS-CMK zulässt. Bei dem Konto muss es sich um einen IAM-Benutzer handeln. Es darf sich aufgrund von AWS KMS-Sicherheitseinschränkungen nicht um eine AWS-Konto-Stammidentität handeln.

Im folgenden Beispiel für eine Schlüsselrichtlinie ist der Benutzer 111122223333 der Besitzer des AWS KMS-CMK und der Benutzer 444455556666 ist das Konto, für das der Schlüssel freigegeben wird. Diese aktualisierte Schlüsselrichtlinie gibt dem AWS-Konto Zugriff auf den AWS KMS-CMK, indem der ARN für die AWS-Konto-Stammidentität für den Benutzer 444455556666 als Principal für die Richtlinie eingeschlossen und die Aktion kms:CreateGrant zugelassen wird.

{ "Id": "key-policy-1", "Version": "2012-10-17", "Statement": [ { "Sid": "Allow use of the key", "Effect": "Allow", "Principal": {"AWS": [ "arn:aws:iam::111122223333:user/KeyUser", "arn:aws:iam::444455556666:root" ]}, "Action": [ "kms:CreateGrant", "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }, { "Sid": "Allow attachment of persistent resources", "Effect": "Allow", "Principal": {"AWS": [ "arn:aws:iam::111122223333:user/KeyUser", "arn:aws:iam::444455556666:root" ]}, "Action": [ "kms:CreateGrant", "kms:ListGrants", "kms:RevokeGrant" ], "Resource": "*", "Condition": {"Bool": {"kms:GrantIsForAWSResource": true}} } ] }

Erstellen einer IAM-Richtlinie, um das Kopieren des verschlüsselten Snapshots zu ermöglichen

Nachdem das externe AWS-Konto Zugriff auf Ihren AWS KMS-Kundenmasterschlüssel (CMK) erhalten hat, kann der Besitzer dieses AWS-Kontos eine Richtlinie erstellen, die einem für das betreffende Konto erstellten IAM-Benutzer das Kopieren eines verschlüsselten Snapshots ermöglicht, der mit diesem AWS KMS-CMK verschlüsselt wurde.

Das folgende Beispiel zeigt eine Richtlinie, die einem IAM-Benutzer für das AWS-Konto 444455556666 angefügt werden kann und dem IAM-Benutzer das Kopieren eines freigegebenen Snapshots aus dem AWS-Konto 111122223333 ermöglicht, das mit dem AWS KMS-CMK c989c1dd-a3f2-4a5d-8d96-e793d082ab26 in der Region us-west-2 verschlüsselt wurde.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowUseOfTheKey", "Effect": "Allow", "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey", "kms:CreateGrant", "kms:RetireGrant" ], "Resource": ["arn:aws:kms:us-west-2:111122223333:key/c989c1dd-a3f2-4a5d-8d96-e793d082ab26"] }, { "Sid": "AllowAttachmentOfPersistentResources", "Effect": "Allow", "Action": [ "kms:CreateGrant", "kms:ListGrants", "kms:RevokeGrant" ], "Resource": ["arn:aws:kms:us-west-2:111122223333:key/c989c1dd-a3f2-4a5d-8d96-e793d082ab26"], "Condition": { "Bool": { "kms:GrantIsForAWSResource": true } } } ] }

Details zum Aktualisieren einer Schlüsselrichtlinie finden Sie unter Schlüsselrichtlinien im AWS KMS-Entwicklerhandbuch.

Freigeben eines Snapshots

Mithilfe der AWS Management Console, der AWS CLI oder der RDS-API geben Sie einen manuellen DB-Snapshot frei.

Mithilfe der Amazon RDS-Konsole geben Sie einen manuellen DB-Snapshot für bis zu 20 AWS-Konten frei. Sie können die Konsole auch verwenden, um die Freigabe eines manuellen Snapshots für ein oder mehrere Konten zu beenden.

Freigeben eines manuellen DB-Snapshots über die Amazon RDS-Konsole

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich die Option Snapshots.

  3. Wählen Sie den manuellen Snapshot, den Sie freigeben möchten.

  4. Wählen Sie unter Actions (Aktionen) die Option Share Snapshots (Snapshot freigeben).

  5. Wählen Sie für DB Snapshot Visibility (Sichtbarkeit des DB-Snapshots) eine der folgenden Optionen.

    • Wenn die Quelle nicht verschlüsselt ist, wählen Sie Öffentlich, um allen AWS-Konten die Wiederherstellung einer DB-Instance aus Ihrem manuellen DB-Snapshot zu ermöglichen, oder Privat, um nur für von Ihnen angegebene AWS-Konten die Wiederherstellung einer DB-Instance aus Ihrem manuellen DB-Snapshot zuzulassen.

      Warnung

      Wenn Sie Sichtbarkeit des DB-Snapshots auf Öffentlich festlegen, können alle AWS-Konten eine DB-Instance aus Ihrem manuellen DB-Snapshot wiederherstellen und auf Ihre Daten zugreifen. Geben Sie keine manuellen DB-Snapshots als Öffentlich frei, die private Informationen enthalten.

    • Ist die Quelle verschlüsselt, ist Sichtbarkeit des DB-Snapshots auf Privat festgelegt, da verschlüsselte Snapshots nicht als öffentlich freigegeben werden können.

  6. Geben Sie in AWS-Konto-ID den AWS-Kontobezeichner für ein Konto ein, für das Sie die Wiederherstellung einer DB-Instance aus Ihrem manuellen Snapshot zulassen möchten, und wählen Sie anschließend Hinzufügen aus. Wiederholen Sie diesen Vorgang, um zusätzliche AWS-Kontobezeichner einzuschließen (bis zu 20 AWS-Konten).

    Wenn Sie beim Hinzufügen eines AWS-Kontobezeichners zur Liste der zulässigen Konten einen Fehler machen, können Sie diesen aus der Liste löschen, indem Sie rechts vom falschen AWS-Kontobezeichner Delete (Löschen) wählen.

    
							AWS-Konten gestatten das Wiederherstellen eines manuellen DB-Snapshots
  7. Nachdem Sie für alle AWS-Konten, für die Sie die Wiederherstellung aus dem manuellen Snapshot zulassen möchten, Bezeichner hinzugefügt haben, wählen Sie Save (Speichern), um Ihre Änderungen zu speichern.

Beenden der Freigabe eines manuellen DB-Snapshots für ein AWS-Konto

  1. Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon RDS-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich die Option Snapshots.

  3. Wählen Sie den manuellen Snapshot, für den Sie die Freigabe beenden möchten.

  4. Wählen Sie die Option Aktionen und anschließend Share Snapshot (Snapshot freigeben) aus.

  5. Um die Berechtigung für ein AWS-Konto zu entfernen, wählen Sie für den AWS-Kontobezeichner des betreffenden Kontos in der Liste der autorisierten Konten Delete (Löschen).

    
						AWS-Konten gestatten das Wiederherstellen eines manuellen DB-Snapshots
  6. Wählen Sie Save (Speichern), um Ihre Änderungen zu speichern.

Um einen DB--Snapshot freizugeben, verwenden Sie den Befehl aws rds modify-db-snapshot-attribute. Nutzen Sie den Parameter --values-to-add, um eine Liste der IDs für die AWS-Konten hinzuzufügen, die zur Wiederherstellung des manuellen Snapshots autorisiert sind.

Im folgenden Beispiel werden zwei AWS-Konto-IDs, 111122223333 und 444455556666, befähigt, den DB-Snapshot namens manual-snapshot1 wiederherzustellen.

Für Linux, macOS oder Unix:

aws rds modify-db-snapshot-attribute \ --db-snapshot-identifier manual-snapshot1 \ --attribute-name restore \ --values-to-add {"111122223333","444455556666"}

Für Windows:

aws rds modify-db-snapshot-attribute ^ --db-snapshot-identifier manual-snapshot1 ^ --attribute-name restore ^ --values-to-add "[\"111122223333\",\"444455556666\"]"
Anmerkung

Bei Verwendung der Windows-Befehlszeile müssen doppelte Anführungszeichen (") im JSON-Code mit einem umgekehrten Schrägstrich (\) als Escape-Zeichen versehen werden.

Verwenden Sie den Parameter --values-to-remove, um eine AWS-Konto-ID aus der Liste zu entfernen. Im folgenden Beispiel wird verhindert, dass die AWS-Konto-ID 444455556666 den Snapshot wiederherstellt.

Für Linux, macOS oder Unix:

aws rds modify-db-snapshot-attribute \ --db-snapshot-identifier manual-snapshot1 \ --attribute-name restore \ --values-to-remove {"444455556666"}

Für Windows:

aws rds modify-db-snapshot-attribute ^ --db-snapshot-identifier manual-snapshot1 ^ --attribute-name restore ^ --values-to-remove "[\"444455556666\"]"
Anmerkung

Bei Verwendung der Windows-Befehlszeile müssen doppelte Anführungszeichen (") im JSON-Code mit einem umgekehrten Schrägstrich (\) als Escape-Zeichen versehen werden.

Um die AWS-Konten aufzulisten, die befähigt wurden, einen Snapshot wiederherzustellen, verwenden Sie den Befehl describe-db-snapshot-attributes AWS CLI.

Sie können einen manuellen DB-Snapshot auch über die Amazon RDS-API für andere AWS-Konten freigeben. Rufen Sie dazu die Operation ModifyDBSnapshotAttribute auf. Geben Sie restore für AttributeName an und verwenden Sie den Parameter ValuesToAdd, um eine Liste der IDs für die AWS-Konten hinzuzufügen, die zur Wiederherstellung des manuellen Snapshots autorisiert sind.

Um einen manuellen Snapshot öffentlich zu machen, sodass alle AWS-Konten ihn wiederherstellen können, verwenden Sie den Wert all. Achten Sie jedoch darauf, den Wert all keinen manuellen Snapshots hinzuzufügen, die private Informationen enthalten, die nicht für alle AWS-Konten verfügbar sein sollen. Darüber hinaus sollten Sie all nicht für verschlüsselte Snapshots angeben, da die öffentliche Bereitstellung dieser Snapshots nicht unterstützt wird.

Um die Freigabeberechtigung für ein AWS-Konto zu entfernen, verwenden Sie die Operation ModifyDBSnapshotAttribute , wobei AttributeName auf restore festgelegt ist und der Parameter ValuesToRemove angegeben ist. Um einen manuellen Snapshot als privat zu markieren, entfernen Sie den Wert all aus der Liste der Werte für das Attribut restore.

Um alle AWS-Konten aufzulisten, denen die Wiederherstellung eines Snapshots gestattet ist, verwenden Sie die API-Operation DescribeDBSnapshotAttributes .