Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
POST Object
Description
L'POSTopération ajoute un objet à un compartiment spécifié à l'aide de formulaires HTML. POSTest une autre forme PUT qui permet les téléchargements via un navigateur afin de placer des objets dans des compartiments. Les paramètres transmis PUT via les en-têtes HTTP sont plutôt transmis sous forme de champs de formulaire POST dans le corps du message codé en multipart/form -data. Pour ajouter un objet à un compartiment, vous devez WRITE y avoir accès. Amazon S3 ne stocke jamais d'objets partiels. Si vous recevez une réponse positive, vous pouvez être sûr que l'objet entier a été stocké.
Amazon S3 est un système distribué. À moins que vous n'ayez activé la gestion des versions pour un compartiment, si Amazon S3 reçoit simultanément plusieurs demandes d'écriture pour le même objet, seule la dernière version de l'objet écrite est stockée.
Pour vous assurer que les données ne sont pas corrompues lors de la traversée du réseau, utilisez le champ du Content-MD5 formulaire. Lorsque vous utilisez ce champ de formulaire, Amazon S3 compare l'objet à la valeur MD5 fournie. S'ils ne correspondent pas, Amazon S3 renvoie un message d'erreur. En outre, vous pouvez calculer la valeur MD5 lors de la publication d'un objet sur Amazon S3 et comparer la valeur renvoyée ETag à la valeur MD5 calculée. L'ETag reflète uniquement les modifications apportées au contenu d'un objet, pas à ses métadonnées.
Note
Pour configurer votre application afin qu'elle envoie les en-têtes de demande avant d'envoyer le corps de la demande, utilisez le code d'état HTTP 100 (Continuer). Pour les POST opérations, l'utilisation de ce code d'état vous permet d'éviter d'envoyer le corps du message si celui-ci est rejeté sur la base des en-têtes (par exemple, en raison d'un échec d'authentification ou d'une redirection). Pour plus d'informations sur le code d'état HTTP 100 (Continuer), reportez-vous à la Section 8.2.3 de http://www.ietf.org/rfc/rfc2616.txt
Amazon S3 chiffre automatiquement tous les nouveaux objets chargés dans un compartiment S3. Le paramètre de chiffrement d'un objet chargé dépend de la configuration de chiffrement par défaut du compartiment de destination. Par défaut, tous les compartiments ont une configuration de chiffrement par défaut qui utilise le chiffrement côté serveur avec des clés gérées par Amazon S3 (). SSE-S3
Si le compartiment de destination possède une configuration de chiffrement qui utilise le chiffrement côté serveur avec une clé AWS Key Management Service (AWS KMS) clé (SSE-KMS), un cryptage double couche côté serveur avec une AWS KMS clé (DSSE-KMS) ou une clé de cryptage fournie par le client (SSE-C), Amazon S3 utilise la clé KMS correspondante ou la clé fournie par le client pour chiffrer l'objet chargé. Lorsque vous chargez un objet, si vous souhaitez modifier le paramètre de cryptage de l'objet chargé, vous pouvez spécifier le type de cryptage côté serveur. Vous pouvez configurer SSE-S3 SSE-KMS, DSSE-KMS, ou SSE-C. Pour plus d’informations, consultez Protection des données à l’aide du chiffrement côté serveur dans le Guide de l’utilisateur Amazon Simple Storage Service.
Important
Lors de la création de votre demande, assurez-vous que le file champ est le dernier du formulaire.
Requêtes
Syntaxe
POST / HTTP/1.1 Host:destinationBucket.s3.amazonaws.com User-Agent:browser_dataAccept:file_typesAccept-Language:RegionsAccept-Encoding:encodingAccept-Charset:character_setKeep-Alive: 300 Connection: keep-alive Content-Type: multipart/form-data; boundary=9431149156168 Content-Length:length--9431149156168 Content-Disposition: form-data; name="key"acl--9431149156168 Content-Disposition: form-data; name="tagging" <Tagging><TagSet><Tag><Key>Tag Name</Key><Value>Tag Value</Value></Tag></TagSet></Tagging> --9431149156168 Content-Disposition: form-data; name="success_action_redirect"success_redirect--9431149156168 Content-Disposition: form-data; name="Content-Type"content_type--9431149156168 Content-Disposition: form-data; name="x-amz-meta-uuid"uuid--9431149156168 Content-Disposition: form-data; name="x-amz-meta-tag"metadata--9431149156168 Content-Disposition: form-data; name="AWSAccessKeyId"access-key-id--9431149156168 Content-Disposition: form-data; name="Policy"encoded_policy--9431149156168 Content-Disposition: form-data; name="Signature"signature= --9431149156168 Content-Disposition: form-data; name="file"; filename="MyFilename.jpg" Content-Type: image/jpegfile_content--9431149156168 Content-Disposition: form-data; name="submit" Upload to Amazon S3 --9431149156168--
Paramètres de demande
Cette implémentation de l'opération n'utilise pas de paramètres de demande.
Champs de formulaire
Cette opération peut utiliser les champs de formulaire suivants.
| Nom | Description | Obligatoire |
|---|---|---|
AWSAccessKeyId |
L'ID de clé d' AWS accès du propriétaire du bucket qui accorde à un utilisateur anonyme l'accès à une demande qui répond à l'ensemble de contraintes de la politique. Type : Chaîne Par défaut : aucun Contraintes : Obligatoire si un document de politique est inclus dans la demande. |
Conditionnel |
acl |
La liste de contrôle d'accès (ACL) Amazon S3 spécifiée. Si l'ACL spécifiée n'est pas valide, une erreur est générée. Pour plus d'informations sur les ACL, consultez la section Présentation de la liste de contrôle d'accès (ACL) dans le guide de l'utilisateur d'Amazon Simple Storage Service. Type : Chaîne Valeur par défaut : private Valeurs valides : |
Non |
Cache-Control, Content-Type,
Content-Disposition, Content-Encoding,
Expires |
Les REST-specific en-têtes. Pour de plus amples informations, veuillez consulter PutObject. Type : Chaîne Par défaut : aucun |
Non |
file |
Le contenu du fichier ou du texte. Le contenu du fichier ou du texte doit être le dernier champ du formulaire. Vous ne pouvez pas charger plus d'un fichier à la fois. Type : contenu de fichier ou de texte Par défaut : aucun |
Oui |
key |
Nom de la clé chargée. Pour utiliser le nom de fichier fourni par l'utilisateur, utilisez la Pour plus d'informations, consultez la section Clé d'objet et métadonnées dans le guide de l'utilisateur d'Amazon Simple Storage Service. Type : Chaîne Par défaut : aucun |
Oui |
policy |
La politique de sécurité qui décrit ce qui est autorisé dans la demande. Les demandes sans politique de sécurité sont considérées comme anonymes et ne fonctionnent que sur des compartiments accessibles en écriture publique. Pour plus d'informations, consultez les formulaires HTML et les exemples de téléchargement dans le guide de l'utilisateur d'Amazon Simple Storage Service. Type : Chaîne Par défaut : aucun Contraintes : une politique de sécurité est requise si le bucket n'est pas accessible en écriture publique. |
Conditionnel |
success_action_redirect, redirect |
URL vers laquelle le client est redirigé en cas de téléchargement réussi. Si Si Amazon S3 ne peut pas interpréter l'URL, il agit comme si le champ n'était pas présent. Si le téléchargement échoue, Amazon S3 affiche une erreur et ne redirige pas l'utilisateur vers une URL. Type : Chaîne Par défaut : aucun NoteLe nom du |
Non |
success_action_status |
Si vous ne le spécifiez pas Ce champ accepte les valeurs Si la valeur est définie sur Si la valeur est définie sur Si la valeur n'est pas définie ou si elle est définie sur une valeur non valide, Amazon S3 renvoie un document vide avec un code de statut 204. Type : Chaîne Par défaut : aucun |
Non |
tagging |
Ensemble de balises spécifié à ajouter à l'objet. Pour ajouter des balises, utilisez le schéma de codage suivant.
Pour plus d'informations, consultez la section Marquage des objets dans le guide de l'utilisateur d'Amazon Simple Storage Service. Type : Chaîne Par défaut : aucun |
Non |
x-amz-storage-class |
Classe de stockage à utiliser pour stocker l'objet. Si vous ne spécifiez aucune classe, Amazon S3 utilise la classe de stockage par défaut, Type : Chaîne Valeur par défaut : Valeurs valides : |
Non |
x-amz-meta-* |
Les en-têtes commençant par ce préfixe sont des métadonnées définies par l'utilisateur. Chacune est stockée et renvoyée sous la forme d'un ensemble de paires clé-valeur. Amazon S3 ne valide ni n'interprète les métadonnées définies par l'utilisateur. Pour de plus amples informations, veuillez consulter PutObject. Type : Chaîne Par défaut : aucun |
Non |
x-amz-security-token |
Le jeton DevPay de sécurité Amazon. Chaque demande qui utilise Amazon DevPay nécessite deux champs de Type : Chaîne Par défaut : aucun |
Non |
x-amz-signature |
(AWS Signature Version 4) Le HMAC-SHA256 hachage de la politique de sécurité. Type : Chaîne Par défaut : aucun |
Conditionnel |
x-amz-website-redirect-location
|
Si le compartiment est configuré en tant que site Web, ce champ redirige les demandes relatives à cet objet vers un autre objet du même compartiment ou vers une URL externe. Amazon S3 stocke la valeur de cet en-tête dans les métadonnées de l'objet. Pour plus d'informations sur les métadonnées des objets, consultez la section Clé d'objet et métadonnées dans le guide de l'utilisateur d'Amazon Simple Storage Service. Dans l'exemple suivant, l'en-tête de demande définit la redirection vers un objet (
Dans l'exemple suivant, l'en-tête de la demande définit la redirection de l'objet vers un autre site Web :
Pour plus d'informations sur l'hébergement de sites Web dans Amazon S3, consultez les rubriques Hébergement de sites Web sur Amazon S3 et Comment configurer les redirections de pages Web dans le guide de l'utilisateur d'Amazon Simple Storage Service. Type : Chaîne Par défaut : aucun Contraintes : la valeur doit être préfixée par |
Non |
Champs supplémentaires du formulaire de demande de somme de contrôle
Lorsque vous chargez un objet, vous pouvez spécifier les différentes sommes de contrôle que vous souhaitez utiliser pour vérifier l'intégrité de vos données. Vous pouvez spécifier un algorithme de somme de contrôle supplémentaire à utiliser par Amazon S3. Pour plus d'informations sur les valeurs de somme de contrôle supplémentaires, consultez la section Vérification de l'intégrité des objets dans le guide de l'utilisateur d'Amazon Simple Storage Service.
| Nom | Description | Obligatoire |
|---|---|---|
x-amz-checksum-algorithm
|
Indique l'algorithme utilisé pour créer la somme de contrôle pour l'objet. Si une valeur est spécifiée, vous devez inclure l'en-tête de somme de contrôle correspondant. Dans le cas contraire, votre demande générera une erreur 400. Les valeurs possibles incluent |
Non |
x-amz-checksum-crc32
|
Spécifie la somme de contrôle CRC32 32 bits codée en base64 de l'objet. Ce paramètre est obligatoire si la valeur de |
Conditionnel |
x-amz-checksum-crc32c
|
Spécifie la somme de contrôle CRC32C 32 bits codée en base64 de l'objet. Ce paramètre est obligatoire si la valeur de |
Conditionnel |
x-amz-checksum-sha1
|
Spécifie le SHA-1 condensé de 160 bits codé en base64 de l'objet. Ce paramètre est obligatoire si la valeur de |
Conditionnel |
x-amz-checksum-sha256
|
Spécifie le SHA-256 condensé de 256 bits codé en base64 de l'objet. Ce paramètre est obligatoire si la valeur de |
Conditionnel |
Server-Side Champs de formulaire de demande spécifiques au chiffrement
Server-side le chiffrement est le chiffrement des données au repos. Amazon S3 chiffre vos données lors de leur écriture sur des disques situés dans AWS des centres de données et les déchiffre lorsque vous y accédez. Lorsque vous chargez un objet, vous pouvez spécifier le type de chiffrement côté serveur qu'Amazon S3 doit utiliser pour chiffrer l'objet.
Il existe quatre types de chiffrement côté serveur :
-
Server-side chiffrement à l'aide de clés gérées par Amazon S3 (SSE-S3) : à compter de mai 2022, le chiffrement est configuré par défaut pour tous les compartiments Amazon S3. L'option par défaut pour le chiffrement côté serveur est avec. SSE-S3 Chaque objet est chiffré à l’aide d’une clé unique. Comme mesure de protection supplémentaire, SSE-S3 chiffre la clé elle-même à l'aide d'une clé racine qu'il change régulièrement. SSE-S3 utilise l'un des systèmes de chiffrement par blocs les plus puissants disponibles, le Advanced Encryption Standard (AES-256) 256 bits, pour chiffrer vos données.
-
Server-side chiffrement à l'aide de AWS KMS clés (SSE-KMS) : SSE-KMS est fourni par le biais d'une intégration du AWS KMS service à Amazon S3. Avec AWS KMS, vous avez plus de contrôle sur vos clés. Par exemple, vous pouvez afficher des clés distinctes, modifier des politiques de contrôle et suivre les clés dans AWS CloudTrail. En outre, vous pouvez créer et gérer les clés gérées par le client ou utiliser les Clés gérées par AWS qui sont propres à vous-même, à votre service et à votre région.
-
Dual-layer chiffrement côté serveur avec AWS KMS clés (DSSE-KMS) : le chiffrement côté Dual-layer serveur avec () est similaire au chiffrement côté serveur avec AWS KMS keys (DSSE-KMS) SSE-KMS, mais applique deux couches individuelles de chiffrement au niveau de l'objet au lieu d'une seule.
-
Server-side chiffrement à l'aide de clés fournies par le client (SSE-C) : avec SSE-C, vous gérez les clés de chiffrement, et Amazon S3 gère le chiffrement lors de l'écriture sur les disques, ainsi que le déchiffrement lorsque vous accédez à vos objets.
Note
Si le chiffrement côté serveur avec les clés fournies par le client (SSE-C) est bloqué pour votre compartiment à usage général, une erreur HTTP 403 Access Denied s'affiche lorsque vous spécifiez les en-têtes de SSE-C demande lors de l'écriture de nouvelles données dans votre bucket. Pour plus d'informations, consultez la section Blocage ou déblocage SSE-C d'un compartiment à usage général.
Pour plus d'informations, consultez la section Protection des données à l'aide du chiffrement côté serveur dans le guide de l'utilisateur d'Amazon Simple Storage Service.
Selon le type de chiffrement côté serveur que vous souhaitez utiliser, spécifiez les champs de formulaire suivants.
-
Utiliser SSE-S3 SSE-KMS, ou DSSE-KMS — Si vous souhaitez utiliser ces types de chiffrement côté serveur, spécifiez les champs de formulaire suivants dans la demande.
Nom Description Obligatoire x-amz-server-side-encryptionSpécifie l'algorithme de chiffrement côté serveur à utiliser lorsqu'Amazon S3 crée un objet. Pour l'utiliser SSE-S3, spécifiez
AES256. Pour l'utiliser SSE-KMS, spécifiezaws:kms. Pour l'utiliser DSSE-KMS, spécifiezaws:kms:dsse.Type : Chaîne
Valeur valide :
aws:kms,AES256,aws:kms:dsseOui x-amz-server-side-encryption-aws-kms-key-idSi l'
x-amz-server-side-encryptionen-tête a une valeur valide deaws:kmsouaws:kms:dsse, cet en-tête spécifie l'ID de l'objet AWS KMS key qui a été utilisé pour chiffrer l'objet.Type : Chaîne
Oui, si la valeur de x-amz-server-side-encryptionestaws:kmsouaws:kms:dssex-amz-server-side-encryption-contextSi la valeur
aws:kmsoux-amz-server-side-encryptionest valideaws:kms:dsse, cet en-tête spécifie le contexte de chiffrement de l'objet. La valeur de cet en-tête est une UTF-8 chaîne codée en base64 qui contient des paires JSON-formatted clé-valeur pour le contexte de chiffrement.Type : Chaîne
Non x-amz-server-side-encryption-bucket-key-enabledSi la valeur
aws:kmsoux-amz-server-side-encryptionest valideaws:kms:dsse, cet en-tête indique si Amazon S3 doit utiliser une clé de compartiment S3 avec SSE-KMS ou DSSE-KMS. Si vous définissez cet en-têtetruepour qu'Amazon S3 utilise une clé de compartiment S3 pour le chiffrement des objets avec SSE-KMS ou DSSE-KMS.Type : Boolean
Non Note
Si vous spécifiez
x-amz-server-side-encryption:aws:kmsoux-amz-server-side-encryption:aws:kms:dsse, mais que vous ne le fournissez pasx-amz-server-side-encryption-aws-kms-key-id, Amazon S3 utilise le Clé gérée par AWS (aws/S3) pour protéger les données. -
Utilisation SSE-C — Si vous souhaitez gérer vos propres clés de chiffrement, vous devez fournir tous les champs de formulaire suivants dans la demande.
Note
Si vous utilisez SSE-C, la
ETagvaleur renvoyée par Amazon S3 dans la réponse n'est pas le MD5 de l'objet.Nom Description Obligatoire x-amz-server-side-encryption-customer-algorithmSpécifie l'algorithme à utiliser pour chiffrer l'objet.
Type : Chaîne
Par défaut : aucun
Valeur valide :
AES256Contraintes : Doit être accompagné de
x-amz-server-side-encryption-customer-key-MD5champsx-amz-server-side-encryption-customer-keyet valides.Oui x-amz-server-side-encryption-customer-keySpécifie la clé de chiffrement codée en base64 fournie par le client à utiliser par Amazon S3 pour chiffrer les données. Cette valeur est utilisée pour stocker l'objet, puis il est supprimé. Amazon ne stocke pas la clé de chiffrement. La clé doit être appropriée pour pouvoir être utilisée avec l'algorithme spécifié dans l'en-tête
x-amz-server-side-encryption-customer-algorithm.Type : Chaîne
Par défaut : aucun
Contraintes : Doit être accompagné de
x-amz-server-side-encryption-customer-key-MD5champsx-amz-server-side-encryption-customer-algorithmet valides.Oui x-amz-server-side-encryption-customer-key-MD5Spécifie le condensé MD5 128 bits codé en base64 de la clé de chiffrement conformément à la RFC 1321. http://tools.ietf.org/html/rfc1321
Amazon S3 utilise cet en-tête pour vérifier l'intégrité des messages afin de s'assurer que la clé de chiffrement a été transmise sans erreur. Type : Chaîne
Par défaut : aucun
Contraintes : Doit être accompagné de
x-amz-server-side-encryption-customer-keychampsx-amz-server-side-encryption-customer-algorithmet valides.Oui
Réponses
En-têtes de réponse
Cette implémentation de l'opération peut inclure les en-têtes de réponse suivants en plus des en-têtes de réponse communs à toutes les réponses. Pour plus d'informations, consultez la section En-têtes de réponse communs.
| Nom | Description |
|---|---|
x-amz-checksum-crc32
|
Somme de contrôle CRC32 32 bits codée en base64 de l'objet. Type : Chaîne |
x-amz-checksum-crc32c
|
Somme de contrôle CRC32C 32 bits codée en base64 de l'objet. Type : Chaîne |
x-amz-checksum-sha1
|
Résumé de 160 bits codé en base64 de l'objet SHA-1 . Type : Chaîne |
x-amz-checksum-sha256
|
Résumé de 256 bits codé en base64 de l'objet SHA-256 . Type : Chaîne |
x-amz-expiration
|
Si une Type : Chaîne |
success_action_redirect, redirect
|
URL vers laquelle le client est redirigé en cas de téléchargement réussi. Type : Chaîne Ancêtre : PostResponse |
x-amz-server-side-encryption
|
Algorithme de chiffrement côté serveur qui a été utilisé lors du stockage de cet objet dans Amazon S3 (par exemple,, Type : Chaîne |
x-amz-server-side-encryption-aws-kms-key-id
|
Si la valeur de l' Type : Chaîne |
x-amz-server-side-encryption-bucket-key-enabled
|
S'il Type : Boolean |
x-amz-server-side-encryption-customer-algorithm
|
Si cela SSE-C a été demandé, la réponse inclut cet en-tête, qui confirme l'algorithme de chiffrement utilisé. Type : Chaîne Valeurs valides : |
x-amz-server-side-encryption-customer-key-MD5
|
Si cela SSE-C a été demandé, la réponse inclut cet en-tête pour vérifier l'intégrité du message aller-retour de la clé de cryptage fournie par le client. Type : Chaîne |
x-amz-version-id |
Version de l'objet. Type : Chaîne |
Éléments de réponse
| Nom | Description |
|---|---|
Bucket
|
Le nom du compartiment dans lequel l'objet a été stocké. Type : Chaîne Ancêtre : PostResponse |
ETag
|
La balise d'entité (ETag) est un hachage MD5 de l'objet que vous pouvez utiliser pour effectuer des Type : Chaîne Ancêtre : PostResponse |
Key
|
Le nom de la clé de l'objet. Type : Chaîne Ancêtre : PostResponse |
Location
|
L'URI de l'objet. Type : Chaîne Ancêtre : PostResponse |
Erreurs spéciales
Cette implémentation de l'opération ne renvoie pas d'erreurs spéciales. Pour obtenir des informations générales sur les erreurs Amazon S3 et une liste des codes d'erreur, consultez la section Réponses aux erreurs.
Exemples
Exemple de demande
POST /Neo HTTP/1.1 Content-Length: 4 Host: quotes.s3.amazonaws.com Date: Wed, 01 Mar 2006 12:00:00 GMT Authorization:authorization stringContent-Type: text/plain Expect: the 100-continue HTTP status codeObjectContent
Exemple de réponse avec suspension de la gestion des versions
Voici un exemple de réponse lorsque la gestion des versions des compartiments est suspendue :
HTTP/1.1 100 Continue HTTP/1.1 200 OK x-amz-id-2: LriYPLdmOdAiIfgSm/F1YsViT1LW94/xUQxMsF7xiEb1a0wiIOIxl+zbwZ163pt7 x-amz-request-id: 0A49CE4060975EAC x-amz-version-id: default Date: Wed, 12 Oct 2009 17:50:00 GMT ETag: "1b2cf535f27731c974343645a3985328" Content-Length: 0 Connection: close Server: AmazonS3
Dans cette réponse, l'ID de version estnull.
Exemple de réponse avec la gestion des versions activée
Voici un exemple de réponse lorsque la gestion des versions des compartiments est activée.
HTTP/1.1 100 Continue HTTP/1.1 200 OK x-amz-id-2: LriYPLdmOdAiIfgSm/F1YsViT1LW94/xUQxMsF7xiEb1a0wiIOIxl+zbwZ163pt7 x-amz-request-id: 0A49CE4060975EAC x-amz-version-id: 43jfkodU8493jnFJD9fjj3HHNVfdsQUIFDNsidf038jfdsjGFDSIRp Date: Wed, 01 Mar 2006 12:00:00 GMT ETag: "828ef3fdfa96f00ad9f27c383fc9ac7f" Content-Length: 0 Connection: close Server: AmazonS3