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.
Verschlüsselte Objekte replizieren (SSE-S3, SSE-KMS, DSSE-KMS, SSE-C)
Wichtig
Amazon S3 wendet jetzt serverseitige Verschlüsselung mit von Amazon S3 verwalteten Schlüsseln (SSE-S3) als Basisverschlüsselungsebene für jeden Bucket in Amazon S3 an. Ab dem 5. Januar 2023 werden alle neuen Objekt-Uploads auf Amazon S3 ohne zusätzliche Kosten und ohne Auswirkungen auf die Leistung automatisch verschlüsselt. Der automatische Verschlüsselungsstatus für die Standardverschlüsselungskonfiguration des S3-Buckets und für das Hochladen neuer Objekte ist in CloudTrail Protokollen, S3-Inventar, S3 Storage Lens, der Amazon S3 S3-Konsole und als zusätzlicher Amazon S3 S3-API-Antwortheader in den AWS SDKs AWS CLI und verfügbar. Weitere Informationen finden Sie unter Häufig gestellte Fragen zur Standardverschlüsselung.
Bei der Replikation von Objekten, die mit der serverseitigen Verschlüsselung verschlüsselt wurden, sind einige besondere Punkte zu beachten. Amazon S3 unterstützt die folgenden Arten von serverseitiger Verschlüsselung:
-
Server-side Verschlüsselung mit verwalteten Amazon S3 S3-Schlüsseln (SSE-S3)
-
Server-side Verschlüsselung mit AWS Key Management Service (AWS KMS) Schlüsseln (SSE-KMS)
-
Dual-layer serverseitige Verschlüsselung mit AWS KMS Schlüsseln () DSSE-KMS
-
Server-side Verschlüsselung mit vom Kunden bereitgestellten Schlüsseln () SSE-C
Weitere Informationen zur serverseitigen Verschlüsselung finden Sie unter Schützen von Daten mit serverseitiger Verschlüsselung.
In diesem Thema werden die Berechtigungen erläutert, die Sie benötigen, um Amazon S3 anzuweisen, Objekte zu replizieren, die mithilfe serverseitiger Verschlüsselung verschlüsselt wurden. Dieses Thema enthält auch zusätzliche Konfigurationselemente, die Sie hinzufügen können, sowie Beispielrichtlinien AWS Identity and Access Management (IAM), die die erforderlichen Berechtigungen für die Replikation verschlüsselter Objekte gewähren.
Ein Beispiel mit Schritt-für-Schritt-Anleitungen finden Sie unter Aktivieren der Replikation für verschlüsselte Objekte. Weitere Informationen zum Erstellen einer Replikationskonfiguration finden Sie unter Replizieren von Objekten innerhalb und zwischen Regionen.
Anmerkung
Sie können Multiregion AWS KMS keys in Amazon S3 verwenden. Amazon S3 behandelt jedoch derzeit Multi-Regions-Schlüssel wie Einzel-Regions-Schlüssel und verwendet nicht die Multi-Regions-Funktionen des Schlüssels. Weitere Informationen finden Sie unter Verwenden von multiregionalen Schlüsseln) im AWS Key Management Service -Entwicklerhandbuch.
Themen
So wirkt sich die Standard-Bucket-Verschlüsselung auf die Replikation aus
Wenn Sie die Standard-Verschlüsselung für einen Replikations-Ziel-Bucket aktivieren, gilt das folgende Verschlüsselungsverhalten:
-
Wenn Objekte im Quell-Bucket nicht verschlüsselt sind, werden die Replikatobjekte im Ziel-Bucket mithilfe der Einstellungen der Standard-Verschlüsselung des Ziel-Buckets verschlüsselt. Daher unterscheiden sich die ETags (Entity-Tags) der Quellobjekte von den ETags der Replikatobjekte. Wenn Sie Anwendungen haben, die ETags verwenden, müssen Sie diese Anwendungen aktualisieren, um diesen Unterschied auszugleichen.
-
Wenn Objekte im Quell-Bucket mit serverseitiger Verschlüsselung mit verwalteten Amazon S3 S3-Schlüsseln (SSE-S3), serverseitiger Verschlüsselung mit AWS Key Management Service (AWS KMS) Schlüsseln (SSE-KMS) oder zweischichtiger serverseitiger Verschlüsselung mit AWS KMS Schlüsseln (DSSE-KMS) verschlüsselt werden, verwenden die Replikatobjekte im Ziel-Bucket dieselbe Art der Verschlüsselung wie die Quellobjekte. Die Einstellungen der Standard-Verschlüsselung des Ziel-Buckets werden nicht verwendet.
Objekte replizieren, verschlüsselt mit SSE-C
Durch die serverseitige Verschlüsselung mit vom Kunden bereitgestellten Schlüsseln (SSE-C) können Sie Ihre eigenen proprietären Verschlüsselungsschlüssel verwalten. Mit verwalten Sie die Schlüssel SSE-C, während Amazon S3 den Verschlüsselungs- und Entschlüsselungsprozess verwaltet. Sie müssen einen Verschlüsselungsschlüssel als Teil Ihrer Anfrage angeben, brauchen aber keinen Code zu schreiben, um die Objektverschlüsselung oder -entschlüsselung durchzuführen. Wenn Sie ein Objekt hochladen, verschlüsselt Amazon S3 das Objekt mithilfe des von Ihnen angegebenen Schlüssels. Amazon S3 löscht diesen Schlüssel dann aus dem Speicher. Wenn Sie ein Objekt abrufen, müssen Sie denselben Verschlüsselungsschlüssel als Teil Ihrer Anfrage angeben. Weitere Informationen finden Sie unter Verwenden Sie serverseitige Verschlüsselung mit vom Kunden bereitgestellten Schlüsseln () SSE-C.
Die S3-Replikation unterstützt Objekte, die mit SSE-C verschlüsselt sind. Sie können die SSE-C Objektreplikation in der Amazon S3 S3-Konsole oder mit den AWS SDKs auf die gleiche Weise konfigurieren, wie Sie die Replikation für unverschlüsselte Objekte konfigurieren. Es gibt keine zusätzlichen SSE-C Berechtigungen, die über die derzeit für die Replikation erforderlichen hinausgehen.
Die S3-Replikation repliziert automatisch neu hochgeladene SSE-C verschlüsselte Objekte, sofern sie dafür in Frage kommen, wie in Ihrer S3-Replikationskonfiguration angegeben. Verwenden Sie die S3-Batchreplikation, um vorhandene Objekte in Ihren Buckets zu replizieren. Weitere Informationen zum Replizieren von Objekten finden Sie unter Einrichten einer Live-Replikation – Überblick und Replizieren vorhandener Objekte mit der Batch-Replikation.
Für die Replikation SSE-C von Objekten fallen keine zusätzlichen Gebühren an. Einzelheiten zu den Replikationspreisen finden Sie unter Amazon S3 – Preise
Replizieren von Objekten, die mit SSE-S3, SSE-KMS oder verschlüsselt sind DSSE-KMS
Standardmäßig repliziert Amazon S3 keine Objekte, die mit SSE-KMS oder DSSE-KMS verschlüsselt sind. In diesem Abschnitt werden die zusätzlichen Konfigurationselemente erörtert, die Sie hinzufügen können, um Amazon S3 anzuweisen, diese Objekte zu replizieren.
Ein Beispiel mit Schritt-für-Schritt-Anleitungen finden Sie unter Aktivieren der Replikation für verschlüsselte Objekte. Weitere Informationen zum Erstellen einer Replikationskonfiguration finden Sie unter Replizieren von Objekten innerhalb und zwischen Regionen.
Angeben zusätzlicher Informationen in der Replikations-Konfiguration
In der Replikations-Konfiguration machen Sie Folgendes:
-
Fügen Sie in dem
DestinationElement in Ihrer Replikationskonfiguration die ID des symmetrischen, vom AWS KMS Kunden verwalteten Schlüssels hinzu, den Amazon S3 zur Verschlüsselung von Objektreplikaten verwenden soll, wie in der folgenden Beispiel-Replikationskonfiguration gezeigt. -
Entscheiden Sie sich ausdrücklich dafür, indem Sie die Replikation von Objekten aktivieren, die mithilfe von KMS-Schlüsseln (SSE-KMS oder) verschlüsselt wurden. DSSE-KMS Fügen Sie dazu das
SourceSelectionCriteria-Element hinzu, wie im folgenden Beispiel einer Replikationskonfiguration dargestellt.
<ReplicationConfiguration> <Rule> ... <SourceSelectionCriteria> <SseKmsEncryptedObjects> <Status>Enabled</Status> </SseKmsEncryptedObjects> </SourceSelectionCriteria> <Destination> ... <EncryptionConfiguration> <ReplicaKmsKeyID>AWS KMS key ARN or Key Alias ARN that's in the same AWS-Region as the destination bucket.</ReplicaKmsKeyID> </EncryptionConfiguration> </Destination> ... </Rule> </ReplicationConfiguration>
Wichtig
-
Der KMS-Schlüssel muss im selben Ordner AWS-Region wie der Ziel-Bucket erstellt worden sein.
-
Der KMS-Schlüssel muss gültig sein. Die
PutBucketReplication-API-Operation überprüft nicht die Gültigkeit von KMS-Schlüsseln. Wenn Sie einen ungültigen KMS-Schlüssel verwenden, erhalten Sie als Antwort den HTTP-200 OK-Statuscode, aber die Replikation schlägt fehl.
Das folgende Beispiel zeigt eine Replikationskonfiguration, die optionale Konfigurationselemente enthält. Diese Replikations-Konfiguration weist eine Regel auf. Die Regel wird auf alle Objekte mit dem Schlüsselpräfix angewendet. Amazon S3 verwendet die angegebene AWS KMS key ID, um diese Objektreplikate zu verschlüsseln.Tax
<?xml version="1.0" encoding="UTF-8"?> <ReplicationConfiguration> <Role>arn:aws:iam::account-id:role/role-name</Role> <Rule> <ID>Rule-1</ID> <Priority>1</Priority> <Status>Enabled</Status> <DeleteMarkerReplication> <Status>Disabled</Status> </DeleteMarkerReplication> <Filter> <Prefix>Tax</Prefix> </Filter> <Destination> <Bucket>arn:aws:s3:::</Bucket> <EncryptionConfiguration> <ReplicaKmsKeyID>amzn-s3-demo-destination-bucketAWS KMS key ARN or Key Alias ARN that's in the same AWS-Region as the destination bucket.</ReplicaKmsKeyID> </EncryptionConfiguration> </Destination> <SourceSelectionCriteria> <SseKmsEncryptedObjects> <Status>Enabled</Status> </SseKmsEncryptedObjects> </SourceSelectionCriteria> </Rule> </ReplicationConfiguration>
Erteilen zusätzlicher Berechtigungen für die IAM-Rolle
Um Objekte, die im Ruhezustand verschlüsselt sind SSE-S3, mithilfe von, oder zu replizieren SSE-KMS DSSE-KMS, gewähren Sie der AWS Identity and Access Management (IAM-) Rolle, die Sie in der Replikationskonfiguration angeben, die folgenden zusätzlichen Berechtigungen. Sie erteilen diese Berechtigungen, indem Sie die mit der IAM-Rolle verknüpfte Berechtigungsrichtlinie aktualisieren.
-
s3:GetObjectVersionForReplicationAktion für Quellobjekte — Diese Aktion ermöglicht Amazon S3, sowohl unverschlüsselte Objekte als auch Objekte zu replizieren, die mit serverseitiger Verschlüsselung mithilfe von SSE-S3,, SSE-KMS oder erstellt wurden. DSSE-KMSAnmerkung
Wir empfehlen, dass Sie die Aktion
s3:GetObjectVersionForReplicationstatt der Aktions3:GetObjectVersionverwenden, das3:GetObjectVersionForReplicationAmazon S3 nur die minimalen Berechtigungen bereitstellt, die für eine Replikation nötig sind. Darüber hinaus ermöglicht dies3:GetObjectVersionAktion die Replikation von unverschlüsselten SSE-S3-encrypted Objekten, nicht jedoch von Objekten, die mithilfe von KMS-Schlüsseln (oder) verschlüsselt wurden. SSE-KMS DSSE-KMS -
kms:Decryptundkms:EncryptAWS KMS Aktionen für die KMS-Schlüssel-
Sie müssen
kms:Decrypt-Berechtigungen für den AWS KMS key gewähren, der zum Entschlüsseln des Quellobjekts verwendet wird. -
Sie müssen
kms:Encrypt-Berechtigungen für den AWS KMS key gewähren, der zum Verschlüsseln des Objektreplikats verwendet wird.
-
-
kms:GenerateDataKeyAktion zum Replizieren von Klartextobjekten — Wenn Sie Klartextobjekte in einen Bucket replizieren, bei dem SSE-KMS die DSSE-KMS Verschlüsselung standardmäßig aktiviert ist, müssen Sie diekms:GenerateDataKeyBerechtigung für den Zielverschlüsselungskontext und den KMS-Schlüssel in die IAM-Richtlinie aufnehmen.
Wichtig
Wenn Sie S3 Batch Replication verwenden, um Datensätze regionsübergreifend zu replizieren und der serverseitige Verschlüsselungstyp Ihrer Objekte zuvor von SSE-S3 bis aktualisiert wurde SSE-KMS, benötigen Sie möglicherweise zusätzliche Berechtigungen. Für den Bucket der Quellregion benötigen Sie Berechtigungen. kms:decrypt Anschließend benötigen Sie die kms:encrypt Berechtigungen kms:decrypt und für den Bucket in der Zielregion.
Wir empfehlen, diese Berechtigungen mithilfe von AWS KMS Bedingungsschlüsseln nur auf die Ziel-Buckets und -Objekte zu beschränken. Derjenige AWS-Konto , dem die IAM-Rolle gehört, muss über Berechtigungen für die kms:Encrypt und kms:Decrypt Aktionen für die KMS-Schlüssel verfügen, die in der Richtlinie aufgeführt sind. Wenn die KMS-Schlüssel einer anderen Person gehören AWS-Konto, muss der Besitzer der KMS-Schlüssel diese Berechtigungen demjenigen gewähren AWS-Konto , dem die IAM-Rolle gehört. Weitere Informationen zur Verwaltung des Zugriffs auf diese KMS-Schlüssel finden Sie unter Verwenden von IAM-Richtlinien mit AWS KMS im AWS Key Management Service Entwicklerhandbuch.
S3 Bucket-Schlüssel und Replikation
Um die Replikation mit einem S3-Bucket-Schlüssel zu verwenden, muss die AWS KMS key Richtlinie für den KMS-Schlüssel, der zum Verschlüsseln des Objektreplikats verwendet wird, die kms:Decrypt Berechtigung für den aufrufenden Prinzipal enthalten. Der Aufruf zur kms:Decrypt Überprüfung der Integrität des S3-Bucket-Schlüssels, bevor er verwendet wird. Weitere Informationen finden Sie unter Verwenden eines S3-Bucket-Schlüssels mit Replikation.
Wenn ein S3-Bucket-Schlüssel für den Quell- oder Ziel-Bucket aktiviert ist, ist der Verschlüsselungskontext der Amazon-Ressourcenname (ARN) des Buckets, nicht der Objekt-ARN (z. B. arn:aws:s3:::). Sie müssen Ihre IAM-Richtlinien aktualisieren, um den Bucket-ARN für den Verschlüsselungskontext verwenden zu können:bucket_ARN
"kms:EncryptionContext:aws:s3:arn": [ "arn:aws:s3:::bucket_ARN" ]
Weitere Informationen finden Sie unter Verschlüsselungskontext (x-amz-serverseitiger Verschlüsselungskontext) (im Abschnitt „Verwenden der REST-API“ und unter Änderungen, die Sie vor dem Aktivieren eines S3-Bucket-Schlüssels beachten sollten.
Beispielrichtlinien: Verwendung SSE-S3 und mit Replikation SSE-KMS
Das folgende Beispiel für IAM-Richtlinien zeigt Anweisungen für die Verwendung SSE-S3 und SSE-KMS mit Replikation.
Beispiel— Verwendung SSE-KMS mit separaten Ziel-Buckets
Die folgende Beispielrichtlinie zeigt Anweisungen für die Verwendung SSE-KMS mit separaten Ziel-Buckets.
Beispiel— Replizieren von Objekten, die mit und erstellt wurden SSE-S3 SSE-KMS
Im Folgenden finden Sie eine vollständige IAM-Richtlinie, die die erforderlichen Berechtigungen zum Replizieren von unverschlüsselten Objekten, Objekten, die mit erstellt wurden, und Objekten, die mit erstellt wurden SSE-S3, gewährt. SSE-KMS
Beispiel– Replizieren von Objekten mit S3-Bucket-Schlüsseln
Im Folgenden sehen Sie eine vollständige IAM-Richtlinie, die die erforderlichen Berechtigungen zum Replizieren von Objekten mit S3-Bucket-Schlüsseln gewährt.
Erteilen von zusätzlichen Berechtigungen für kontenübergreifende Szenarien
In einem kontoübergreifenden Szenario, in dem die Quell- und Ziel-Buckets unterschiedlichen Besitzern gehören, können Sie einen KMS-Schlüssel verwenden AWS-Konten, um Objektreplikate zu verschlüsseln. Der KMS-Schlüssel-Besitzer muss dem Besitzer des Quell-Buckets jedoch die Berechtigung erteilen, den KMS-Schlüssel zu verwenden.
Anmerkung
Wenn Sie SSE-KMS Daten kontoübergreifend replizieren müssen, muss Ihre Replikationsregel einen vom Kunden verwalteten Schlüssel für das Zielkonto angeben. AWS KMS Von AWS verwaltete Schlüsselerlauben keine kontoübergreifende Verwendung und können daher nicht für die kontenübergreifende Replikation verwendet werden.
Um dem Besitzer des Quell-Buckets die Erlaubnis zur Verwendung des KMS-Schlüssels zu erteilen (AWS KMS Konsole)
-
Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die AWS KMS Konsole unter https://console.aws.amazon.com/kms
. -
Um das zu ändern AWS-Region, verwenden Sie die Regionsauswahl in der oberen rechten Ecke der Seite.
-
Zum Anzeigen der Schlüssel in Ihrem Konto, die Sie erstellen und verwalten, wählen Sie im Navigationsbereich Customer managed keys (Vom Kunden verwaltete Schlüssel) aus.
-
Wählen Sie den KMS-Schlüssel aus.
-
Wählen Sie unter Allgemeine Konfiguration den Tab Schlüsselrichtlinie aus.
-
Scrollen Sie nach unten zu „Andere“. AWS-Konten
-
Wählen Sie Andere hinzufügen AWS-Konten.
Daraufhin wird das Dialogfeld Other AWS-Konten (Andere AWS-Konten) angezeigt.
-
Wählen Sie im Dialogfeld „Weitere hinzufügen“ aus AWS-Konto. Geben Sie für arn:aws:iam:: die Konto-ID des Quell-Buckets ein.
-
Wählen Sie Änderungen speichern aus.
Um dem Besitzer des Quell-Buckets die Erlaubnis zur Verwendung des KMS-Schlüssels zu erteilen (AWS CLI)
-
Informationen zum Befehl
put-key-policyAWS Command Line Interface (AWS CLI) finden Sie put-key-policyin der AWS CLI Befehlsreferenz. Weitere Informationen über die zugrundeliegendePutKeyPolicy-API-Operation finden Sie unter PutKeyPolicy in der AWS Key Management Service -API-Referenz.
AWS KMS Überlegungen zu Transaktionsquoten
Wenn Sie nach der Aktivierung der Cross-Region Replikation (CRR) viele neue Objekte mit AWS KMS Verschlüsselung hinzufügen, kann es zu Drosselungen (503 Service
UnavailableHTTP-Fehler) kommen. Die Drosselung erfolgt, wenn die Anzahl an AWS KMS
-Transaktionen pro Sekunde das aktuelle Kontingent überschreitet. Weitere Informationen finden Sie unter Kontingente im AWS Key Management Service -Entwicklerhandbuch.
Zum Anfordern einer Erhöhung für ein Kontingent verwenden Sie Service-Quotas verwenden. Weitere Informationen finden Sie unter Anfordern einer Kontingenterhöhung. Wenn Service Quotas in Ihrer Region nicht unterstützt werden, öffnen Sie einen AWS Support Fall
Aktivieren der Replikation für verschlüsselte Objekte
Standardmäßig repliziert Amazon S3 keine Objekte, die mit serverseitiger Verschlüsselung mit AWS Key Management Service (AWS KMS) Schlüsseln () oder zweischichtiger serverseitiger Verschlüsselung mit AWS KMS Schlüsseln (SSE-KMS) verschlüsselt wurden. DSSE-KMS Um mit SSE-KMS oder verschlüsselte Objekte zu replizieren DSS-KMS, müssen Sie die Bucket-Replikationskonfiguration so ändern, dass Amazon S3 diese Objekte replizieren soll. In diesem Beispiel wird erklärt, wie Sie die Amazon S3 S3-Konsole und die AWS Command Line Interface (AWS CLI) verwenden, um die Bucket-Replikationskonfiguration zu ändern, um die Replikation verschlüsselter Objekte zu ermöglichen.
Anmerkung
Wenn ein S3-Bucket-Schlüssel für den Quell- oder Ziel-Bucket aktiviert ist, ist der Verschlüsselungskontext der Amazon-Ressourcenname (ARN) des Buckets, nicht der Objekt-ARN. Sie müssen Ihre IAM-Richtlinien aktualisieren, um den Bucket-ARN für den Verschlüsselungskontext verwenden zu können. Weitere Informationen finden Sie unter S3 Bucket-Schlüssel und Replikation.
Anmerkung
Sie können Multiregion AWS KMS keys in Amazon S3 verwenden. Amazon S3 behandelt jedoch derzeit Multi-Regions-Schlüssel wie Einzel-Regions-Schlüssel und verwendet nicht die Multi-Regions-Funktionen des Schlüssels. Weitere Informationen finden Sie unter Verwenden von multiregionalen Schlüsseln) im AWS Key Management Service -Entwicklerhandbuch.
Schrittweise Anleitungen hierzu finden Sie unter Konfigurieren einer Replikation für Buckets im selben Konto. Dieses Thema enthält Anweisungen zum Einrichten einer Replikationskonfiguration, wenn Quell- und Ziel-Buckets denselben und unterschiedlichen Besitzern gehören. AWS-Konten
Gehen Sie wie folgt vor AWS CLI, um verschlüsselte Objekte mit dem zu replizieren:
-
Erstellen Sie Quell- und Ziel-Buckets und aktivieren Sie die Versionsverwaltung für diese Buckets.
-
Erstellen Sie eine AWS Identity and Access Management (IAM) -Servicerolle, die Amazon S3 die Berechtigung erteilt, Objekte zu replizieren. Zu den Berechtigungen für die IAM-Rolle gehören die, die zum Replizieren der verschlüsselten Objekte notwendig sind.
-
Fügen Sie eine Replikationskonfiguration zum Quell-Bucket hinzu. Die Replikationskonfiguration stellt Informationen zur Replizierung von Objekten bereit, die mit KMS-Schlüsseln verschlüsselt wurden.
-
Fügen Sie verschlüsselte Objekte zum Quell-Bucket hinzu.
-
Testen Sie die Einrichtung, um sicherzustellen, dass Ihre verschlüsselten Objekte in den Ziel-Bucket repliziert werden.
Die folgenden Verfahren führen Sie durch diesen Prozess.
Um serverseitig verschlüsselte Objekte zu replizieren (AWS CLI)
Die Beispiele in diesem Verfahren können Sie verwenden, indem Sie die durch Ihre eigenen Informationen ersetzen.user
input placeholders
-
In diesem Beispiel erstellen Sie den Quell-Bucket (
) und den Ziel-Bucket (amzn-s3-demo-source-bucket) im selben AWS-Konto. Sie richten auch das Anmeldeinformationsprofil für die AWS CLI ein. Dieses Beispiel verwendet den Profilnamenamzn-s3-demo-destination-bucket.acctAInformationen 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 .
-
Verwenden Sie die folgenden Befehle, um den
-Bucket zu erstellen und die Versionsverwaltung für diesen zu aktivieren. Mit den folgenden Beispielbefehlen wird deramzn-s3-demo-source-bucket-Bucket in der Region USA Ost (Nord-Virginia) (amzn-s3-demo-source-bucketus-east-1) erstellt.aws s3api create-bucket \ --bucketamzn-s3-demo-source-bucket\ --regionus-east-1\ --profileacctAaws s3api put-bucket-versioning \ --bucketamzn-s3-demo-source-bucket\ --versioning-configuration Status=Enabled \ --profileacctA -
Verwenden Sie die folgenden Befehle, um den
-Bucket zu erstellen und die Versionsverwaltung für diesen zu aktivieren. Mit den folgenden Beispielbefehlen wird deramzn-s3-demo-destination-bucket-Bucket in der Region USA West (Oregon) (amzn-s3-demo-destination-bucketus-west-2) erstellt.Anmerkung
Um eine Replikationskonfiguration einzurichten, wenn sich
- undamzn-s3-demo-source-bucket-Bucket im selben AWS-Konto befinden, verwenden Sie dasselbe Profil. Dieses Beispiel verwendetamzn-s3-demo-destination-bucket. Um die Replikation zu konfigurieren, wenn die Buckets unterschiedlichen Besitzern gehören AWS-Konten, geben Sie für jeden Bucket unterschiedliche Profile an.acctAaws s3api create-bucket \ --bucketamzn-s3-demo-destination-bucket\ --regionus-west-2\ --create-bucket-configuration LocationConstraint=us-west-2\ --profileacctAaws s3api put-bucket-versioning \ --bucketamzn-s3-demo-destination-bucket\ --versioning-configuration Status=Enabled \ --profileacctA -
Als Nächstes erstellen Sie eine IAM-Servicerolle. Sie geben diese Rolle in der Replizierungskonfiguration an, die Sie später zum
-Bucket hinzufügen. Amazon S3 übernimmt diese Rolle, um Objekte in Ihrem Namen zu replizieren. Sie erstellen eine IAM-Rolle in zwei Schritten:amzn-s3-demo-source-bucket-
Erstellen Sie eine Servicerolle.
-
Fügen Sie eine Berechtigungsrichtlinie zur Rolle hinzu.
-
Um eine IAM-Servicerolle zu erstellen, gehen Sie wie folgt vor:
-
Kopieren Sie die folgende Vertrauensrichtlinie und speichern Sie sie in einer Datei mit dem Namen
im aktuellen Verzeichnis auf Ihrem lokalen Computer. Diese Richtlinie erteilt dem Amazon-S3-Service Prinzipal-Berechtigungen zum Übernehmen der Rolle, damit Amazon S3 Aufgaben in Ihrem Namen durchführen kann.s3-role-trust-policy-kmsobj.json -
Verwenden Sie den folgenden Befehl, um die Rolle zu erstellen:
$aws iam create-role \ --role-namereplicationRolekmsobj\ --assume-role-policy-document file://s3-role-trust-policy-kmsobj.json \ --profileacctA
-
-
Als Nächstes fügen Sie eine Berechtigungsrichtlinie zur Rolle hinzu. Diese Zugriffsrichtlinie erteilt Berechtigungen für verschiedene Amazon-S3-Bucket- und -Objektaktionen.
-
Kopieren Sie die folgende Berechtigungsrichtlinie und speichern Sie sie in einer Datei mit dem Namen
im aktuellen Verzeichnis auf Ihrem lokalen Computer. Sie werden eine IAM-Rolle erstellen und fügen ihr später die Richtlinie an.s3-role-permissions-policykmsobj.jsonWichtig
In der Berechtigungsrichtlinie geben Sie die AWS KMS Schlüssel-IDs an, die für die Verschlüsselung der
Bucketsamzn-s3-demo-destination-bucketund verwendet werden. Sie müssen zwei separate KMS-Schlüssel für dieamzn-s3-demo-source-bucketBucketsamzn-s3-demo-destination-bucketund erstellen. AWS KMS keys werden nicht außerhalb des Bereichs geteilt, AWS-Region in dem sie erstellt wurden.amzn-s3-demo-source-bucket -
Erstellen Sie eine Richtlinie und hängen Sie sie an die Rolle an.
$aws iam put-role-policy \ --role-namereplicationRolekmsobj\ --policy-document file://s3-role-permissions-policykmsobj.json \ --policy-namereplicationRolechangeownerPolicy\ --profileacctA
-
-
-
Als Nächstes fügen Sie die folgende Replikationskonfiguration zum
-Bucket hinzu. Sie weist Amazon S3 an, Objekte mit dem Präfixamzn-s3-demo-source-bucketin denTax/-Bucket zu replizieren.amzn-s3-demo-destination-bucketWichtig
In der Replikationskonfiguration legen Sie die IAM-Rolle fest, die Amazon S3 annehmen kann. Dies können Sie nur tun, wenn Sie über die
iam:PassRole-Berechtigung verfügen. Das Profil, das Sie im CLI-Befehl angeben, muss über diese Berechtigung verfügen. Weitere Informationen finden Sie unter Erteilen von Berechtigungen, mit denen ein Benutzer eine Rolle an einen AWS-Serviceübergeben kann im IAM-Benutzerhandbuch.<ReplicationConfiguration> <Role>IAM-Role-ARN</Role> <Rule> <Priority>1</Priority> <DeleteMarkerReplication> <Status>Disabled</Status> </DeleteMarkerReplication> <Filter> <Prefix>Tax</Prefix> </Filter> <Status>Enabled</Status> <SourceSelectionCriteria> <SseKmsEncryptedObjects> <Status>Enabled</Status> </SseKmsEncryptedObjects> </SourceSelectionCriteria> <Destination> <Bucket>arn:aws:s3:::</Bucket> <EncryptionConfiguration> <ReplicaKmsKeyID>amzn-s3-demo-destination-bucketAWS KMS key IDs to use for encrypting object replicas</ReplicaKmsKeyID> </EncryptionConfiguration> </Destination> </Rule> </ReplicationConfiguration>Um eine Replikationskonfiguration zum
-Bucket hinzuzufügen, gehen Sie wie folgt vor:amzn-s3-demo-source-bucket-
AWS CLI Dazu müssen Sie die Replikationskonfiguration als JSON angeben. Speichern Sie den folgenden JSON-Code in einer Datei (
) im aktuellen Verzeichnis auf Ihrem lokalen Computer.replication.json{ "Role":"IAM-Role-ARN", "Rules":[ { "Status":"Enabled", "Priority":1, "DeleteMarkerReplication":{ "Status":"Disabled" }, "Filter":{ "Prefix":"Tax" }, "Destination":{ "Bucket":"arn:aws:s3:::", "EncryptionConfiguration":{ "ReplicaKmsKeyID":"amzn-s3-demo-destination-bucketAWS KMS key IDs (in ARN format) to use for encrypting object replicas" } }, "SourceSelectionCriteria":{ "SseKmsEncryptedObjects":{ "Status":"Enabled" } } } ] } -
Bearbeiten Sie den JSON-Code, um Werte für den
-Bucket, dieamzn-s3-demo-destination-bucketund denAWS KMS key IDs (in ARN format)anzugeben. Speichern Sie die Änderungen.IAM-role-ARN -
Verwenden Sie den folgenden Befehl, um die Replikationskonfiguration zu Ihrem
-Bucket hinzuzufügen. Stellen Sie sicher, dass Sie den Namen für denamzn-s3-demo-source-bucket-Bucket angeben.amzn-s3-demo-source-bucket$aws s3api put-bucket-replication \ --replication-configuration file://replication.json \ --bucket\ --profileamzn-s3-demo-source-bucketacctA
-
-
Testen Sie die Konfiguration, um zu überprüfen, ob die verschlüsselten Objekte repliziert werden. Führen Sie in der Amazon-S3-Konsole die folgenden Schritte aus:
Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon S3 S3-Konsole unter https://console.aws.amazon.com/s3/
. -
Erstellen Sie im
-Bucket einen Ordner mit dem Namenamzn-s3-demo-source-bucket.Tax -
Fügen Sie Beispielobjekte zum Ordner hinzu. Stellen Sie sicher, dass Sie die Verschlüsselungsoption wählen und Ihren KMS-Schlüssel angeben, um die Objekte zu verschlüsseln.
-
Vergewissern Sie sich, dass der
-Bucket die Objektreplikate enthält und dass sie mithilfe des KMS-Schlüssels verschlüsselt sind, den Sie in der Konfiguration angegeben haben. Weitere Informationen finden Sie unter Abrufen von Replikationsstatusinformationen.amzn-s3-demo-destination-bucket
Ein Code-Beispiel, das zeigt, wie eine Replikationskonfiguration hinzugefügt wird, finden Sie unter Verwendung der AWS SDKs. Sie müssen die Replikationskonfiguration entsprechend ändern.