

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

# Protezione dei dati in transito con crittografia
<a name="UsingEncryptionInTransit"></a>

Amazon S3 supporta i protocolli HTTP e HTTPS per la trasmissione dei dati. HTTP trasmette i dati in testo semplice, mentre HTTPS aggiunge un livello di sicurezza crittografando i dati utilizzando Transport Layer Security (TLS). TLS protegge da intercettazioni, manomissioni dei dati e attacchi. man-in-the-middle Sebbene il traffico HTTP sia accettato, la maggior parte delle implementazioni utilizza la crittografia in transito con HTTPS e TLS per proteggere i dati durante il trasferimento tra i client e Amazon S3.

## Supporto per TLS 1.2 e TLS 1.3
<a name="UsingEncryptionInTransit.TLS-support"></a>

Amazon S3 supporta TLS 1.2 e TLS 1.3 per connessioni HTTPS su tutti gli endpoint API per tutti. Regioni AWS S3 negozia automaticamente la protezione TLS più potente supportata dal software client e dall'endpoint S3 a cui accedi. AWS Gli strumenti attuali (2014 o successivi), tra cui TLS 1.3 per impostazione AWS CLI predefinita, non richiede alcuna azione da parte dell'utente. AWS SDKs È possibile ignorare questa negoziazione automatica tramite le impostazioni di configurazione del client per specificare una particolare versione TLS se è necessaria la retrocompatibilità con TLS 1.2. Quando usi TLS 1.3, puoi facoltativamente configurare lo scambio di chiavi post-quantistiche ibrido (ML-KEM) per effettuare richieste con resistenza quantistica ad Amazon S3. Per ulteriori informazioni, consulta [Configurazione del TLS post-quantistico ibrido per il tuo client](pqtls-how-to.md). 

**Nota**  
TLS 1.3 è supportato in tutti gli endpoint S3, ad eccezione di Amazon AWS PrivateLink S3 e Multi-Region Access Point.

## Monitoraggio dell'utilizzo di TLS
<a name="UsingEncryptionInTransit.monitoring"></a>

Puoi utilizzare i log di accesso al server Amazon S3 o monitorare le richieste AWS CloudTrail ai bucket Amazon S3. Entrambe le opzioni di registrazione registrano la versione TLS e la suite di crittografia utilizzata in ogni richiesta.
+ Registri di **accesso al server Amazon S3: la registrazione degli accessi** al server fornisce record dettagliati per le richieste inviate a un bucket. Ad esempio, le informazioni del log di accesso possono essere utili nei controlli di accesso e di sicurezza. Per ulteriori informazioni, consulta [Formato del log di accesso al server Amazon S3](LogFormat.md).
+ **AWS CloudTrail**— [AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)è un servizio che fornisce un registro delle azioni intraprese da un utente, un ruolo o un servizio. AWS CloudTrail acquisisce tutte le chiamate API per Amazon S3 come eventi. Per ulteriori informazioni, consulta [Eventi Amazon S3 CloudTrail](cloudtrail-logging-s3-info.md).

## Applicazione della crittografia in transito
<a name="UsingEncryptionInTransit.enforcement"></a>

Applicare la crittografia dei dati in transito verso Amazon S3 è una best practice di sicurezza. Puoi imporre la comunicazione solo HTTPS o l'uso di una versione TLS specifica attraverso vari meccanismi di policy. [Queste includono policy IAM basate sulle risorse per bucket S3 ([bucket policy](bucket-policies.md)), [Service Control Policies (), Resource Control Policies (SCPs) e policy](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html)[per endpoint](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_rcps.html) VPCRCPs.](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-access.html)

### Esempi di policy Bucket per l'applicazione della crittografia in transito
<a name="UsingEncryptionInTransit.bucket-policy-example"></a>

