View a markdown version of this page

Amazon DocumentDB-Cluster-Snapshots teilen - Amazon DocumentDB

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.

Amazon DocumentDB-Cluster-Snapshots teilen

Mithilfe von Amazon DocumentDB können Sie einen manuellen Cluster-Snapshot auf folgende Weise teilen:

  • Durch das Teilen eines manuellen Cluster-Snapshots, ob verschlüsselt oder unverschlüsselt, können autorisierte AWS Konten den Snapshot kopieren.

  • Durch die gemeinsame Nutzung eines manuellen Cluster-Snapshots, ob verschlüsselt oder unverschlüsselt, können autorisierte AWS Konten einen Cluster direkt aus dem Snapshot wiederherstellen, anstatt eine Kopie davon zu erstellen und von dort aus wiederherzustellen.

Anmerkung

Um einen automatisierten Cluster-Snapshot gemeinsam zu nutzen, erstellen Sie einen manuellen Cluster-Snapshot, indem Sie den automatisierten Snapshot kopieren und diese Kopie dann gemeinsam nutzen. Dieser Vorgang gilt auch für durch AWS Backups generierte Ressourcen.

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

Wenn Sie manuelle Snapshots mit anderen AWS-Konten teilen und Sie einen Cluster mithilfe der AWS CLI oder der Amazon DocumentDB-API aus einem gemeinsam genutzten Snapshot wiederherstellen, müssen Sie den Amazon-Ressourcennamen (ARN) des gemeinsam genutzten Snapshots als Snapshot-ID angeben.

Freigeben eines verschlüsselten Snapshots

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 keinen Snapshot teilen, der mit dem AWS KMS Standardverschlüsselungsschlüssel des Kontos verschlüsselt wurde, das den Snapshot geteilt hat.

Führen Sie die folgenden Schritte aus, um verschlüsselte Snapshots freizugeben.

  1. Teilen Sie den Verschlüsselungsschlüssel AWS Key Management Service (AWS KMS), der zum Verschlüsseln des Snapshots verwendet wurde, mit allen Konten, die auf den Snapshot zugreifen sollen.

    Sie können AWS KMS Verschlüsselungsschlüssel mit anderen AWS Konten teilen, indem Sie die anderen Konten zur AWS KMS Schlüsselrichtlinie hinzufügen. Einzelheiten zum Aktualisieren einer Schlüsselrichtlinie finden Sie im AWS Key Management Service Entwicklerhandbuch unter Verwenden von Schlüsselrichtlinien in AWS KMS. Ein Beispiel für die Erstellung einer Schlüsselrichtlinie finden Sie unter Erstellen einer IAM-Richtlinie, um das Kopieren des verschlüsselten Snapshots zu erlauben an späterer Stelle in diesem Thema.

  2. Verwenden Sie AWS CLI, wie unten gezeigt, um den verschlüsselten Snapshot mit den anderen Konten zu teilen.

Ermöglichen Sie den Zugriff auf eine AWS KMS Verschlüsselungsschlüssel

Damit ein anderer AWS-Konto Benutzer einen verschlüsselten Snapshot kopieren kann, der von Ihrem Konto aus geteilt wurde, muss das Konto, mit dem Sie Ihren Snapshot teilen, Zugriff auf den AWS KMS Schlüssel haben, mit dem der Snapshot verschlüsselt wurde. Um einem anderen Konto den Zugriff auf einen AWS KMS Schlüssel zu ermöglichen, aktualisieren Sie die Schlüsselrichtlinie für den AWS KMS Schlüssel mit dem ARN des Kontos, für das Sie als Principal in der AWS KMS Schlüsselrichtlinie den Schlüssel verwenden. Lassen Sie anschließend die Aktion kms:CreateGrant zu.

