Puoi controllare chi ha accesso ai tuoi bucket e ai tuoi oggetti Cloud Storage e il loro livello di accesso.
Scegli tra accesso uniforme e granulare
Quando crei un bucket, devi decidere se applicare le autorizzazioni utilizzando l'accesso uniforme o granulare.
Uniforme (consigliato): l'accesso uniforme a livello di bucket ti consente di utilizzare solo Identity and Access Management (IAM) per gestire le autorizzazioni. IAM applica le autorizzazioni a tutti gli oggetti contenuti nel bucket o nei gruppi di oggetti con prefissi di nome comuni. IAM consente inoltre di utilizzare funzionalità che non sono disponibili quando si lavora con gli ACL, come le condizioni IAM, la condivisione limitata per i domini e la federazione delle identità per la forza lavoro.
Granulare: l'opzione granulare consente di utilizzare IAM e gli elenchi di controllo dell'accesso (ACL) insieme per gestire le autorizzazioni. Gli ACL sono un sistema legacy di controllo dell'accesso per Cloud Storage progettato per l'interoperabilità con Amazon S3. Puoi specificare le autorizzazioni di accesso e di applicazione sia a livello di bucket che a livello di singolo oggetto.
Architettura del bucket consigliata
Se hai oggetti che contengono dati sensibili, come le informazioni che consentono l'identificazione personale, ti consigliamo di archiviare i dati in un bucket con accesso uniforme abilitato per semplificare le autorizzazioni. Ad esempio:
Consigliate | Opzione non consigliata |
---|---|
Controllo dell'accesso: uniforme | Controllo dell'accesso: granulare |
Questa configurazione ha una minore probabilità di esposizione dei dati. L'aggiunta di autorizzazioni a livello di bucket garantisce che Max e Bella non possano vedere i dati reciproci, anche se vengono aggiunti nuovi file ai bucket. | Questa configurazione ha una maggiore probabilità di esposizione dei dati. Se non imposti correttamente le autorizzazioni degli oggetti, Max e Bella potrebbero riuscire a vedere le foto degli altri membri e i nuovi file aggiunti al bucket. |
Utilizzo delle autorizzazioni IAM con ACL
Cloud Storage offre due sistemi per concedere agli utenti l'accesso ai bucket e agli oggetti: IAM ed elenchi di controllo dell'accesso (ACL). Questi sistemi agiscono in parallelo, per consentire a un utente di accedere a una risorsa Cloud Storage, solo uno dei sistemi deve concedere quell'autorizzazione all'utente. Ad esempio, se il criterio IAM del bucket consente solo ad alcuni utenti di leggere i dati degli oggetti nel bucket, ma uno degli oggetti nel bucket ha un ACL che lo rende leggibile pubblicamente, quell'oggetto specifico viene esposto al pubblico.
Nella maggior parte dei casi, IAM è il metodo consigliato per controllare l'accesso alle risorse. IAM controlla le autorizzazioni in Google Cloud e ti consente di concedere le autorizzazioni a livello di bucket e progetto. Usa IAM per tutte le autorizzazioni che si applicano a più oggetti in un bucket per ridurre i rischi di esposizione involontaria. Per utilizzare esclusivamente IAM, abilita l'accesso uniforme a livello di bucket per non consentire gli ACL per tutte le risorse di Cloud Storage.
Gli ACL controllano le autorizzazioni solo per le risorse Cloud Storage e hanno opzioni di autorizzazione limitate, ma consentono di concedere autorizzazioni per singoli oggetti. Molto probabilmente vorrai utilizzare gli ACL per i seguenti casi d'uso:
- Personalizza l'accesso ai singoli oggetti all'interno di un bucket.
- Eseguire la migrazione dei dati da Amazon S3.
Ulteriori opzioni di controllo dell'accesso
Oltre a IAM e ACL, sono disponibili i seguenti strumenti per aiutarti a controllare l'accesso alle tue risorse:
URL firmati (autenticazione stringa di query)
Utilizza gli URL firmati per concedere l'accesso in lettura o scrittura a un oggetto a tempo limitato tramite un URL generato. Tutti gli utenti con cui condividi l'URL possono accedere all'oggetto per il periodo di tempo specificato, a prescindere dal fatto che dispongano o meno di un Account Google.
Oltre agli IAM e agli ACL, puoi utilizzare URL firmati. Ad esempio, puoi utilizzare IAM per concedere l'accesso a un bucket solo a poche persone, quindi creare un URL firmato che consenta ad altri di accedere a una specifica risorsa all'interno del bucket.
Scopri come creare URL firmati:
Documenti relativi al criterio firmato
Utilizza i documenti dei criteri firmati per specificare cosa può essere caricato in un bucket. I documenti relativi ai criteri consentono un maggiore controllo su dimensioni, tipo di contenuti e altre caratteristiche di caricamento rispetto agli URL firmati e possono essere utilizzati dai proprietari dei siti web per consentire ai visitatori di caricare i file in Cloud Storage.
Puoi utilizzare i documenti dei criteri firmati oltre a IAM e ACL. Ad esempio, puoi utilizzare IAM per consentire agli utenti della tua organizzazione di caricare qualsiasi oggetto, quindi creare un documento relativo ai criteri firmato che consenta ai visitatori del sito web di caricare solo gli oggetti che soddisfano criteri specifici.
Regole di sicurezza Firebase
Utilizza le regole di sicurezza Firebase per fornire un controllo dell'accesso granulare e basato sugli attributi ad app web e per dispositivi mobili, utilizzando gli SDK Firebase per Cloud Storage. Ad esempio, puoi specificare chi può caricare o scaricare oggetti, la dimensione di un oggetto o quando un oggetto può essere scaricato.
Prevenzione dell'accesso pubblico
Utilizza la prevenzione dell'accesso pubblico per limitare l'accesso pubblico ai bucket e agli oggetti. Quando attivi la prevenzione dell'accesso pubblico, gli utenti che ottengono l'accesso tramite allUsers
e allAuthenticatedUsers
non sono autorizzati ad accedere ai dati.
Limiti di accesso alle credenziali
Utilizza i limiti di accesso alle credenziali per limitare le autorizzazioni disponibili per un token di accesso OAuth 2.0. Innanzitutto, definisci un confine di accesso alle credenziali che specifica a quali bucket può accedere il token, nonché un limite superiore relativo alle autorizzazioni disponibili in quel bucket. Quindi, puoi creare un token di accesso OAuth 2.0 e scambiarlo con un nuovo token di accesso che rispetti il confine di accesso alle credenziali.
Passaggi successivi
- Scopri come utilizzare le autorizzazioni IAM.
- Riferimento alle autorizzazioni e ai ruoli IAM specifici per Cloud Storage
- Visualizza esempi di scenari di condivisione e collaborazione che prevedono l'impostazione di ACL di bucket e oggetti.
- Scopri come rendere i tuoi dati accessibili a tutti sulla rete Internet pubblica.
- Scopri di più su quando utilizzare un URL firmato.