

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à.

# Chiavi specifiche delle policy di autenticazione di Amazon S3 Signature versione 4
<a name="bucket-policy-s3-sigv4-conditions"></a>

La tabella seguente mostra le chiavi di policy relative all'autenticazione Amazon S3 Signature Version 4 che possono essere incluse nelle policy di Amazon S3. In una policy del bucket, puoi aggiungere queste condizioni per applicare un comportamento specifico quando le richieste vengono autenticate tramite Signature Version 4. Per esempi di policy, consulta [Esempi di policy Bucket che utilizzano le chiavi di condizione relative alla versione 4 di Signature](#bucket-policy-sig-v4-condition-key-example). 


| Chiavi applicabili | Description | 
| --- | --- | 
| `s3:signatureversion` | Identifica la versione di AWS Signature che desideri supportare per le richieste autenticate. Per le richieste autenticate, Amazon S3 supporta sia la versione 4 di Signature che la versione 2 di Signature. Puoi aggiungere questa condizione nella tua bucket policy per richiedere una versione di firma specifica.<br />Valori validi: <br />`"AWS"`identifica la versione 2 di Signature <br /> `"AWS4-HMAC-SHA256"`identifica la versione 4 di Signature | 
| `s3:authType` | Amazon S3 supporta vari metodi di autenticazione (vedi. [Autenticazione delle richieste (AWS Signature (versione 4)](sig-v4-authenticating-requests.md) Facoltativamente, puoi utilizzare questa chiave di condizione per limitare le richieste in arrivo all'uso di un metodo di autenticazione specifico. Ad esempio, puoi consentire l'utilizzo solo dell'`Authorization`intestazione HTTP nell'autenticazione delle richieste. <br />Valori validi: <br />`REST-HEADER` <br />`REST-QUERY-STRING` <br />`POST` <br />  | 
| `s3:signatureAge` | Il periodo di tempo, espresso in millisecondi, di validità di una firma in una richiesta autenticata.<br />Questa condizione funziona per:+ *URL prefirmati*: dove prevale la condizione più restrittiva. Per ulteriori informazioni, consulta [ Lavorare con gli URL prefirmati. ](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-presigned-url.html)<br />+ *POST prefirmato*: carica i file direttamente su S3 utilizzando POST prefirmato. Per ulteriori informazioni, consulta la politica POST di [ Amazon S3. ](https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-HTTPPOSTConstructPolicy.html)<br />Nella versione 2 di Signature, questo valore è sempre impostato su 0. <br />In Signature Version 4, la chiave di firma è valida per un massimo di sette giorni. Pertanto, anche le firme sono valide per un massimo di sette giorni. Puoi utilizzare questa condizione per limitare ulteriormente la durata della firma. Per ulteriori informazioni, consulta [Introduzione alla firma delle richieste](sig-v4-authenticating-requests.md#signing-request-intro).<br />Valore di esempio: `100` | 
| `s3:x-amz-content-sha256` | Questa chiave di condizione può essere utilizzata per non consentire contenuti non firmati nel bucket.<br />Quando utilizzi Signature Version 4, per le richieste che utilizzano l'intestazione `Authorization`, aggiungi l'intestazione `x-amz-content-sha256` nel calcolo della firma e quindi imposti il suo valore sul payload hash. Nota che questa chiave di condizione non supporta l'`x-amz-content-sha256`intestazione come parametro della stringa di query.<br />Puoi utilizzare questa chiave di condizione nella tua bucket policy per negare qualsiasi caricamento in cui i payload non sono firmati. Ad esempio, puoi negare i caricamenti che utilizzano l'`Authorization`intestazione per autenticare le richieste ma non firmano il payload. Per ulteriori informazioni, consulta [Calcolo delle firme per l'intestazione di autorizzazione: trasferimento del payload in un unico blocco (AWS Signature (versione 4)](sig-v4-header-based-auth.md).<br />Valore valido: `UNSIGNED-PAYLOAD` | 

## Esempi di policy Bucket che utilizzano le chiavi di condizione relative alla versione 4 di Signature
<a name="bucket-policy-sig-v4-condition-key-example"></a>

La seguente policy sui bucket nega qualsiasi richiesta di URL prefirmato di Amazon S3 sugli oggetti `examplebucket` se la firma risale a più di dieci minuti. 

------
#### [ JSON ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
      {
         "Sid": "Deny a presigned URL request if the signature is more than 10 min old",
         "Effect": "Deny",
         "Principal": "*",
         "Action": "s3:*",
         "Resource": "arn:aws:s3:::examplebucket3/*",
         "Condition": {
            "NumericGreaterThan": {
               "s3:signatureAge": 600000
            }
         }
      }
   ]
}
```

------

La seguente policy del bucket consente solo le richieste che utilizzano l'intestazione `Authorization` per l'autenticazione della richiesta. Qualsiasi richiesta POST o URL prefirmata verrà rifiutata.

------
#### [ JSON ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
         {
               "Sid": "Allow only requests that use Authorization header for request authentication. Deny POST or presigned URL requests.",
               "Effect": "Deny",
               "Principal": "*",
               "Action": "s3:*",
               "Resource": "arn:aws:s3:::examplebucket3/*",
               "Condition": {
                     "StringNotEquals": {
                           "s3:authType": "REST-HEADER"
                     }
               }
         }
   ]
}
```

------

La seguente policy sui bucket nega le richieste che utilizzano URL prefirmati per l'autenticazione delle richieste:

------
#### [ JSON ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Sid":"DenyUploadsUsingPresignedURL",
         "Effect":"Deny",
         "Principal":"*",
         "Action":"s3:*",
         "Resource":"arn:aws:s3:::amzn-s3-demo-bucket1/*",
         "Condition":{
            "StringEquals":{
               "s3:authType":"{{REST-query-string}}"
            }
         }
      }
   ]
}
```

------

La seguente policy sui bucket nega qualsiasi caricamento con payload non firmati:

------
#### [ JSON ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement": [
         {
               "Sid": "Deny uploads with unsigned payloads that use the Authorization header.",
               "Effect": "Deny",
               "Principal": "*",
               "Action": "s3:*",
               "Resource": "arn:aws:s3:::examplebucket3/*",
               "Condition": {
                     "StringEquals": {
                           "s3:x-amz-content-sha256": "UNSIGNED-PAYLOAD"
                     }
               }
         }
   ]
}
```

------