Nachdem Sie einem Konto Zugriff auf Ihren AWS KMS Verschlüsselungsschlüssel gewährt haben, muss dieses Konto einen AWS Identity and Access Management (IAM-) Benutzer erstellen, um Ihren verschlüsselten Snapshot zu kopieren, sofern es noch keinen hat. Darüber hinaus muss dieses Konto diesem IAM-Benutzer eine IAM-Richtlinie zuordnen, die es dem Benutzer ermöglicht, einen verschlüsselten Snapshot mithilfe Ihres Schlüssels zu kopieren. AWS KMS Das Konto muss ein IAM-Benutzer sein und kann aufgrund von Sicherheitsbeschränkungen keine AWS-Konto Root-Identität sein. AWS KMS

Im folgenden Beispiel für eine Schlüsselrichtlinie ist der Benutzer 123451234512 der Besitzer des Verschlüsselungsschlüssels. AWS KMS Bei Benutzer 123456789012 handelt es sich um das Konto, für das der Schlüssel freigegeben wird. Diese aktualisierte Schlüsselrichtlinie gewährt dem Konto Zugriff auf den Schlüssel. AWS KMS Dazu wird der ARN für die AWS-Konto Stammidentität des Benutzers 123456789012 als Prinzipal für die Richtlinie angegeben und die Aktion zugelassen. kms:CreateGrant

