Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
POST Object
Description
L'POSToperazione aggiunge un oggetto a un bucket specificato utilizzando moduli HTML. POSTè una forma alternativa PUT che consente i caricamenti basati su browser per inserire oggetti nei bucket. I parametri passati PUT tramite intestazioni HTTP vengono invece passati come campi del modulo POST nel corpo del messaggio con codifica -data. multipart/form Per aggiungere un oggetto a un bucket, devi avere WRITE accesso al bucket. Amazon S3 non archivia mai oggetti parziali. Se ricevi una risposta positiva, puoi essere certo che l'intero oggetto è stato archiviato.
Amazon S3 è un sistema distribuito. A meno che tu non abbia abilitato il controllo delle versioni per un bucket, se Amazon S3 riceve più richieste di scrittura per lo stesso oggetto contemporaneamente, viene archiviata solo l'ultima versione dell'oggetto scritto.
Per assicurarti che i dati non vengano danneggiati durante l'attraversamento della rete, utilizza il campo del modulo. Content-MD5 Quando utilizzi questo campo del modulo, Amazon S3 confronta l'oggetto con il valore MD5 fornito. Se non corrispondono, Amazon S3 restituisce un errore. Inoltre, puoi calcolare il valore MD5 mentre pubblichi un oggetto su Amazon S3 e confrontare il valore MD5 restituito ETag con il valore MD5 calcolato. L'ETag riflette solo le modifiche al contenuto di un oggetto, non i suoi metadati.
Nota
Per configurare l'applicazione in modo che invii le intestazioni della richiesta prima di inviare il corpo della richiesta, utilizza il codice di stato HTTP 100 (Continua). Per quanto riguarda POST le operazioni, l'utilizzo di questo codice di stato consente di evitare l'invio del corpo del messaggio se il messaggio viene rifiutato in base alle intestazioni (ad esempio, a causa di un errore di autenticazione o di un reindirizzamento). Per ulteriori informazioni sul codice di stato HTTP 100 (Continua), vai alla Sezione 8.2.3 di. http://www.ietf.org/rfc/rfc2616.txt
Amazon S3 esegue automaticamente la crittografa di tutti i nuovi oggetti caricati in un bucket S3. L'impostazione di crittografia di un oggetto caricato dipende dalla configurazione di crittografia predefinita del bucket di destinazione. Per impostazione predefinita, tutti i bucket hanno una configurazione di crittografia predefinita che utilizza la crittografia lato server con chiavi gestite da Amazon S3 (). SSE-S3
Se il bucket di destinazione ha una configurazione di crittografia che utilizza la crittografia lato server con una AWS Key Management Service chiave (SSE-KMS), la crittografia lato server a doppio livello con una AWS KMS chiave (DSSE-KMS) o una chiave di crittografia fornita dal cliente (SSE-C), Amazon S3 utilizza la chiave KMS o la chiave fornita dal cliente corrispondente per crittografare l'oggetto caricato.AWS KMS Quando si carica un oggetto, se si desidera modificare l'impostazione di crittografia dell'oggetto caricato, è possibile specificare il tipo di crittografia lato server. È possibile configurare SSE-S3, SSE-KMS, DSSE-KMS o. SSE-C Per ulteriori informazioni, consulta Protezione dei dati con la crittografia lato server nella Guida per l'utente di Amazon Simple Storage Service.
Importante
Quando crei la tua richiesta, assicurati che il file campo sia l'ultimo campo del modulo.
Richieste
Sintassi
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--
Parametri della richiesta
Questa implementazione dell'operazione non utilizza parametri di richiesta.
Campi del modulo
Questa operazione può utilizzare i seguenti campi del modulo.
| Nome | Description | Richiesto |
|---|---|---|
AWSAccessKeyId |
L'ID della chiave di AWS accesso del proprietario del bucket che concede a un utente anonimo l'accesso per una richiesta che soddisfa il set di vincoli della policy. Tipo: stringa Impostazione predefinita: nessuna Vincoli: obbligatorio se nella richiesta è incluso un documento di policy. |
Condizionale |
acl |
L'elenco di controllo degli accessi (ACL) di Amazon S3 specificato. Se l'ACL specificato non è valido, viene generato un errore. Per ulteriori informazioni sugli ACL, consulta la panoramica degli elenchi di controllo degli accessi (ACL) nella Amazon Simple Storage Service User Guide. Tipo: stringa Default: private Valori validi: |
No |
Cache-Control, Content-Type,
Content-Disposition, Content-Encoding,
Expires |
Le REST-specific intestazioni. Per ulteriori informazioni, consulta PutObject. Tipo: stringa Impostazione predefinita: nessuna |
No |
file |
Il contenuto del file o del testo. Il contenuto del file o del testo deve essere l'ultimo campo del modulo. Non è possibile caricare più di un file alla volta. Tipo: contenuto del file o del testo Impostazione predefinita: nessuna |
Sì |
key |
Il nome della chiave caricata. Per utilizzare il nome di file fornito dall'utente, utilizzare la Per ulteriori informazioni, consulta la chiave dell'oggetto e i metadati nella Amazon Simple Storage Service User Guide. Tipo: stringa Impostazione predefinita: nessuna |
Sì |
policy |
La politica di sicurezza che descrive cosa è consentito nella richiesta. Le richieste senza una politica di sicurezza sono considerate anonime e funzionano solo su bucket scrivibili pubblicamente. Per ulteriori informazioni, consulta i moduli HTML e gli esempi di caricamento nella Amazon Simple Storage Service User Guide. Tipo: stringa Impostazione predefinita: nessuna Vincoli: è necessaria una policy di sicurezza se il bucket non è scrivibile pubblicamente. |
Condizionale |
success_action_redirect, redirect |
L'URL a cui il client viene reindirizzato dopo un caricamento riuscito. Se Se Amazon S3 non è in grado di interpretare l'URL, si comporta come se il campo non fosse presente. Se il caricamento non riesce, Amazon S3 visualizza un errore e non reindirizza l'utente a un URL. Tipo: stringa Impostazione predefinita: nessuna NotaIl nome del |
No |
success_action_status |
Se non lo specifichi Questo campo accetta i valori Se il valore è impostato su Se il valore è impostato su Se il valore non è impostato o se è impostato su un valore non valido, Amazon S3 restituisce un documento vuoto con un codice di stato 204. Tipo: stringa Impostazione predefinita: nessuna |
No |
tagging |
Il set di tag specificato da aggiungere all'oggetto. Per aggiungere tag, utilizzate il seguente schema di codifica.
Per ulteriori informazioni, consulta l'etichettatura degli oggetti nella Amazon Simple Storage Service User Guide. Tipo: stringa Impostazione predefinita: nessuna |
No |
x-amz-storage-class |
La classe di storage da utilizzare per archiviare l'oggetto. Se non si specifica una classe, Amazon S3 utilizza la classe di storage predefinita, Tipo: stringa Impostazione predefinita: Valori validi: |
No |
x-amz-meta-* |
Le intestazioni che iniziano con questo prefisso sono metadati definiti dall'utente. Ognuna viene archiviata e restituita come set di coppie chiave-valore. Amazon S3 non convalida né interpreta i metadati definiti dall'utente. Per ulteriori informazioni, consulta PutObject. Tipo: stringa Impostazione predefinita: nessuna |
No |
x-amz-security-token |
Il token di sicurezza Amazon. DevPay Ogni richiesta che utilizza Amazon DevPay richiede due campi del Tipo: stringa Impostazione predefinita: nessuna |
No |
x-amz-signature |
(AWS Signature Version 4) L' HMAC-SHA256 hash della politica di sicurezza. Tipo: stringa Impostazione predefinita: nessuna |
Condizionale |
x-amz-website-redirect-location
|
Se il bucket è configurato come sito Web, questo campo reindirizza le richieste per questo oggetto a un altro oggetto nello stesso bucket o a un URL esterno. Amazon S3 memorizza il valore di questa intestazione nei metadati dell'oggetto. Per informazioni sui metadati degli oggetti, consulta la chiave e i metadati dell'oggetto nella Amazon Simple Storage Service User Guide. Nell'esempio seguente, l'intestazione della richiesta imposta il reindirizzamento a un object ()
Nell'esempio seguente, l'intestazione della richiesta imposta il reindirizzamento dell'oggetto a un altro sito Web:
Per ulteriori informazioni sull'hosting di siti Web in Amazon S3, consulta Hosting websites on Amazon S3 e Come configurare i reindirizzamenti delle pagine dei siti Web nella Amazon Simple Storage Service User Guide. Tipo: stringa Impostazione predefinita: nessuna Vincoli: il valore deve essere preceduto da,, o. |
No |
Campi aggiuntivi del modulo di richiesta di checksum
Quando carichi un oggetto, puoi specificare vari checksum da utilizzare per verificare l'integrità dei dati. Puoi specificare un algoritmo di checksum aggiuntivo da utilizzare per Amazon S3. Per ulteriori informazioni sui valori di checksum aggiuntivi, consulta Verifica dell'integrità degli oggetti nella Amazon Simple Storage Service User Guide.
| Nome | Description | Richiesto |
|---|---|---|
x-amz-checksum-algorithm
|
Indica l'algoritmo utilizzato per creare il checksum per l'oggetto. Se viene specificato un valore, è necessario includere l'intestazione di checksum corrispondente. In caso contrario, la richiesta genererà un errore 400. I valori possibili includono |
No |
x-amz-checksum-crc32
|
Specifica il checksum CRC32 a 32 bit codificato in base64 dell'oggetto. Questo parametro è obbligatorio se il valore di è. |
Condizionale |
x-amz-checksum-crc32c
|
Specifica il checksum CRC32C a 32 bit con codifica base64 dell'oggetto. Questo parametro è obbligatorio se il valore di è. |
Condizionale |
x-amz-checksum-sha1
|
Specifica il digest a 160 SHA-1 bit con codifica base64 dell'oggetto. Questo parametro è obbligatorio se il valore di è. |
Condizionale |
x-amz-checksum-sha256
|
Specifica il digest a 256 SHA-256 bit con codifica base64 dell'oggetto. Questo parametro è obbligatorio se il valore di è. |
Condizionale |
Server-Side Campi specifici del modulo di richiesta di crittografia
Server-side la crittografia è la crittografia dei dati inattivi. Amazon S3 crittografa i tuoi dati durante la scrittura su dischi nei data AWS center e li decrittografa quando accedi ad essi. Quando carichi un oggetto, puoi specificare il tipo di crittografia lato server che desideri che Amazon S3 utilizzi per crittografare l'oggetto.
Esistono quattro tipi di crittografia lato server:
-
Server-side crittografia con chiavi gestite Amazon S3 (SSE-S3): a partire da maggio 2022, tutti i bucket Amazon S3 hanno la crittografia configurata per impostazione predefinita. L'opzione predefinita per la crittografia lato server è with. SSE-S3 Ogni oggetto è crittografato con una chiave univoca. Come protezione aggiuntiva, SSE-S3 crittografa la chiave stessa con una chiave radice che ruota regolarmente. SSE-S3 utilizza uno dei più potenti cifrari a blocchi disponibili, Advanced Encryption Standard () a 256 bit, per crittografare i dati. AES-256
-
Server-side crittografia con AWS KMS chiavi (SSE-KMS) — SSE-KMS viene fornita tramite un'integrazione del AWS KMS servizio con Amazon S3. Con AWS KMS, hai un maggiore controllo sulle tue chiavi. Ad esempio, puoi visualizzare le chiavi separate, modificare le policy di controllo e seguire le chiavi in AWS CloudTrail. Inoltre, puoi creare e gestire chiavi gestite dal cliente oppure utilizzare chiavi Chiavi gestite da AWS create appositamente per te, il tuo servizio e la tua regione.
-
Dual-layer crittografia lato server con AWS KMS chiavi (DSSE-KMS): la Dual-layer crittografia lato server con AWS KMS keys (DSSE-KMS) è simile a SSE-KMS, ma applica due singoli livelli di crittografia a livello di oggetto anziché un livello.
-
Server-side crittografia con chiavi fornite dal cliente (SSE-C): con SSE-C, gestisci le chiavi di crittografia e Amazon S3 gestisce la crittografia durante la scrittura sui dischi e la decrittografia quando accedi ai tuoi oggetti.
Nota
Se la crittografia lato server con le chiavi fornite dal cliente (SSE-C) è bloccata per il bucket generico, riceverai un errore HTTP 403 Access Denied quando specifichi le intestazioni della richiesta durante la scrittura di nuovi dati nel bucket. SSE-C Per ulteriori informazioni, consulta Bloccare o sbloccare un bucket per scopi generici. SSE-C
Per ulteriori informazioni, consulta Protecting data using server-side encryption nella Amazon Simple Storage Service User Guide.
A seconda del tipo di crittografia lato server che desideri utilizzare, specifica i seguenti campi del modulo.
-
Usa SSE-S3 SSE-KMS, o DSSE-KMS: se desideri utilizzare questi tipi di crittografia lato server, specifica i seguenti campi del modulo nella richiesta.
Nome Description Richiesto x-amz-server-side-encryptionSpecifica l'algoritmo di crittografia lato server da utilizzare quando Amazon S3 crea un oggetto. Per utilizzarlo, specifica. SSE-S3
AES256Per usare SSE-KMS, specificareaws:kms. Per usare DSSE-KMS, specificareaws:kms:dsse.Tipo: stringa
Valore valido:
aws:kms,AES256,aws:kms:dsseSì x-amz-server-side-encryption-aws-kms-key-idSe l'
x-amz-server-side-encryptionintestazione ha un valore valido pari aaws:kmsoaws:kms:dsse, questa intestazione specifica l'ID utilizzato per crittografare l' AWS KMS key oggetto.Tipo: stringa
Sì, se il valore di è o x-amz-server-side-encryptionaws:kmsaws:kms:dssex-amz-server-side-encryption-contextSe
x-amz-server-side-encryptionil valore valido èaws:kmsoaws:kms:dsse, questa intestazione specifica il contesto di crittografia per l'oggetto. Il valore di questa intestazione è una UTF-8 stringa con codifica Base64 che contiene JSON-formatted coppie chiave-valore per il contesto di crittografia.Tipo: stringa
No x-amz-server-side-encryption-bucket-key-enabledSe il valore valido
x-amz-server-side-encryptionèaws:kmsoraws:kms:dsse, questa intestazione specifica se Amazon S3 deve utilizzare una chiave S3 Bucket con o. SSE-KMS DSSE-KMS Se si imposta questa intestazione su, Amazon S3 utilizza una chiave bucket S3 per la crittografia degli oggetti con o.trueSSE-KMS DSSE-KMSTipo: Booleano
No Nota
Se specifichi
x-amz-server-side-encryption:aws:kmsox-amz-server-side-encryption:aws:kms:dsse, ma non lo forniscix-amz-server-side-encryption-aws-kms-key-id, Amazon S3 utilizza Chiave gestita da AWS (aws/S3) per proteggere i dati. -
Uso SSE-C: se desideri gestire le tue chiavi di crittografia, devi fornire tutti i seguenti campi del modulo nella richiesta.
Nota
Se lo usi SSE-C, il
ETagvalore che Amazon S3 restituisce nella risposta non è l'MD5 dell'oggetto.Nome Description Richiesto x-amz-server-side-encryption-customer-algorithmSpecifica l'algoritmo da utilizzare per crittografare l'oggetto.
Tipo: stringa
Impostazione predefinita: nessuna
Valore valido:
AES256Vincoli: deve essere accompagnato da
x-amz-server-side-encryption-customer-key-MD5campix-amz-server-side-encryption-customer-keye validi.Sì x-amz-server-side-encryption-customer-keySpecifica la chiave di crittografia con codifica Base64 fornita dal cliente per Amazon S3 da utilizzare nella crittografia dei dati. Questo valore viene utilizzato per memorizzare l'oggetto e quindi viene eliminato. Amazon non memorizza la chiave di crittografia. La chiave deve essere appropriata all'uso con l'algoritmo specificato nell'
x-amz-server-side-encryption-customer-algorithmintestazione.Tipo: stringa
Impostazione predefinita: nessuna
Vincoli: deve essere accompagnato da campi
x-amz-server-side-encryption-customer-algorithmex-amz-server-side-encryption-customer-key-MD5validi.Sì x-amz-server-side-encryption-customer-key-MD5Specifica il digest MD5 a 128 bit con codifica base64 della chiave di crittografia secondo RFC 1321. http://tools.ietf.org/html/rfc1321
Amazon S3 utilizza questa intestazione per un controllo dell'integrità dei messaggi per garantire che la chiave di crittografia sia stata trasmessa senza errori. Tipo: stringa
Impostazione predefinita: nessuna
Vincoli: deve essere accompagnato da campi e validi.
x-amz-server-side-encryption-customer-algorithmx-amz-server-side-encryption-customer-keySì
Risposte
Intestazioni di risposta
Questa implementazione dell'operazione può includere le seguenti intestazioni di risposta oltre alle intestazioni di risposta comuni a tutte le risposte. Per ulteriori informazioni, vedere Common Response Headers.
| Nome | Description |
|---|---|
x-amz-checksum-crc32
|
Il checksum CRC32 a 32 bit con codifica base64 dell'oggetto. Tipo: stringa |
x-amz-checksum-crc32c
|
Il checksum CRC32C a 32 bit con codifica base64 dell'oggetto. Tipo: stringa |
x-amz-checksum-sha1
|
Il digest a 160 bit dell'oggetto con codifica in base64. SHA-1 Tipo: stringa |
x-amz-checksum-sha256
|
Digest a 256 bit dell'oggetto con codifica in base64. SHA-256 Tipo: stringa |
x-amz-expiration
|
Se un' Tipo: stringa |
success_action_redirect, redirect
|
L'URL a cui il client viene reindirizzato in caso di caricamento riuscito. Tipo: stringa Antenato: PostResponse |
x-amz-server-side-encryption
|
L'algoritmo di crittografia lato server utilizzato per archiviare questo oggetto in Amazon S3 (ad esempio,, Tipo: stringa |
x-amz-server-side-encryption-aws-kms-key-id
|
Se l' Tipo: stringa |
x-amz-server-side-encryption-bucket-key-enabled
|
Se Tipo: Booleano |
x-amz-server-side-encryption-customer-algorithm
|
Se SSE-C richiesto, la risposta include questa intestazione, che conferma l'algoritmo di crittografia utilizzato. Tipo: stringa Valori validi: |
x-amz-server-side-encryption-customer-key-MD5
|
Se SSE-C richiesto, la risposta include questa intestazione per verificare l'integrità del messaggio di andata e ritorno della chiave di crittografia fornita dal cliente. Tipo: stringa |
x-amz-version-id |
Versione dell'oggetto. Tipo: stringa |
Elementi di risposta
| Nome | Description |
|---|---|
Bucket
|
Il nome del bucket in cui è stato archiviato l'oggetto. Tipo: stringa Antenato: PostResponse |
ETag
|
L'entity tag (ETag) è un hash MD5 dell'oggetto che è possibile utilizzare per eseguire Tipo: stringa Antenato: PostResponse |
Key
|
Il nome della chiave dell'oggetto. Tipo: stringa Antenato: PostResponse |
Location
|
L'URI dell'oggetto. Tipo: stringa Antenato: PostResponse |
Errori speciali
Questa implementazione dell'operazione non restituisce errori speciali. Per informazioni generali sugli errori di Amazon S3 e un elenco di codici di errore, consulta Error Responses.
Esempi
Richiesta di esempio
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
Esempio di risposta con controllo delle versioni sospeso
Di seguito è riportato un esempio di risposta quando il controllo delle versioni del bucket è sospeso:
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
In questa risposta, l'ID della versione è. null
Esempio di risposta con controllo delle versioni abilitato
Di seguito è riportato un esempio di risposta quando il controllo delle versioni del bucket è abilitato.
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