Come faccio a proteggere i file nel mio bucket Amazon S3?
Voglio limitare le autorizzazioni alle mie risorse Amazon Simple Storage Service (Amazon S3) e monitorare l'accesso a queste risorse.
Breve descrizione
Per proteggere i tuoi file e i bucket Amazon S3, segui queste best practice:
- Limita l'accesso alle tue risorse S3: Limita l'accesso alle tue risorse alle persone che ne hanno assolutamente bisogno. Segui il principio del privilegio minimo.
- Monitora le tue risorse S3: Monitora le tue risorse. Puoi utilizzare: I log di AWS CloudTrail, la registrazione degli accessi ai server S3, AWS Config, il sistema di analisi degli accessi AWS Identity and Access Management (IAM), Amazon Macie, Amazon CloudWatch o il controllo delle autorizzazioni per il bucket S3 di AWS Trusted Advisor.
- **Usa la crittografia per proteggere i tuoi dati:**Amazon S3 supporta la crittografia durante la trasmissione, la crittografia lato server (SSE) e la crittografia lato client.
Risoluzione
Limita l'accesso alle tue risorse S3
Per impostazione predefinita, tutti i bucket S3 sono privati e possono accedervi solo gli utenti a cui è stato concesso esplicitamente l'accesso.
Limita l'accesso ai tuoi oggetti o bucket S3 procedendo come segue:
- Scrivi policy per gli utenti IAM che specifichino quali utenti possono accedere a bucket e oggetti specifici. Le policy IAM forniscono un modo programmatico per gestire le autorizzazioni Amazon S3 per più utenti. Per ulteriori informazioni sulla creazione e la verifica delle policy utente, consulta il Generatore di policy AWS Policy e il simulatore di policy IAM.
- Scrivi policy dei bucket che definiscano l'accesso a bucket e oggetti specifici. Puoi utilizzare una policy del bucket per concedere l'accesso a tutti gli account AWS, concedere autorizzazioni pubbliche o anonime e consentire o bloccare l'accesso in base a certe condizioni. Per ulteriori informazioni sulla creazione e la verifica delle policy dei bucket, consulta ilGeneratore di policy AWS Policy.
Nota: Puoi utilizzare una dichiarazione di negazione in una policy di bucket per limitare l'accesso a utenti IAM specifici. Puoi limitare l'accesso agli utenti anche se viene concesso da una policy IAM. - Usa il Blocco dell'accesso pubblico Amazon S3 come metodo centralizzato per limitare l'accesso pubblico. Le impostazioni del blocco dell'accesso pubblico sovrascrivono le policy dei bucket e le autorizzazioni per gli oggetti. Assicurati di abilitare il blocco dell'accesso pubblico per tutti gli account e i bucket che non desideri siano accessibili al pubblico.
- Imposta liste di controllo degli accessi (ACL) sui bucket e sugli oggetti.
Nota: Se hai bisogno di un modo programmatico per gestire le autorizzazioni, usa le policy IAM o le policy dei bucket anziché le ACL. Puoi però utilizzarle quando la tua policy dei bucket supera la dimensione massima del file di 20 KB. In alternativa, puoi utilizzare le ACL per concedere l'accesso ai log di accesso ai server Amazon S3 o ai log di Amazon CloudFront.
Prendi in considerazione queste best practice quando usi le ACL per proteggere le tue risorse:
- Assicurati di esaminare le autorizzazioni ACL che consentono azioni Amazon S3 su un bucket o un oggetto. Per l'elenco delle autorizzazioni ACL e delle azioni consentite, consulta la pagina What permissions can I grant?
- Scegli con rigore a chi concedere l'accesso ai tuoi bucket per la lettura e la scrittura.
- Valuta attentamente il tuo caso d'uso prima di concedere l'accesso per la scrittura al gruppo Tutti, poiché ciò consente a chiunque di accedere al bucket o all'oggetto.
- Non consentire mai l'accesso per la scrittura al gruppo Tutti. Questa impostazione consente a chiunque di aggiungere al tuo bucket oggetti per cui riceverai un addebito. Questa impostazione consente inoltre a chiunque di eliminare oggetti nel bucket.
- Non consentire mai l'accesso per la scrittura al gruppo di Tutti gli utenti AWS autenticati. Questo gruppo include chiunque abbia un account AWS attivo, non solo gli utenti IAM nel tuo account. Per controllare l'accesso degli utenti IAM sul tuo account, utilizza invece una policy IAM. Per ulteriori informazioni su come Amazon S3 valuta le policy IAM, consulta Come vengono autorizzate le richieste da Amazon S3.
Oltre a utilizzare le policy, il blocco dell'accesso pubblico e le ACL, puoi anche limitare l'accesso ad azioni specifiche nei seguenti modi:
- Attiva l'eliminazione dell'MFA. Ciò richiede all'utente di autenticarsi utilizzando un dispositivo di autenticazione a più fattori (MFA) prima di eliminare un oggetto o disabilitare il controllo delle versioni del bucket.
- Configura l'accesso alle API protetto da MFA. Ciò richiede che gli utenti si autentichino con un dispositivo AWS MFA prima di chiamare determinate operazioni API di Amazon S3.
- Se condividi temporaneamente un oggetto S3 con un altro utente, crea un URL prefirmato per concedere un accesso limitato nel tempo all'oggetto. Per ulteriori informazioni, consulta Condivisione di oggetti tramite URL prefirmati.
Monitora le tue risorse S3
Puoi abilitare la registrazione e monitorare le tue risorse S3 nei seguenti modi:
- Configura i log di AWS CloudTrail. Per impostazione predefinita, CloudTrail monitora solo le azioni a livello di bucket. Per tenere traccia delle azioni a livello di oggetto (come GetObject), abilita gli eventi di dati di Amazon S3.
- Attiva la registrazione degli accessi al server Amazon S3. Per ulteriori informazioni su come esaminare questi log, consulta Formato del log degli accessi al server Amazon S3.
- Usa AWS Config per monitorare le ACL e le policy dei bucket per rilevare eventuali violazioni che consentano l'accesso pubblico alla lettura o alla scrittura. Per ulteriori informazioni, consulta s3-bucket-public-read-prohibited e s3-bucket-public-write-prohibited.
- Usa il Sistema di analisi degli accessi AWS IAM per esaminare le policy relative ai bucket o a IAM che concedono l'accesso alle tue risorse S3 da un altro account AWS.
- Usa Amazon Macie per automatizzare l'identificazione dei dati sensibili archiviati nei tuoi bucket, dell'accesso ai tuoi bucket e dei bucket non crittografati nel tuo account.
- Usa CloudTrail con altri servizi, come CloudWatch o AWS Lambda, per richiamare processi specifici quando vengono intraprese determinate azioni sulle tue risorse S3. Per ulteriori informazioni, consulta Registra le operazioni a livello di oggetto di Amazon S3 utilizzando CloudWatch Events.
- Se disponi di un piano di supporto Business o Enterprise, puoi utilizzare il controllo delle autorizzazioni del bucket S3 di AWS Trusted Advisor. Questo controllo ti avvisa dei bucket con accesso aperto.
Usa la crittografia per proteggere i tuoi dati
Se il tuo caso d'uso richiede la crittografia durante la trasmissione, utilizza il protocollo HTTPS. Questo crittografa i dati in transito da e verso Amazon S3. Tutti gli strumenti AWS e SDK utilizzano HTTPS per impostazione predefinita.
Nota: se usi strumenti di terze parti per interagire con Amazon S3, contatta gli sviluppatori per confermare se i loro strumenti supportano anche il protocollo HTTPS.
Se il tuo caso d'uso richiede la crittografia per i dati a riposo, utilizza la crittografia lato server (SSE). Le opzioni SSE includono SSE-S3, SSE-KMS, o SSE-C. È possibile specificare i parametri SSE quando si scrivono oggetti nel bucket. Puoi anche abilitare la crittografia predefinita sul tuo bucket con SSE-S3 o SSE-KMS.
Se il tuo caso d'uso richiede la crittografia lato client, consulta Protezione dei dati tramite crittografia lato client.
Informazioni correlate
Gestione delle identità e degli accessi in Amazon S3
Protezione dei dati in Amazon S3
Come faccio a vedere chi ha effettuato l'accesso ai miei bucket e oggetti Amazon S3?
Contenuto pertinente
- AWS UFFICIALEAggiornata 2 anni fa
- AWS UFFICIALEAggiornata 3 anni fa