Konfigurieren einer Replikation bei Buckets in verschiedenen Konten - Amazon Simple Storage Service

Konfigurieren einer Replikation bei Buckets in verschiedenen Konten

Eine Live-Replikation ist ein automatisches, asynchrones und Bucket-übergreifendes Kopieren von Objekten in derselben oder in unterschiedlichen AWS-Regionen. Eine Live-Replikation kopiert neu erstellte Objekte und Objektaktualisierungen aus einem Quell-Bucket in einen Ziel-Bucket oder mehrere Buckets. Weitere Informationen finden Sie unter Replizieren von Objekten innerhalb und zwischen Regionen.

Wenn Sie die Replikation konfigurieren, fügen Sie dem Quell-Bucket Replikationsregeln hinzu. Replikationsregeln definieren, welche Quell-Bucket-Objekte repliziert werden sollen, und den Ziel-Bucket/die Ziel-Buckets, in dem/denen die replizierten Objekte gespeichert werden sollen. Sie können eine Regel erstellen, um alle Objekte in einem Bucket oder eine Untermenge von Objekten mit einem spezifischen Schlüsselnamenpräfixen, einem oder mehreren Objekt-Markierungen oder beidem zu replizieren. Ein Ziel-Bucket kann sich im selben AWS-Konto wie der Quell-Bucket befinden, oder er kann sich in einem anderen Konto befinden.

Wenn Sie angeben, dass eine Objektversions-ID gelöscht werden soll, löscht Amazon S3 diese Objektversion im Quell-Bucket. Es repliziert die Löschung aber nicht im Ziel-Bucket. Anders ausgedrückt: Dieselbe Objektversion wird im Ziel-Bucket nicht gelöscht. Dies schützt Daten vor missbräuchlichen Löschungen.

Wenn Sie einem Bucket eine Replikationsregel hinzufügen, ist diese standardmäßig aktiviert, sodass sie ausgeführt wird, sobald Sie sie speichern.

Die Einrichtung einer Live-Replikation, wenn sich Quell- und Ziel-Bucket im Besitz verschiedener AWS-Konten befinden, ähnelt der Einrichtung der Replikation, wenn sich beide Buckets im Besitz des gleichen Kontos befinden. Es gibt jedoch mehrere Unterschiede, wenn Sie die Replikation in einem kontoübergreifenden Szenario konfigurieren:

  • Der Eigentümer des Ziel-Buckets muss dem Eigentümer des Quell-Buckets in der Ziel-Bucket-Richtlinie die Berechtigungen zum Replizieren von Objekten erteilen.

  • Wenn Sie in einem kontoübergreifenden Szenario Objekte replizieren, die serverseitig mit AWS Key Management Service(AWS KMS)-Schlüsseln (SSE-KMS) verschlüsselt sind, muss der Eigentümer des KMS-Schlüssels dem Eigentümer des Quell-Buckets die Berechtigung erteilen, den KMS-Schlüssel zu verwenden. Weitere Informationen finden Sie unter Erteilen von zusätzlichen Berechtigungen für kontenübergreifende Szenarien.

  • Standardmäßig befinden sich replizierte Objekte im Besitz des Eigentümers des Quell-Buckets. In einem kontoübergreifenden Szenario möchten Sie die Replikation vielleicht so konfigurieren, dass die Eigentümerschaft der replizierten Objekte auf den Eigentümer des Ziel-Buckets übergeht. Weitere Informationen finden Sie unter Ändern des Replikat-Eigentümers.