JSON
{ "Id": "key-policy-1", "Version":"2012-10-17", "Statement": [ { "Sid": "Allow use of the key", "Effect": "Allow", "Principal": {"AWS": [ "arn:aws:iam::123451234512:user/KeyUser", "arn:aws:iam::123456789012: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::123451234512:user/KeyUser", "arn:aws:iam::123456789012: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 erlauben

Wenn die externe Person Zugriff auf Ihren AWS KMS Schlüssel AWS-Konto hat, kann der Besitzer dieses Kontos eine Richtlinie erstellen, die es einem für das Konto erstellten IAM-Benutzer ermöglicht, einen verschlüsselten Snapshot zu kopieren, der mit diesem Schlüssel verschlüsselt ist. AWS KMS

Das folgende Beispiel zeigt eine Richtlinie, die an einen IAM-Benutzer für AWS-Konto 123456789012 angehängt werden kann. Die Richtlinie ermöglicht es dem IAM-Benutzer, einen gemeinsam genutzten Snapshot vom Konto 123451234512 zu kopieren, der mit dem Schlüssel in der Region us-west-2 verschlüsselt wurde. AWS KMS c989c1dd-a3f2-4a5d-8d96-e793d082ab26

JSON
{ "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:123451234512:key/c989c1dd-a3f2-4a5d-8d96-e793d082ab26"] }, { "Sid": "AllowAttachmentOfPersistentResources", "Effect": "Allow", "Action": [ "kms:CreateGrant", "kms:ListGrants", "kms:RevokeGrant" ], "Resource": ["arn:aws:kms:us-west-2:123451234512:key/c989c1dd-a3f2-4a5d-8d96-e793d082ab26"], "Condition": { "Bool": { "kms:GrantIsForAWSResource": true } } } ] }

Einzelheiten zum Aktualisieren einer Schlüsselrichtlinie finden Sie im Entwicklerhandbuch unter Verwenden wichtiger Richtlinien. AWS KMS AWS Key Management Service

Freigeben eines Snapshots

Sie können einen manuellen Amazon DocumentDB-Cluster-Snapshot (oder eine Kopie eines automatisierten Snapshots) teilen, indem Sie den AWS-Managementkonsole oder den AWS CLI:

Using the AWS-Managementkonsole

Gehen Sie wie folgt vor AWS-Managementkonsole, um einen Snapshot mithilfe von zu teilen:

  1. Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon DocumentDB-Konsole unter https://console.aws.amazon.com/docdb.

  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 im Dropdownmenü Aktionen die Option Teilen aus.

  5. Wählen Sie eine der folgenden Optionen für die Sichtbarkeit von DB-Snapshots:

    • Wenn die Quelle unverschlüsselt ist, wählen Sie Öffentlich, damit alle AWS Konten einen Cluster aus Ihrem manuellen Snapshot wiederherstellen können. Oder wählen Sie Privat, um nur AWS Konten zu erlauben, die Sie angeben, einen Cluster aus Ihrem manuellen Snapshot wiederherzustellen.

      Warnung

      Wenn Sie die Sichtbarkeit von DB-Snapshots auf Öffentlich setzen, können alle AWS Konten einen Cluster aus Ihrem manuellen Snapshot wiederherstellen und haben Zugriff auf Ihre Daten. Geben Sie keine manuellen Cluster-Snapshots, die private Informationen enthalten, als öffentlich frei.

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

      Anmerkung

      Snapshots, die mit der Standardverschlüsselung verschlüsselt wurden, AWS KMS key können nicht geteilt werden.

  6. Geben Sie AWS unter Konto-ID die AWS Konto-ID für ein Konto ein, dem Sie die Wiederherstellung eines Clusters aus Ihrem manuellen Snapshot gestatten möchten, und wählen Sie dann Hinzufügen aus. Wiederholen Sie diesen Vorgang, um weitere AWS Kontokennungen hinzuzufügen, bis zu 20 AWS Konten.

    Wenn Ihnen beim Hinzufügen einer AWS Konto-ID zur Liste der zulässigen Konten ein Fehler unterläuft, können Sie sie aus der Liste löschen, indem Sie rechts neben der falschen AWS Konto-ID auf Löschen klicken.

    Diagramm: Snapshot-Einstellungen teilen
  7. Nachdem Sie Kennungen für alle AWS Konten hinzugefügt haben, denen Sie die Wiederherstellung des manuellen Snapshots gestatten möchten, wählen Sie Speichern, um Ihre Änderungen zu speichern.

Using the AWS CLI

Um einen Snapshot mithilfe von zu teilen AWS CLI, verwenden Sie den Amazon DocumentDB-Vorgangmodify-db-snapshot-attribute. Verwenden Sie den --values-to-add Parameter, um eine Liste der IDs für die hinzuzufügen AWS-Konten , die zur Wiederherstellung des manuellen Snapshots autorisiert sind.

Im folgenden Beispiel sind zwei AWS-Konto Bezeichner, 123451234512 und 123456789012, zulässig, um den benannten Snapshot wiederherzustellen. manual-snapshot1 Außerdem wird der all-Attributwert entfernt, um den Snapshot als privat zu markieren.

Für Linux, macOS oder Unix:

aws docdb modify-db-cluster-snapshot-attribute \ --db-cluster-snapshot-identifier sample-cluster-snapshot \ --attribute-name restore \ --values-to-add '["123451234512","123456789012"]'

Für Windows:

aws docdb modify-db-cluster-snapshot-attribute ^ --db-cluster-snapshot-identifier sample-cluster-snapshot ^ --attribute-name restore ^ --values-to-add '["123451234512","123456789012"]'

Die Ausgabe dieser Operation sieht in etwa folgendermaßen aus.

{ "DBClusterSnapshotAttributesResult": { "DBClusterSnapshotIdentifier": "sample-cluster-snapshot", "DBClusterSnapshotAttributes": [ { "AttributeName": "restore", "AttributeValues": [ "123451234512", "123456789012" ] } ] } }

Verwenden Sie den Parameter, um einen AWS-Konto Bezeichner aus der Liste zu entfernen. --values-to-remove Das folgende Beispiel verhindert, dass die AWS-Konto ID 123456789012 den Snapshot wiederherstellt.

Für Linux, macOS oder Unix:

aws docdb modify-db-cluster-snapshot-attribute \ --db-cluster-snapshot-identifier sample-cluster-snapshot \ --attribute-name restore \ --values-to-remove '["123456789012"]'

Für Windows:

aws docdb modify-db-cluster-snapshot-attribute ^ --db-cluster-snapshot-identifier sample-cluster-snapshot ^ --attribute-name restore ^ --values-to-remove '["123456789012"]'

Die Ausgabe dieser Operation sieht in etwa folgendermaßen aus.

{ "DBClusterSnapshotAttributesResult": { "DBClusterSnapshotIdentifier": "sample-cluster-snapshot", "DBClusterSnapshotAttributes": [ { "AttributeName": "restore", "AttributeValues": [ "123451234512" ] } ] } }