Panoramica del controllo degli accessi

Sei tu a controllare chi ha accesso ai tuoi bucket e oggetti Cloud Storage e a quale livello di accesso hanno.

Scegliere tra accesso uniforme e granulare

Quando crei un bucket, devi decidere se applicare le autorizzazioni utilizzando l'accesso uniforme o perfezionato.

  • Uniforme (consigliata): l'accesso uniforme a livello di bucket consente di utilizzare da soli la funzionalità 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 nomi comuni. IAM consente anche di utilizzare funzionalità che non sono disponibili quando si lavora con ACL, ad esempio le condizioni IAM e gli audit log di Cloud.

  • Granulare: l'opzione di granularità fine consente di utilizzare IAM ed elenchi di controllo di accesso (ACL) insieme alla gestione delle autorizzazioni. Gli ACL sono un sistema di controllo dell'accesso precedente per Cloud Storage, progettato per l'interoperabilità con Amazon S3. Puoi specificare l'accesso e applicare le autorizzazioni sia a livello di bucket che a livello di singolo oggetto.

Se hai oggetti che contengono dati sensibili, come le informazioni che consentono l'identificazione personale, ti consigliamo di archiviarli in un bucket con accesso uniforme abilitato per semplificare le autorizzazioni. Ad esempio:

Consigliato Opzione non consigliata
Controllo degli accessi: uniforme Controllo degli accessi: granulare
Uniforme 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 degli altri, 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 essere in grado di visualizzare le foto di altri elementi e i nuovi file aggiunti al bucket.

Utilizzo delle autorizzazioni IAM con gli ACL

Cloud Storage offre due sistemi per concedere agli utenti l'autorizzazione ad accedere ai bucket e agli oggetti: IAM e elenchi di controllo di accesso (ACL). Questi sistemi agiscono in parallelo, affinché un utente possa accedere a una risorsa di Cloud Storage, solo uno dei sistemi deve concedere l'autorizzazione all'utente.

Nella maggior parte dei casi, IAM è il metodo consigliato per controllare l'accesso alle risorse. IAM controlla le autorizzazioni in tutto Google Cloud e ti consente di concedere le autorizzazioni a livello di bucket e di progetto. Devi utilizzare IAM per qualsiasi autorizzazione applicabile a più oggetti in un bucket, per ridurre il rischio 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 utilizzerai gli ACL per i seguenti casi d'uso:

  • Personalizza l'accesso ai singoli oggetti all'interno di un bucket.
  • Esegui 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 della stringa di query)

Utilizza gli URL firmati per fornire l'accesso in lettura o scrittura a un oggetto a tempo limitato tramite un URL generato. Chiunque abbia il tuo URL può accedere all'oggetto per il periodo di tempo specificato da te, indipendentemente dal fatto che abbia un Account Google o meno.

Puoi utilizzare URL firmati oltre a IAM e ACL. Ad esempio, puoi utilizzare IAM per concedere l'accesso a un bucket solo a poche persone, per poi creare un URL firmato che consente ad altri di accedere a una risorsa specifica all'interno del bucket.

Scopri come creare URL firmati:

Documenti relativi al criterio firmato

Utilizza i documenti con 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 file in Cloud Storage.

Oltre ai ruoli IAM e agli ACL, puoi utilizzare documenti con criteri firmati. Ad esempio, puoi utilizzare IAM per consentire agli utenti della tua organizzazione di caricare qualsiasi oggetto, quindi creare un documento di 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 di Firebase per fornire un controllo granulare degli attributi basato su attributi delle app web e per dispositivi mobili con gli SDK Firebase per Cloud Storage. Ad esempio, puoi specificare chi può caricare o scaricare gli oggetti, la loro dimensione o il download degli oggetti.

Prevenzione dell'accesso pubblico

Utilizza la Prevenzione dell'accesso pubblico per limitare l'accesso pubblico ai bucket e agli oggetti. Se attivi la prevenzione dell'accesso pubblico, gli utenti che ottengono l'accesso tramite allUsers e allAuthenticatedUsers non possono accedere ai dati.

Limiti di accesso alle credenziali

Utilizza i limiti di accesso alle credenziali per eseguire il downgrade delle autorizzazioni disponibili per un token di accesso OAuth 2.0. Innanzitutto, definisci un confine di accesso alle credenziali che specifica i bucket a cui il token può accedere, oltre a un limite superiore per le autorizzazioni disponibili in tale bucket. Puoi quindi creare un token di accesso OAuth 2.0 e scambiarlo con un nuovo token di accesso che rispetta il limite di accesso alle credenziali.

Passaggi successivi