Kopieren von Objekten von oder zu einem Verzeichnis-Bucket
Die Kopieroperation erzeugt eine Kopie eines Objekts, das bereits in Amazon S3 gespeichert ist. Sie können Objekte zwischen Verzeichnis-Buckets und Allzweck-Buckets kopieren. Sie können Objekte auch innerhalb eines Buckets und zwischen Buckets desselben Typs kopieren, z. B. von Verzeichnis-Bucket zu Verzeichnis-Bucket.
Anmerkung
Das Kopieren von Objekten zwischen verschiedenen AWS-Regionen wird nicht unterstützt, wenn sich der Quell- oder Ziel-Bucket in einer AWS Local Zone befindet. Die Quell- und Ziel-Buckets müssen dieselbe übergeordnete AWS-Region haben. Die Quell- und Ziel-Buckets können unterschiedliche Bucket-Speicherorttypen haben (Availability Zone oder Local Zone).
Sie können eine Kopie Ihres Objekts mit einer Größe von bis zu 5 GB in einer einzigen atomaren Operation hochladen. Um jedoch ein Objekt zu kopieren, das größer als 5 GB ist, müssen Sie die API-Operationen für mehrteilige Uploads verwenden. Weitere Informationen finden Sie unter Verwenden von mehrteiligen Uploads mit Verzeichnis-Buckets.
Berechtigungen
Um Objekte zu kopieren, müssen Sie über die folgenden Berechtigungen verfügen:
-
Um Objekte von einem Verzeichnis-Bucket zu einem anderen Verzeichnis-Bucket zu kopieren, benötigen Sie die
s3express:CreateSession-Berechtigung. -
Um Objekte aus Verzeichnis-Buckets zu Allzweck-Buckets zu kopieren, benötigen Sie die
s3express:CreateSession-Berechtigung unds3:PutObject-Berechtigung zum Schreiben der Objektkopie in den Ziel-Bucket. -
Um Objekte aus Allzweck-Buckets zu Verzeichnis-Buckets zu kopieren, benötigen Sie die
s3express:CreateSession-Berechtigung unds3:GetObject-Berechtigung zum Lesen des Quellobjekts, das kopiert wird.Weitere Informationen finden Sie unter CopyObject in der API-Referenz zu Amazon Simple Storage Service.
Verschlüsselung
Amazon S3 verschlüsselt automatisch alle neuen Objekte, die in einen S3-Bucket hochgeladen werden. Die Standardverschlüsselungskonfiguration eines S3-Buckets ist immer aktiviert und mindestens auf serverseitige Verschlüsselung mit von Amazon S3 verwalteten Schlüsseln (SSE-S3) eingestellt.
Für Verzeichnis-Buckets werden SSE-S3 und die serverseitige Verschlüsselung mit AWS Key Management Service (AWS KMS)-Schlüsseln (SSE-KMS) unterstützt. Wenn es sich bei dem Ziel-Bucket um einen Verzeichnis-Bucket handelt, empfehlen wir, dass die Standardverschlüsselung des Ziel-Buckets die gewünschte Verschlüsselungskonfiguration verwendet und Sie die Standardverschlüsselung des Buckets nicht überschreiben. Anschließend werden neue Objekte automatisch mit den gewünschten Verschlüsselungseinstellungen verschlüsselt. S3 Bucket Keys werden außerdem nicht unterstützt, wenn Sie mit SSE-KMS verschlüsselte Objekte von Allzweck-Buckets zu Verzeichnis-Buckets, von Verzeichnis-Buckets zu Allzweck-Buckets oder zwischen Verzeichnis-Buckets über kopieren CopyObject. In diesem Fall ruft Amazon S3 AWS KMS jedes Mal auf, wenn eine Kopieranforderung für ein mit KMS verschlüsseltes Objekt ausgeführt wird. Weitere Informationen zum Überschreibungsverhalten der Verschlüsselung in Verzeichnis-Buckets finden Sie unter Festlegen einer serverseitigen Verschlüsselung mit AWS KMS für neue Objekt-Uploads.
Für Allzweck-Buckets können Sie SSE-S3 (die Standardeinstellung), serverseitige Verschlüsselung mit AWS Key Management Service (AWS KMS)-Schlüsseln (SSE-KMS), serverseitige Dual-Layer-Verschlüsselung mit AWS KMS-Schlüsseln (DSSE-KMS) oder serverseitige Verschlüsselung mit kundenseitig bereitgestellten Schlüsseln (SSE-C) verwenden.
Wenn Sie eine Kopieranforderung stellen, die angibt, DSSE-KMS oder SSE-C für einen Verzeichnis-Bucket (entweder den Quell- oder den Ziel-Bucket) zu verwenden, gibt die Antwort einen Fehler zurück.
Tags
Verzeichnis-Buckets unterstützen keine Tags. Wenn Sie ein Objekt mit Tags von einem Allzweck-Bucket zu einem Verzeichnis-Bucket kopieren, erhalten Sie eine 501 (Not
Implemented)-HTTP-Antwort. Weitere Informationen finden Sie unter CopyObject in der API-Referenz zu Amazon Simple Storage Service.
ETags
Entity-Tags (ETags) für S3 Express One Zone sind zufällige alphanumerische Zeichenfolgen und keine MD5-Prüfsummen. Verwenden Sie zusätzliche Prüfsummen, um die Objektintegrität sicherzustellen.
Zusätzliche Prüfsummen
S3 Express One Zone bietet Ihnen die Möglichkeit, den Prüfsummenalgorithmus auszuwählen, der zur Validierung Ihrer Daten beim Hoch- oder Herunterladen verwendet wird. Sie können einen der folgenden Secure Hash Algorithms (SHA)- oder Cyclic Redundancy Check (CRC)-Algorithmen zur Überprüfung der Datenintegrität auswählen: CRC32, CRC32C, SHA-1 und SHA-256. MD5-basierte Prüfsummen werden von der Speicherklasse S3 Express One Zone nicht unterstützt.
Weitere Informationen finden Sie unter Bewährte Methoden für zusätzliche S3-Prüfsummen.
Unterstützte Features
Weitere Informationen darüber, welche Amazon-S3-Funktionen für S3 Express One Zone unterstützt werden, finden Sie unter Unterschiede bei Verzeichnis-Buckets.
Anmerkung
Die Einschränkungen beim Kopieren eines Objekts in einen Verzeichnis-Bucket mit der Konsole sind folgende:
-
Die
Copy-Aktion gilt für alle Objekte in den angegebenen Ordnern (Präfixe). Objekte, die während der laufenden Aktion in diese Ordner hinzugefügt werden, könnten betroffen sein. -
Objekte, die mit vom Kunden bereitgestellten Verschlüsselungsschlüsseln (SSE-C) verschlüsselt wurden, können nicht mit der S3-Konsole kopiert werden. Um mit SSE-C verschlüsselte Objekte zu kopieren, verwenden Sie die AWS CLI, das AWS-SDK oder die Amazon-S3-REST-API.
-
Bei kopierten Objekten werden die Object-Lock-Einstellungen der Originalobjekte nicht beibehalten.
-
Wenn der Bucket, aus dem Sie Objekte kopieren, die Einstellung „Bucket-Eigentümer erzwungen“ für S3 Object Ownership verwendet, werden Objekt-ACLs nicht in das angegebene Ziel kopiert.
-
Wenn Sie Objekte in einen Bucket kopieren möchten, der die Einstellung „Bucket-Eigentümer erzwungen“ für S3 Object Ownership verwendet, stellen Sie sicher, dass der Quell-Bucket auch die erzwungene Einstellung des Bucket-Eigentümers verwendet, oder entfernen Sie alle Objekt-ACL-Zuweisungen zu anderen AWS-Konten und -Gruppen.
-
Objekte, die aus einem Allzweck-Bucket in einen Verzeichnis-Bucket kopiert wurden, behalten keine Objekt-Tags, ACLs oder Etag-Werte bei. Prüfsummenwerte können kopiert werden, entsprechen aber nicht einem Etag. Der Prüfsummenwert kann sich im Vergleich zu dem Zeitpunkt, zu dem er hinzugefügt wurde, ändern.
-
Alle Objekte, die in einen Verzeichnis-Bucket kopiert werden, unterliegen der vom Bucket-Eigentümer erzwungenen Einstellung für S3 Object Ownership.
So kopieren Sie ein Objekt aus einem Allzweck-Bucket oder einem Verzeichnis-Bucket in einen Verzeichnis-Bucket
Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-S3-Konsole unter https://console.aws.amazon.com/s3/
. -
Wählen Sie im linken Navigationsbereich den Bucket-Typ, aus dem Sie Objekte kopieren möchten:
-
Um aus einem Allzweck-Bucket zu kopieren, wählen Sie die Registerkarte Allzweck-Buckets.
-
Um aus einem Verzeichnis-Bucket zu kopieren, wählen Sie die Registerkarte Verzeichnis-Buckets.
-
-
Wählen Sie den Allzweck-Bucket oder den Verzeichnis-Bucket aus, der die Objekte enthält, die Sie kopieren möchten.
-
Wählen Sie dieObjekte-Tag. Markieren Sie auf der Seite Objekte das Kontrollkästchen links neben den Namen der Objekte, die Sie kopieren möchten.
-
Wählen Sie im Menü Actions (Aktionen) die Option Copy (Kopieren) aus.
Die Seite Kopieren wird angezeigt.
-
Wählen Sie unter Ziel den Verzeichnis-Bucket für Ihren Zieltyp aus. Um den Zielpfad anzugeben, wählen Sie S3 durchsuchen aus, navigieren Sie zum Ziel und markieren Sie das Kontrollkästchen links von dem Ziel. Wählen Sie unten rechts Choose destination (Ziel auswählen) aus.
Geben Sie alternativ den Zielpfad ein.
-
Wählen Sie unter Zusätzliche Kopiereinstellungen aus, ob Sie Quelleinstellungen kopieren, Keine Einstellungen angeben oder Einstellungen angeben möchten. Quelleinstellungen kopieren ist die Standardoption. Wenn Sie das Objekt nur ohne die Quelleinstellungsattribute kopieren möchten, wählen Sie Keine Einstellungen angeben aus. Wählen Sie Einstellungen angeben aus, um Einstellungen für serverseitige Verschlüsselung, Prüfsummen und Metadaten anzugeben.
-
Wählen Sie unten rechts Copy (Kopieren) aus. Amazon S3 kopiert Ihre Objekte in den Zielordner.
Anmerkung
Beim Kopieren eines Objekts in einen Allzweck-Bucket mit der Konsole gelten folgende Einschränkungen:
-
Die
Copy-Aktion gilt für alle Objekte in den angegebenen Ordnern (Präfixe). Objekte, die während der laufenden Aktion in diese Ordner hinzugefügt werden, könnten betroffen sein. -
Objekte, die mit vom Kunden bereitgestellten Verschlüsselungsschlüsseln (SSE-C) verschlüsselt wurden, können nicht mit der S3-Konsole kopiert werden. Um mit SSE-C verschlüsselte Objekte zu kopieren, verwenden Sie die AWS CLI, das AWS-SDK oder die Amazon-S3-REST-API.
-
Bei kopierten Objekten werden die Object-Lock-Einstellungen der Originalobjekte nicht beibehalten.
-
Wenn der Bucket, aus dem Sie Objekte kopieren, die Einstellung „Bucket-Eigentümer erzwungen“ für S3 Object Ownership verwendet, werden Objekt-ACLs nicht in das angegebene Ziel kopiert.
-
Wenn Sie Objekte in einen Bucket kopieren möchten, der die Einstellung „Bucket-Eigentümer erzwungen“ für S3 Object Ownership verwendet, stellen Sie sicher, dass der Quell-Bucket auch die erzwungene Einstellung des Bucket-Eigentümers verwendet, oder entfernen Sie alle Objekt-ACL-Zuweisungen zu anderen AWS-Konten und -Gruppen.
So kopieren Sie ein Objekt aus einem Verzeichnis-Bucket in einen Allzweck-Bucket
Melden Sie sich bei der AWS-Managementkonsole an und öffnen Sie die Amazon-S3-Konsole unter https://console.aws.amazon.com/s3/
. -
Wählen Sie im linken Navigationsbereich Buckets aus.
Wählen Sie die Registerkarte Verzeichnis-Buckets aus.
-
Wählen Sie den Verzeichnis-Bucket aus, der die Objekte enthält, die Sie kopieren möchten.
-
Wählen Sie dieObjekte-Tag. Markieren Sie auf der Seite Objekte das Kontrollkästchen links neben den Namen der Objekte, die Sie kopieren möchten.
-
Wählen Sie im Menü Actions (Aktionen) die Option Copy (Kopieren) aus.
-
Wählen Sie unter Ziel den Allzweck-Bucket für Ihren Zieltyp aus. Um den Zielpfad anzugeben, wählen Sie S3 durchsuchen aus, navigieren Sie zum Ziel und wählen Sie die Optionsschaltfläche links vom Ziel aus. Wählen Sie unten rechts Choose destination (Ziel auswählen) aus.
Geben Sie alternativ den Zielpfad ein.
-
Wählen Sie unter Zusätzliche Kopiereinstellungen aus, ob Sie Quelleinstellungen kopieren, Keine Einstellungen angeben oder Einstellungen angeben möchten. Quelleinstellungen kopieren ist die Standardoption. Wenn Sie das Objekt nur ohne die Quelleinstellungsattribute kopieren möchten, wählen Sie Keine Einstellungen angeben aus. Wählen Sie Einstellungen angeben aus, um Einstellungen für die Speicherklasse, ACLs, Objekt-Tags, Metadaten, serverseitige Verschlüsselung und zusätzliche Prüfsummen anzugeben.
-
Wählen Sie unten rechts Copy (Kopieren) aus. Amazon S3 kopiert Ihre Objekte in den Zielordner.
Der folgende copy-object-Beispielbefehl zeigt, wie Sie die AWS CLI verwenden können, um ein Objekt von einem Bucket in einen anderen Bucket zu kopieren. Sie können Objekte zwischen Bucket-Typen kopieren. Um den Befehl zu verwenden, ersetzen Sie den Platzhaltertext des Benutzers durch Ihre eigenen Informationen.
aws s3api copy-object --copy-sourceSOURCE_BUCKET/SOURCE_KEY_NAME--keyTARGET_KEY_NAME--bucketTARGET_BUCKET_NAME
Weitere Informationen finden Sie unter copy-object