ListObjects
Dieser Vorgang gibt einige oder alle Objekte in einem Bucket zurück, bis zu 1.000.
Anfragebeispiel:
GET /{fully_qualified_bucket_name} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Beispielantwort (erfolgreich):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
<ListBucketResult>
<Name>{fully_qualified_bucket_name}</Name>
<Prefix></Prefix>
<Marker></Marker>
<Contents>
<Key>example-object.jpg</Key>
<LastModified>2022-10-17T01:56:20.000Z</LastModified>
<ETag>"bf1d937a4d46a19f3basdfeg5cc8b902"</ETag>
<Size>32347</Size>
<Owner>
<ID>canonical-user-id</ID>
<DisplayName>example-display-name</DisplayName>
</Owner>
<StorageClass>STANDARD</StorageClass>
</Contents>
</ListBucketResult>
ListObjectsV2
Dieser Vorgang gibt einige oder alle Objekte in einem Bucket zurück, bis zu 1.000.
Anfragebeispiel:
GET /{fully_qualified_bucket_name}?list-type=2 HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Beispielantwort (erfolgreich):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
<ListBucketResult>
<Name>{fully_qualified_bucket_name}</Name>
<Prefix></Prefix>
<Marker></Marker>
<Contents>
<Key>example-object.jpg</Key>
<LastModified>2022-10-17T01:56:20.000Z</LastModified>
<ETag>"bf1d937a4d46a19f3basdfeg5cc8b902"</ETag>
<Size>32347</Size>
<Owner>
<ID>canonical-user-id</ID>
<DisplayName>example-display-name</DisplayName>
</Owner>
<StorageClass>STANDARD</StorageClass>
</Contents>
</ListBucketResult>
GetObject (versionId optional)
Mit diesem Vorgang wird ein Objekt aus einem Bucket mit einer optionalen Versions-ID abgerufen.
Anfragebeispiel:
GET /{fully_qualified_bucket_name}/{object_name}?versionId={object_version_id} HTTP/1.1
Host: host
Content-MD5: request header
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Beispielantwort (erfolgreich):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"
Content-Length: 13432
[13432 bytes of object data]
GetObjectAcl (versionId optional)
Dieser Vorgang gibt eine positive Antwort und die ID, den Anzeigenamen und die Berechtigung des Objektinhabers zurück. Das bedeutet, dass der Inhaber vollen Zugriff auf das Objekt hat. Für diesen Vorgang müssen Anmeldedaten für das Konto angegeben werden.
Anfragebeispiel:
GET /{fully_qualified_bucket_name}/{object_name}?acl&versionId={VersionId} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Beispielantwort (erfolgreich):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
Content-Length: 157
<AccessControlPolicy>
<Owner>
<ID>canonical-user-id</ID>
<DisplayName>example-display-name</DisplayName>
</Owner>
<AccessControlList>
<Grant>
<Grantee>
<ID>canonical-user-id</ID>
<DisplayName>example-display-name</DisplayName>
<Type>CanonicalUser</Type>
</Grantee>
<Permission>FULL_CONTROL</Permission>
</Grant>
</AccessControlList>
</AccessControlPolicy>
GetObjectRetention (versionId optional)
Mit diesem Vorgang werden der Aufbewahrungsmodus für das angegebene Objekt und das Datum abgerufen, an dem die Aufbewahrung der Objektsperre abläuft. Der Bucket muss eine Konfiguration für die Objektsperre haben.
Anfragebeispiel:
GET /{fully_qualified_bucket_name}/{object_name}?retention&versionId={VersionId} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
X-amz-expected-bucket-owner: ExpectedBucketOwner (optional)
Beispielantwort (erfolgreich):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
<Retention>
<Mode>COMPLIANCE</Mode>
<Timestamp>2022-10-17T01:56:20.000Z</Timestamp>
</Retention>
GetObjectLegalHold (versionId optional)
Mit diesem Vorgang wird der aktuelle Status des Legal Hold eines Objekts abgerufen. Der Bucket muss eine Konfiguration für die Objektsperre haben.
Anfragebeispiel:
GET /{fully_qualified_bucket_name}/{object_name}?legal-hold&versionId={VersionId} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
X-amz-expected-bucket-owner: ExpectedBucketOwner (optional)
Beispielantwort (erfolgreich):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
<LegalHold>
<Status>ON</Status>
</LegalHold>
GetObjectTagging (versionId optional)
Bei diesem Vorgang wird die Tagging-Unterressource verwendet, um alle Tags für ein Objekt zurückzugeben. Wenn der Parameter versionId nicht angegeben ist, gibt der Vorgang alle Tags aus der neuesten Version des Objekts in einem versionierten Bucket zurück. Wenn die aktuelle Version des Objekts eine Löschmarkierung ist, wird der Status MethodNotAllowed zurückgegeben und der Antwortheader x-amz-deletemarker auf true gesetzt.
Anfragebeispiel:
GET /{fully_qualified_bucket_name}/{object_name}?tagging&versionId={VersionId} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
X-amz-expected-bucket-owner: ExpectedBucketOwner (optional)
Beispielantwort (erfolgreich):
HTTP/1.1 200 OK
Date: Mon, 17 Oct 2022 22:47:09 GMT
<Tagging>
<TagSet>
<Tag>
<Key>tag1</Key>
<Value>val1</Value>
</Tag>
<Tag>
<Key>tag2</Key>
<Value>val2</Value>
</Tag>
</TagSet>
</Tagging>
PutObject
Mit diesem Vorgang wird einem Bucket ein Objekt hinzugefügt. Sie benötigen die entsprechenden SCHREIBBERECHTIGUNGEN für einen Bucket, um ihm ein Objekt hinzuzufügen.
Verschlüsselungsversion 2
Bei einem EV2-Bucket (Encryption Version 2) wird für die Verschlüsselung ein Standard-AEAD-Schlüssel verwendet, wenn keine benutzerdefinierten Schlüssel angegeben sind.
Wenn Sie einen benutzerdefinierten AEAD-Schlüssel für die Verschlüsselung verwenden möchten, müssen zwei Header festgelegt werden:
x-amz-server-side-encryption: SSE-KMS: Gibt an, dass mit dieser Anfrage versucht wird, einen benutzerdefinierten AEAD-Schlüssel zu verwenden.x-amz-server-side-encryption-aws-kms-key-id: {custom_key_namespace}/{custom_key_name}: Gibt den Schlüssel an, der verwendet werden soll. Der Schlüssel-Namespace muss sich im selben Projekt wie der Bucket befinden.
Anfragebeispiel:
PUT /{fully_qualified_bucket_name}/{object_name} HTTP/1.1
Host: host
Content-MD5: request header
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-Length: 5233
Content-type: text/plain
[5233 bytes of object data]
Beispielantwort (erfolgreich):
HTTP/1.1 100 Continue
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6C
Date: Mon, 17 Oct 2022 22:47:09 GMT
ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"
PutObjectTagging
Bei diesem Vorgang wird die Tagging-Unterressource verwendet, um einem vorhandenen Objekt eine Reihe von Tags hinzuzufügen.
Anfragebeispiel:
PUT /{fully_qualified_bucket_name}/{object_name}?tagging HTTP/1.1
Host: host
Content-MD5: +b9TrAB9F8ne7rJpPkqavQ==
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-Length: {length}
Content-type: text/plain
<Tagging>
<TagSet>
<Tag>
<key>my-tag-key</key>
<value>my-tag-value</value>
</Tag>
</TagSet>
</Tagging>
Beispielantwort (erfolgreich):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6C
Date: Mon, 17 Oct 2022 22:47:09 GMT
DeleteObjects (versionId optional)
Mit diesem Vorgang können Sie mehrere Objekte aus einem einzelnen Bucket mit einer einzigen Anfrage löschen. Die Anfrage kann eine Liste mit bis zu 1.000 Schlüsseln enthalten, die Sie löschen möchten.
Anfragebeispiel:
DELETE /{fully_qualified_bucket_name}/{object_name}?versionId={VersionId} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-type: text/plain
<Delete xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Object>
<Key>object_one.jpg</Key>
<VersionId>1234568892</VersionId>
</Object>
<Object>
<Key>object_two.jpg</Key>
</Object>
</Delete>
Beispielantwort (erfolgreich):
HTTP/1.1 200 OK
x-amz-id-2: 5h4FxSNCUS7wP5z92eGCWDshNpMnRuXvETa4HH3LvvH6VAIr0jU7tH9kM7X+njXx
x-amz-request-id: A437B3B641629AEE
Date: Fri, 02 Oct 2023 01:53:42 GMT
Content-Type: application/xml
Content-Length: 251
<?xml version="1.0" encoding="UTF-8"?>
<DeleteResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Deleted>
<Key>object_one.jpg</Key>
</Deleted>
<Error>
<Key>object_two.jpg</Key>
<Code>AccessDenied</Code>
<Message>Access Denied</Message>
</Error>
</DeleteResult>
DeleteObject (versionId optional)
Entfernt ein Objekt aus einem Bucket. Das Verhalten hängt vom Versionsverwaltungsstatus des Buckets ab: – Wenn die Bucket-Versionsverwaltung nicht aktiviert ist, wird das Objekt durch den Vorgang endgültig gelöscht. – Wenn die Bucket-Versionsverwaltung aktiviert ist, wird durch den Vorgang eine Löschmarkierung eingefügt, die zur aktuellen Version des Objekts wird. Wenn Sie ein Objekt in einem versionierten Bucket endgültig löschen möchten, müssen Sie die „versionId“ des Objekts in der Anfrage angeben.
Anfragebeispiel:
DELETE /{fully_qualified_bucket_name}/{object_name}?versionId={VersionId} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-type: text/plain
Beispielantwort (erfolgreich):
HTTP/1.1 204 NoContent
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6C
Date: Mon, 17 Oct 2022 22:47:09 GMT
DeleteObjectTagging (versionId optional)
Bei diesem Vorgang wird die Tagging-Unterressource verwendet, um alle Tags aus einem Objekt zu entfernen.
Anfragebeispiel:
DELETE /{fully_qualified_bucket_name}/{object_name}?tagging&versionId={VersionId} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-type: text/plain
Beispielantwort (erfolgreich):
HTTP/1.1 204 NoContent
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6C
Date: Mon, 17 Oct 2022 22:47:09 GMT
HeadObject (versionId optional)
Mit dem HEAD-Vorgang werden Metadaten aus einem Objekt abgerufen, ohne das Objekt selbst zurückzugeben. Dieser Vorgang ist nützlich, wenn Sie nur an den Metadaten eines Objekts interessiert sind.
Anfragebeispiel:
HEAD /{fully_qualified_bucket_name}/{object_name}?versionId={VersionId} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-type: text/plain
Beispielantwort (erfolgreich):
HTTP/1.1 200
x-amz-id-2: ef8yU9AS1ed4OpIszj7UDNEHGran
x-amz-request-id: 318BC8BC143432E5
x-amz-version-id: 3HL4kqtJlcpXroDTDmjVBH40Nrjfkd
Date: Wed, 28 Oct 2023 22:32:00 GMT
Last-Modified: Sun, 1 Jan 2006 12:00:00 GMT
ETag: "fba9dede5f27731c9771645a39863328"
Content-Length: 434234
Content-Type: text/plain
Connection: close
CreateMultipartUpload
Mit dieser Aktion wird ein mehrteiliger Upload gestartet und eine Upload-ID zurückgegeben.
Mit einem mehrteiligen Upload können Sie ein einzelnes Objekt als eine Reihe von Teilen hinzufügen. Jeder Teil ist ein zusammenhängender Teil der Objektdaten. Laden Sie diese Objektteile unabhängig voneinander und in beliebiger Reihenfolge hoch.
Die zurückgegebene Upload-ID wird verwendet, um alle Teile im spezifischen mehrteiligen Upload zu verknüpfen. Sie geben diese Upload-ID in jeder Ihrer nachfolgenden Upload-Teilanfragen an. Sie verwenden diese Upload-ID auch in der letzten Anfrage, um die mehrteilige Uploadanfrage entweder abzuschließen oder abzubrechen.
Verschlüsselungsversion 2
Die zurückgegebene Upload-ID für einen EV2-Bucket (Encryption Version 2) wird nur einmal erstellt. Wenn die von diesem Vorgang zurückgegebene Upload-ID verloren geht, kann sie nicht über ListMultipartUploads wiederhergestellt werden. Die von ListMultipartUploads zurückgegebenen Upload-IDs können jedoch für AbortMultipartUpload oder ListParts verwendet werden. Nur die von CreateMultipartUpload zurückgegebene ID kann für UploadPart oder CompleteMultipartUpload verwendet werden.
Anfragebeispiel:
POST /{fully_qualified_bucket_name}/{object_name}?uploads HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-type: text/plain
Beispielantwort (erfolgreich):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
<InitiateMultipartUploadResult>
<Bucket>{fully_qualified_bucket_name}</Bucket>
<Key>{object_name}</Key>
<UploadId>VXBsb2FkIElEIGZvciA2aWWpbmcncyBteS1tb3ZpZS5tMnRzIHVwbG9hZA</UploadId>
</InitiateMultipartUploadResult>
ListMultipartUploads (max-uploads optional)
Mit diesem Vorgang werden laufende mehrteilige Uploads für einen Bucket aufgelistet.
Verschlüsselungsversion 2
Die von diesem Vorgang zurückgegebenen Upload-IDs funktionieren nur mit ListParts und AbortMultipartUpload.
Anfragebeispiel:
GET /{fully_qualified_bucket_name}?uploads&max-uploads={max-uploads} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-type: text/plain
Beispielantwort (erfolgreich):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
<ListMultipartUploadsResult>
<Bucket>{fully_qualified_bucket_name}</Bucket>
<KeyMarker></KeyMarker>
<UploadIdMarker></UploadIdMarker>
<NextKeyMarker>my-movie.m2ts</NextKeyMarker>
<NextUploadIdMarker>YW55IGlkZWEgd2h5IGVsdmluZydzIHVwbG9hZCBmYWlsZWQ</NextUploadIdMarker>
<MaxUploads>3</MaxUploads>
<IsTruncated>true</IsTruncated>
<Upload>
<Key>{object_name}</Key>
<UploadId>VXBsb2FkIElEIGZvciA2aWWpbmcncyBteS1tb3ZpZS5tMnRzIHVwbG9hZA</UploadId>
<Initiator>
<ID>{canonical-user-id}</ID>
<DisplayName>InitiatorDisplayName</DisplayName>
</Initiator>
<Owner>
<ID>{canonical-owner-user-id}</ID>
<DisplayName>OwnerDisplayName</DisplayName>
</Owner>
<StorageClass>STANDARD</StorageClass>
<Initiated>2022-10-17T01:56:20.000Z</Initiated>
</Upload>
</ListMultipartUploadsResult>
ListParts (max-parts optional)
Mit diesem Vorgang werden die Teile aufgelistet,die für einen bestimmten mehrteiligen Upload hochgeladen wurden. Standardmäßig werden maximal 1.000 hochgeladene Teile zurückgegeben. Sie müssen die Upload-ID angeben, die Sie mit der Anfrage CreateMultipartUpload erhalten haben.
Verschlüsselungsversion 2
Die von CreateMultipartUpload oder ListMultipartUploads zurückgegebene Upload-ID kann für diese Anfrage verwendet werden.
Anfragebeispiel:
GET /{fully_qualified_bucket_name}/{object_name}?uploadId={uploadId}&max-parts={max-parts} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-type: text/plain
Beispielantwort (erfolgreich):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
<ListPartsResult>
<Bucket>{fully_qualified_bucket_name}</Bucket>
<Key>{object_name}</Key>
<UploadId>{uploadId}</UploadId>
<Initiator>
<ID>{canonical-user-id}</ID>
<DisplayName>InitiatorDisplayName</DisplayName>
</Initiator>
<Owner>
<ID>{canonical-owner-id}</ID>
<DisplayName>OwnerDisplayName</DisplayName>
</Owner>
<StorageClass>STANDARD</StorageClass>
<PartNumberMarker></PartNumberMarker>
<NextPartNumberMarker></NextPartNumberMarker>
<MaxParts>{max-parts}</MaxParts>
<IsTruncated>true</IsTruncated>
<Part>
<PartNumber>2</PartNumber>
<LastModified>2022-10-17T01:56:20.000Z</LastModified>
<ETag>"7778aef8t866abc1fa1e8466f296d394"</ETag>
<Size>10485769</Size>
</Part>
<Part>
<PartNumber>3</PartNumber>
<LastModified>2022-10-17T01:56:20.000Z</LastModified>
<ETag>"aaab18db4cc2f85cedef854fccci24x8"</ETag>
<Size>10423760</Size>
</Part>
</ListPartsResult>
UploadPart
Mit diesem Vorgang wird ein Teil in einem mehrteiligen Upload für ein Objekt hochgeladen.
Verschlüsselungsversion 2
Für einen EV2-Bucket (Encryption Version 2) müssen Sie die von CreateMultipartUpload zurückgegebene ID verwenden. Die von ListMutlipartUploads zurückgegebenen IDs funktionieren für diese Anfrage nicht.
Anfragebeispiel:
PUT /{fully_qualified_bucket_name}/{object_name}?uploadId={uploadId}&partNumber={partNumber} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-Length: 345442
Content-MD5: +b9TrAB9F8ne7rJpPkqavQ==
[part data omitted, 345442 bytes of part data]
Beispielantwort (erfolgreich):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"
AbortMultipartUpload
Mit dieser Aktion wird ein mehrteiliger Upload abgebrochen und die Upload-ID für das Hochladen weiterer Teile ungültig gemacht. Der von zuvor hochgeladenen Teilen belegte Speicherplatz wird freigegeben.
Verschlüsselungsversion 2
Für einen EV2-Bucket (Encryption Version 2) können Sie für diesen Vorgang entweder die von CreateMultipartUpload oder ListMultipartUploads zurückgegebene ID verwenden.
Anfragebeispiel:
DELETE /{fully_qualified_bucket_name}/{object_name}?uploadId={uploadId} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-type: text/plain
Beispielantwort (erfolgreich):
HTTP/1.1 204 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6C
Date: Mon, 17 Oct 2022 22:47:09 GMT
CompleteMultipartUpload
Mit diesem Vorgang wird ein mehrteiliger Upload eines Objekts abgeschlossen, indem die zuvor hochgeladenen Teile zusammengesetzt werden.
Verschlüsselungsversion 2
Für einen EV2-Bucket (Encryption Version 2) müssen Sie die von CreateMultipartUpload zurückgegebene ID verwenden. Die von ListMutlipartUploads zurückgegebenen IDs funktionieren für diese Anfrage NICHT.
Wenn Sie einen benutzerdefinierten AEAD-Schlüssel für die Verschlüsselung verwenden möchten, müssen zwei Header festgelegt werden:
x-amz-server-side-encryption: SSE-KMS: Gibt an, dass mit dieser Anfrage versucht wird, einen benutzerdefinierten AEAD-Schlüssel zu verwenden.x-amz-server-side-encryption-aws-kms-key-id: {custom_key_namespace}/{custom_key_name}: Gibt den Schlüssel an, der verwendet werden soll. Der Schlüssel-Namespace muss sich im selben Projekt wie der Bucket befinden.
Anfragebeispiel:
POST /{fully_qualified_bucket_name}/{object_name}?uploadId={uploadId} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-Length: 391
Content-type: text/plain
<CompleteMultipartUpload>
<Part>
<PartNumber>1</PartNumber>
<ETag>"a54357aff0632cce46d942af68356b38"</ETag>
</Part>
<Part>
<PartNumber>2</PartNumber>
<ETag>"0c78aef83f66abc1fa1e8477f296d394"</ETag>
</Part>
<Part>
<PartNumber>3</PartNumber>
<ETag>"acbd18db4cc2f85cedef654fccc4a4d8"</ETag>
</Part>
</CompleteMultipartUpload>
Beispielantwort (erfolgreich):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
<CompleteMultipartUploadResult>
<Location>http://{host}/{fully_qualified_bucket_name}/{object_name}</Location>
<Bucket>{fully_qualified_bucket_name}</Bucket>
<Key>{object_name}</Key>
<ETag>"acbd18db4cc2f85cedef654fccc4a4d8"</ETag>
</CompleteMultipartUploadResult>
CopyObject
Dieser Vorgang ist ein spezieller Typ von PutObject, bei dem die Daten aus einem Quellobjekt abgerufen werden, das bereits im Objektspeicher vorhanden ist.
Der Quell-Bucket und der Objektschlüssel werden als Wert für den Header x-amz-copy-source angegeben, getrennt durch ein /. Wenn Sie beispielsweise das Objekt images/my_image.jpg aus dem Bucket my_bucket kopieren möchten, muss der Wert my_bucket/images/my_image.jpg festgelegt werden.
Verschlüsselungsversion 2
Bei einem EV2-Bucket (Encryption Version 2) muss dieses Quellobjekt aus einem Encryption V2-Bucket stammen, andernfalls schlägt der Vorgang fehl.
Wenn Sie einen benutzerdefinierten AEAD-Schlüssel für die Verschlüsselung verwenden möchten, müssen zwei Header festgelegt werden:
x-amz-server-side-encryption: SSE-KMS: Gibt an, dass mit dieser Anfrage versucht wird, einen benutzerdefinierten AEAD-Schlüssel zu verwenden.x-amz-server-side-encryption-aws-kms-key-id: {custom_key_namespace}/{custom_key_name}: Gibt den Schlüssel an, der verwendet werden soll. Der Schlüssel-Namespace muss sich im selben Projekt wie der Bucket befinden.
Anfragebeispiel:
PUT /{fully_qualified_bucket_name}/{object_name} HTTP/1.1
Host: host
X-Amz-Copy-Source: my_bucket/images/my_image.jpg
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Beispielantwort (erfolgreich):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6C
x-amz-copy-source-version-id: 3/L4kqtJlcpXroDTDmJ+rmSpXd3dIbrHY+MTRCxf3vjVBH40Nr8X8gdRQBpUMLUo
Date: Mon, 17 Oct 2022 22:47:09 GMT
<CopyObjectResult>
<LastModified>2009-10-12T17:50:30.000Z</LastModified>
<ETag>"9b2cf535f27731c974343645a3985328"</ETag>
</CopyObjectResult>
UploadPartCopy
Bei diesem Vorgang wird ein bereits im Objektspeicher vorhandenes Objekt als Daten für einen einzelnen Teil in einem mehrteiligen Upload verwendet.
Der Quell-Bucket und der Objektschlüssel werden als Wert für den Header x-amz-copy-source angegeben, getrennt durch ein /. Wenn Sie beispielsweise das Objekt images/my_image.jpg aus dem Bucket my_bucket kopieren möchten, muss der Wert my_bucket/images/my_image.jpg festgelegt werden.
Verschlüsselungsversion 2
Dieser Vorgang wird für EV2-Buckets (Encryption Version 2) nicht unterstützt.
Anfragebeispiel:
PUT /{fully_qualified_bucket_name}/{object_name}?uploadId={uploadId}&partNumber={partNumber} HTTP/1.1
Host: host
X-Amz-Copy-Source: my_bucket/images/my_image.jpg
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Beispielantwort (erfolgreich):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6C
x-amz-copy-source-version-id: 3/L4kqtJlcpXroDTDmJ+rmSpXd3dIbrHY+MTRCxf3vjVBH40Nr8X8gdRQBpUMLUo
Date: Mon, 17 Oct 2022 22:47:09 GMT
<CopyPartResult>
<ETag>string</ETag>
<LastModified>timestamp</LastModified>
<ChecksumCRC32>string</ChecksumCRC32>
<ChecksumCRC32C>string</ChecksumCRC32C>
<ChecksumSHA1>string</ChecksumSHA1>
<ChecksumSHA256>string</ChecksumSHA256>
</CopyPartResult>