So richten Sie die Konfiguration ein, wenn sich Quell- und Ziel-Bucket im Besitz verschiedener AWS-Konten befinden
  1. In diesem Beispiel erstellen Sie Quell- und Ziel-Buckets in zwei unterschiedlichen AWS-Konten. Sie müssen zwei Anmeldeinformationsprofile für die AWS CLI eingerichtet haben. In diesem Beispiel werden für diese Profilnamen die Werte acctA und acctB verwendet. Informationen zum Einrichten der Anmeldeinformations-Profile und der Verwendung benannter Profile finden Sie unter Einstellungen der Konfigurations- und Anmeldeinformationsdatei im Benutzerhandbuch zur AWS Command Line Interface.

  2. Befolgen Sie die Schritt-für-Schritt-Anleitung in Konfigurieren einer Replikation für Buckets im selben Konto mit den folgenden Änderungen:

    • Verwenden Sie für alle AWS CLI-Befehle im Zusammenhang mit Aktivitäten des Quell-Buckets (wie dem Erstellen des Quell-Buckets, Aktivieren der Versionsverwaltung und Erstellen der IAM-Rolle) das Profil acctA. Verwenden Sie das Profil acctB, um den Ziel-Bucket zu erstellen.

    • Stellen Sie sicher, dass die Berechtigungsrichtlinie für die IAM-Rolle den Quell- und den Ziel-Bucket angibt, die Sie für dieses Beispiel erstellt haben.

  3. Fügen Sie in der Konsole die folgende Bucket-Richtlinie für den Ziel-Bucket hinzu, um dem Eigentümer des Quell-Buckets die Berechtigung zum Replizieren von Objekten zu erteilen. Detaillierte Anweisungen finden Sie unter Hinzufügen einer Bucket-Richtlinie mit der Amazon-S3-Konsole. Stellen Sie sicher, dass Sie die Richtlinie bearbeiten, indem Sie die AWS-Konto-ID des Eigentümers des Quell-Buckets, den Namen der IAM-Rolle und den Namen des Ziel-Buckets angeben.

    Anmerkung

    Wenn Sie das folgende Beispiel verwenden möchten, ersetzen Sie die user input placeholders durch Ihre eigenen Informationen. Ersetzen Sie amzn-s3-demo-destination-bucket durch den Namen Ihres Ziel-Buckets. Ersetzen Sie source-bucket-account-ID:role/service-role/source-account-IAM-role im Amazon-Ressourcennamen (ARN) von IAM durch die IAM-Rolle, die Sie für diese Replikationskonfiguration verwenden.

    Wenn Sie die IAM-Servicerolle manuell erstellt haben, legen Sie den Rollenpfad im IAM-ARN als role/service-role/ fest, wie im folgenden Richtlinienbeispiel dargestellt. Weitere Informationen finden Sie unter IAM ARNs im IAM-Benutzerhandbuch.

    { "Version":"2012-10-17", "Id":"", "Statement":[ { "Sid":"Set-permissions-for-objects", "Effect":"Allow", "Principal":{ "AWS":"arn:aws:iam::source-bucket-account-ID:role/service-role/source-account-IAM-role" }, "Action":["s3:ReplicateObject", "s3:ReplicateDelete"], "Resource":"arn:aws:s3:::amzn-s3-demo-destination-bucket/*" }, { "Sid":"Set permissions on bucket", "Effect":"Allow", "Principal":{ "AWS":"arn:aws:iam::source-bucket-account-ID:role/service-role/source-account-IAM-role" }, "Action":["s3:GetBucketVersioning", "s3:PutBucketVersioning"], "Resource":"arn:aws:s3:::amzn-s3-demo-destination-bucket" } ] }
  4. (Optional) Wenn Sie Objekte replizieren, die mit SSE-KMS verschlüsselt sind, muss der Eigentümer des KMS-Schlüssels dem Eigentümer des Quell-Buckets die Berechtigung erteilen, den KMS-Schlüssel zu verwenden. Weitere Informationen finden Sie unter Erteilen von zusätzlichen Berechtigungen für kontenübergreifende Szenarien.

  5. (Optional) Bei der Replikation besitzt der Eigentümer des Quellobjekts standardmäßig das Replikat. Wenn sich der Quell- und der Ziel-Bucket im Besitz verschiedener AWS-Konten befinden, können Sie optionale Konfigurations-Einstellungen hinzufügen, um die Replikat-Eigentümerschaft auf das AWS-Konto zu übertragen, das den Ziel-Bucket besitzt. Dazu gehört auch die Gewährung der ObjectOwnerOverrideToBucketOwner-Berechtigung. Weitere Informationen finden Sie unter Ändern des Replikat-Eigentümers.