View a markdown version of this page

Protezione dei dati in transito con crittografia - Amazon Simple Storage Service

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

Amazon S3 supporta i protocolli HTTP e HTTPS per la trasmissione dei dati. HTTP trasmette i dati in testo normale, mentre HTTPS aggiunge un livello di sicurezza crittografando i dati utilizzando Transport Layer Security (TLS). Il protocollo TLS protegge da intercettazioni, manomissioni di 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 mentre viaggiano tra i client e Amazon S3.

Supporto per TLS 1.2 e TLS 1.3

Amazon S3 supporta TLS 1.2 e TLS 1.3 per le 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 stai accedendo. AWS Gli strumenti attuali (2014 o versioni successive), inclusi gli AWS SDK, utilizzano AWS CLI automaticamente TLS 1.3 senza che sia richiesta alcuna azione da parte dell'utente. È 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 si utilizza TLS 1.3, è possibile configurare facoltativamente un exchange ibrido di chiavi post-quantistiche (ML-KEM) per effettuare richieste di resistenza quantistica ad Amazon S3. Per ulteriori informazioni, consulta Configurazione del TLS ibrido post-quantistico per il tuo cliente.

Nota

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

Monitoraggio dell'utilizzo di TLS

Puoi utilizzare i log di accesso al server Amazon S3 o AWS CloudTrail per monitorare le richieste ai bucket Amazon S3. Entrambe le opzioni di registrazione registrano la versione TLS e la suite di crittografia utilizzate in ciascuna richiesta.

  • Log di accesso al server Amazon S3: la registrazione degli accessi al server fornisce record dettagliati per le richieste effettuate 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.

  • AWS CloudTrailAWS CloudTrail è un servizio che fornisce una registrazione delle azioni intraprese da un utente, ruolo o servizio. AWS CloudTrail acquisisce tutte le chiamate API per Amazon S3 come eventi. Per ulteriori informazioni, consulta Eventi Amazon S3 CloudTrail.

Applicazione della crittografia in transito

È una best practice di sicurezza applicare la crittografia dei dati in transito verso Amazon S3. È possibile imporre la HTTPS-only comunicazione o l'uso di una versione TLS specifica tramite vari meccanismi di policy. Queste includono le politiche IAM basate sulle risorse per i bucket S3 (politiche dei bucket), le politiche di controllo dei servizi (SCP), le politiche di controllo delle risorse (RCP) e le politiche sugli endpoint VPC.

Esempi di politiche bucket per l'applicazione della crittografia in transito

Puoi utilizzare la chiave condizionale S3 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.

Esempio policy del bucket 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 nella tua policy del bucket S3 per verificare se la richiesta è stata inviata tramite HTTPS (TLS). A differenza dell'esempio precedente, questa condizione non verifica una versione TLS specifica. Per ulteriori informazioni, consulta Limitare l'accesso solo alle richieste HTTPS.

Esempio policy bucket che applica HTTPS utilizzando la chiave di condizione aws: global 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 policy. Per ulteriori informazioni e approcci di applicazione aggiuntivi, consulta l'articolo del blog di AWS Storage Enforcement encryption in transit with TLS1.2 or higher with Amazon S3.