Puoi utilizzare la [chiave di condizione S3](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazons3.html#amazons3-policy-keys) `s3:TlsVersion` per limitare l'accesso ai bucket Amazon S3 in base alla versione TLS utilizzata dal client. Per ulteriori informazioni, consulta [Esempio 6: Richiesta di una versione TLS minima](amazon-s3-policy-keys.md#example-object-tls-version).

**Example bucket policy che applica TLS 1.3 utilizzando la chiave di condizione `S3:TlsVersion`**  

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Sid": "DenyInsecureConnections",
      "Effect": "Deny",
      "Principal": "*",
      "Action": "s3:*",
      "Resource": [
        "arn:aws:s3:::amzn-s3-demo-bucket1",
        "arn:aws:s3:::amzn-s3-demo-bucket1/*"
      ],
      "Condition": {
        "NumericLessThan": {
          "s3:TlsVersion": "1.3"
        }
      }
    }
  ]
}
```

Puoi utilizzare la [chiave di condizione `aws:SecureTransport` globale](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html) nella tua policy sui bucket S3 per verificare se la richiesta è stata inviata tramite HTTPS (TLS). A differenza dell'esempio precedente, questa condizione non verifica la presenza di una versione TLS specifica. Per ulteriori informazioni, consulta [Limitare l'accesso solo alle richieste HTTPS](example-bucket-policies.md#example-bucket-policies-use-case-HTTP-HTTPS-1).

**Example bucket policy che impone HTTPS utilizzando la chiave global condition `aws:SecureTransport`**  

```
{
    "Version":"2012-10-17",		 	 	 		 	 	 
    "Statement": [
     {
        "Sid": "RestrictToTLSRequestsOnly",		 	 	 
        "Action": "s3:*",
        "Effect": "Deny",
        "Resource": [
            "arn:aws:s3:::amzn-s3-demo-bucket1",
            "arn:aws:s3:::amzn-s3-demo-bucket1/*"
        ],
        "Condition": {
            "Bool": {
                "aws:SecureTransport": "false"
            }
        },
        "Principal": "*"
    }
  ]
}
```

**Politica di esempio basata su entrambe le chiavi e altri esempi**  
È possibile utilizzare entrambi i tipi di chiavi di condizione negli esempi precedenti in un'unica politica. Per ulteriori informazioni e ulteriori approcci di applicazione, consulta l'articolo dello AWS Storage Blog [Applica la crittografia in transito con TLS1 .2 o versioni successive con Amazon S3](https://aws.amazon.com/blogs/storage/enforcing-encryption-in-transit-with-tls1-2-or-higher-with-amazon-s3/).

# Utilizzo del TLS post-quantistico ibrido con Amazon S3
<a name="UsingEncryptionInTransit.PQ-TLS"></a>

Amazon S3 supporta un'opzione ibrida di scambio di chiavi post-quantistiche per il protocollo di crittografia di rete TLS. Puoi utilizzare questa opzione TLS quando effettui richieste agli endpoint Amazon S3 utilizzando TLS 1.3. Le suite di crittografia classiche supportate da S3 per le sessioni TLS rendono gli attacchi di forza bruta ai meccanismi di scambio di chiavi impossibili con la tecnologia attuale. Tuttavia, se in futuro diventerà pratico un computer quantistico crittograficamente rilevante, le classiche suite di crittografia utilizzate nei meccanismi di scambio di chiavi TLS saranno suscettibili a questi attacchi. Attualmente, il settore è orientato allo scambio di chiavi ibrido post-quantistico che combina elementi classici e post-quantistici per garantire che la connessione TLS sia almeno altrettanto potente come lo sarebbe con le suite di crittografia classiche. Amazon S3 supporta attualmente il PQ-TLS ibrido, in conformità con le specifiche standard di settore IANA

Se stai sviluppando applicazioni che si basano sulla riservatezza a lungo termine dei dati trasmessi tramite una connessione TLS, dovresti prendere in considerazione un piano per migrare alla crittografia post-quantistica prima che i computer quantistici su larga scala diventino disponibili per l'uso. Come parte del modello di responsabilità condivisa, S3 abilita la crittografia quantistica sicura sui nostri endpoint di servizio. Poiché i browser e le applicazioni abilitano PQ-TLS da parte loro, S3 sceglierà la configurazione più sicura possibile per proteggere i dati in transito.

**Tipi di endpoint supportati e Regioni AWS**

Il TLS post-quantum per Amazon S3 è disponibile in tutti. Regioni AWS Per un elenco di endpoint S3 per ciascuno Regione AWS, consulta gli [endpoint e le quote di Amazon Simple Storage Service](https://docs.aws.amazon.com/general/latest/gr/s3.html) nel. *Riferimenti generali di Amazon Web Services*

**Nota**  
Il TLS post-quantistico ibrido è supportato per tutti gli endpoint S3 ad eccezione di Amazon S3, AWS PrivateLink Multi-Region Access Points e S3 Vectors.

## Utilizzo del TLS post-quantistico ibrido con Amazon S3
<a name="pqtls-details"></a>

È necessario configurare il client che effettua le richieste ad Amazon S3 per supportare il TLS post-quantistico ibrido. Quando configuri l'ambiente di test o gli ambienti di produzione del tuo client HTTP, tieni presente le seguenti informazioni:

**Crittografia in transito**

Il TLS post-quantistico ibrido viene utilizzato solo per la crittografia in transito. Questo protegge i dati mentre viaggiano dal client all'endpoint S3. Questo nuovo supporto, combinato con la crittografia lato server di Amazon S3 per impostazione predefinita che utilizza AES-256 algoritmi, offre ai clienti una crittografia a resistenza quantistica sia in transito che a riposo. Per ulteriori informazioni sulla crittografia lato server in Amazon S3, [consulta Protezione dei dati](https://docs.aws.amazon.com/AmazonS3/latest/userguide/serv-side-encryption.html) con la crittografia lato server.

**Client supportati**

L'uso del TLS post-quantistico ibrido richiede l'utilizzo di un client che supporti questa funzionalità. AWS SDKs e gli strumenti dispongono di funzionalità e configurazioni crittografiche che differiscono a seconda dei linguaggi e dei tempi di esecuzione. [Per ulteriori informazioni sulla crittografia post-quantistica per strumenti specifici, consulta Enabling hybrid post-quantum TLS.](https://docs.aws.amazon.com/payment-cryptography/latest/userguide/pqtls-details.html)

**Nota**  
I dettagli dello scambio di chiavi PQ-TLS per le richieste ad Amazon S3 non sono disponibili negli AWS CloudTrail eventi o nei log di accesso al server S3.

## Scopri di più sul TLS post-quantistico
<a name="pqtls-see-also"></a>

Per ulteriori informazioni sull'utilizzo del TLS ibrido post-quantistico, consulta le seguenti risorse.
+ [Per ulteriori informazioni sulla crittografia post-quantistica all'indirizzo AWS, compresi i collegamenti ai post di blog e ai documenti di ricerca, consulta Crittografia post-quantistica per. AWS](https://aws.amazon.com/security/post-quantum-cryptography/)
+ Per informazioni su s2n-tls, consultare [Introduzione di s2n-tls, una nuova implementazione TLS open source](https://aws.amazon.com/blogs/security/introducing-s2n-a-new-open-source-tls-implementation/) e [Utilizzo di s2n-tls](https://github.com/aws/s2n-tls/tree/main/docs/usage-guide).
+ *Per informazioni sul client HTTP AWS Common Runtime, consulta [Configurazione del client HTTP basato su AWS CRT nella Guida per gli sviluppatori](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/http-configuration-crt.html).AWS SDK for Java 2.x *
+ Per informazioni sul progetto di crittografia post-quantistica presso il National Institute for Standards and Technology (NIST), consultare [Post-Quantum Cryptography](https://csrc.nist.gov/Projects/Post-Quantum-Cryptography) (Crittografia post-quantistica).
+ [Per informazioni sulla standardizzazione della crittografia post-quantistica NIST, vedere Standardizzazione della crittografia post-quantistica del NIST.](https://csrc.nist.gov/Projects/post-quantum-cryptography/post-quantum-cryptography-standardization)

# Configurazione del TLS post-quantistico ibrido per il tuo client
<a name="pqtls-how-to"></a>

Per utilizzare PQ-TLS con Amazon S3, devi configurare il client per supportare algoritmi di scambio di chiavi post-quantistici. Assicurati inoltre che il tuo cliente supporti l'approccio ibrido, che combina la tradizionale crittografia a curva ellittica con algoritmi post-quantistici come ML-KEM (Key Encapsulation Mechanism). Module-Lattice-Based 

La configurazione specifica dipende dalla libreria client e dal linguaggio di programmazione. Per ulteriori informazioni, consulta [Abilitazione del TLS ibrido post-quantistico.](https://docs.aws.amazon.com/payment-cryptography/latest/userguide/pqtls-details.html)

## Esempio di configurazione del client: AWS SDK for Java 2
<a name="UsingEncryptionInTransit.PQ-TLS.configuration.java2-sdk"></a>

In questa procedura, aggiungi una dipendenza Maven per il client HTTP AWS Common Runtime. Quindi, configura un client HTTP che preferisca il protocollo TLS post-quantistico. Quindi, crea un client Amazon S3 che utilizzi il client HTTP.

**Nota**  
Il AWS Common Runtime HTTP Client, disponibile in anteprima, è diventato disponibile a livello generale nel febbraio 2023. In tale versione, la classe `tlsCipherPreference` e il parametro del metodo `tlsCipherPreference()` vengono sostituiti dal parametro del metodo `postQuantumTlsEnabled()`. Se stavi usando questo esempio durante l'anteprima, devi aggiornare il codice.

1. Aggiungi il client AWS Common Runtime alle tue dipendenze Maven. Si consiglia di utilizzare l'ultima versione disponibile. 

   Ad esempio, questa istruzione aggiunge la versione `2.30.22` del client AWS Common Runtime alle dipendenze Maven. 

   ```
   <dependency>
       <groupId>software.amazon.awssdk</groupId>
       <artifactId>aws-crt-client</artifactId>
       <version>2.30.22</version>
   </dependency>
   ```

1. Per abilitare le suite ibride di cifratura post-quantistica, aggiungile al progetto e inizializzalo. AWS SDK for Java 2.x Quindi abilita le suite di crittografia post-quantistica ibrida come mostrato nell'esempio seguente.

   Questo codice utilizza il parametro `postQuantumTlsEnabled()` method per configurare un [client HTTP di runtime AWS comune](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/http-configuration-crt.html) che preferisce la suite di cifratura post-quantistica ibrida consigliata, ECDH with. ML-KEM Quindi utilizza il client HTTP configurato per creare un'istanza del client asincrono Amazon S3,. [https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/s3/S3AsyncClient.html](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/s3/S3AsyncClient.html) Una volta completato questo codice, tutte le richieste API [Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/API/) sull'istanza utilizzano `S3AsyncClient` il TLS post-quantistico ibrido.
**Importante**  
A partire dalla versione 2.35.11, i chiamanti non devono più impostare l'attivazione del TLS post-quantistico ibrido per il cliente`.postQuantumTlsEnabled(true)`. Tutte le versioni più recenti della v2.35.11 abilitano il TLS post-quantistico per impostazione predefinita.

   ```
   // Configure HTTP client
   SdkAsyncHttpClient awsCrtHttpClient = AwsCrtAsyncHttpClient.builder()
             .postQuantumTlsEnabled(true)
             .build();
   
   // Create the Amazon S3 async client
   S3AsyncClient s3Async = S3AsyncClient.builder()
            .httpClient(awsCrtHttpClient)
            .build();
   ```

1. Testa le tue chiamate Amazon S3 con TLS post-quantistico ibrido.

   Quando richiami le operazioni API di Amazon S3 sul client Amazon S3 configurato, le tue chiamate vengono trasmesse all'endpoint Amazon S3 utilizzando TLS post-quantistico ibrido. Per testare la tua configurazione, chiama un'API Amazon S3, ad esempio. `[ListBuckets](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html)`

   ```
   ListBucketsResponse reponse = s3Async.listBuckets();
   ```

### Testa la tua configurazione TLS ibrida post-quantistica
<a name="pqtls-testing"></a>

Prendi in considerazione l'esecuzione dei seguenti test con suite di crittografia ibride sulle tue applicazioni che chiamano Amazon S3.
+ Eseguire test di carico e benchmark. Le suite di crittografia ibrida funzionano in modo diverso rispetto agli algoritmi di scambio di chiavi tradizionali. Potrebbe essere necessario modificare i timeout della connessione per consentire tempi di handshake più lunghi. Se esegui all'interno di una AWS Lambda funzione, estendi l'impostazione del timeout di esecuzione.
+ Provare a connettersi da posizioni diverse. A seconda del percorso di rete utilizzato dalla richiesta, è possibile scoprire che host intermedi, proxy o firewall con deep packet inspection (DPI) bloccano la richiesta. Ciò potrebbe derivare dall'utilizzo delle nuove suite di crittografia nella [ClientHello](https://tools.ietf.org/html/rfc5246#section-7.4.1.2)parte dell'handshake TLS o dai messaggi di scambio di chiavi più grandi. In caso di difficoltà con la risoluzione di questi problemi, contattare il team di sicurezza o gli amministratori IT per aggiornare la configurazione pertinente e sbloccare le nuove suite di crittografia TLS. 