Condivisione e collaborazione

Questo documento fornisce scenari comuni di condivisione dei dati e collaborazione. Include informazioni su come configurare le policy IAM (Identity and Access Management) del progetto e del bucket per implementare gli scenari.

Archiviazione e manutenzione dei dati privati

In questo scenario, l'analista di marketing di un'azienda vuole utilizzare Cloud Storage per eseguire il backup dei dati confidenziali delle previsioni di entrate e delle proiezioni di vendita. I dati devono essere accessibili solo all'analista di marketing. Il reparto IT dell'azienda supervisiona e gestisce l'account Cloud Storage dell'azienda. Le sue responsabilità di gestione principali includono la creazione e la condivisione dei bucket in modo che i vari reparti dell'azienda abbiano accesso a Cloud Storage.

Per soddisfare le esigenze di riservatezza e privacy dell'analista di marketing, le autorizzazioni del bucket e degli oggetti devono consentire al personale IT di gestire il bucket in cui sono archiviati i fogli di lavoro, ma anche garantire che il personale IT non possa visualizzare/scaricare i dati archiviati nel bucket. A questo scopo, crea un bucket denominato finance-marketing e concedi i seguenti ruoli per le risorse elencate alle entità specificate:

Ruolo Risorsa Entità Descrizione
Storage Legacy Bucket Owner Il bucket finance-marketing Personale IT Concedere al personale IT il ruolo Storage Legacy Bucket Owner per il bucket consente di eseguire attività di gestione comuni dei bucket, come l'eliminazione degli oggetti e la modifica della policy IAM sul bucket. Consente inoltre al personale IT di elencare i contenuti del bucket finance-marketing, ma non di visualizzare o scaricare nessuno dei contenuti.
Storage Object User Il bucket finance-marketing Analista di marketing Concedere all'analista di marketing il ruolo Storage Object User per il bucket consente di caricare, visualizzare, aggiornare ed eliminare gli oggetti nel bucket.

Con questi ruoli, nessuno tranne l'analista di marketing può visualizzare o scaricare gli oggetti presenti nel bucket. Il personale IT può comunque elencare i contenuti del bucket finance-marketing e, se necessario, eliminare e sostituire i file archiviati nel bucket.

Implementare questo scenario

Le tue azioni

Per implementare lo scenario, devi eseguire le seguenti azioni:

  1. Crea un bucket denominato finance-marketing. Per istruzioni passo passo, consulta Creare un bucket.

  2. Concedi a ogni membro del personale IT il ruolo Storage Legacy Bucket Owner per il bucket. Per istruzioni passo passo, consulta Aggiungere un'entità a una policy a livello di bucket.

Azioni del personale IT

Per implementare lo scenario, il personale IT deve eseguire le seguenti azioni:

  1. Concedi all'analista di analisi dei dati di mercato il ruolo Storage Object User per il bucket. Per istruzioni passo passo, consulta Aggiungere un'entità a una policy a livello di bucket.

Cassetta per i fornitori

In questo scenario, un'impresa edile collabora con diverse società di progettazione architettonica che forniscono progetti di costruzione per vari progetti. L'impresa edile vuole configurare una cassetta per le società fornitrici in modo che possano caricare i progetti architettonici in varie fasi del progetto. La cassetta deve garantire la privacy dei clienti dell'impresa edile, il che significa che non può consentire ai fornitori di vedere il lavoro degli altri. A questo scopo, crea un bucket separato per ogni società di architettura e concedi i seguenti ruoli per le risorse elencate alle entità specificate:

Ruolo Risorsa Entità Descrizione
Proprietario Progetto complessivo Responsabile dell'impresa edile Concedere al responsabile dell'impresa edile il ruolo Proprietario a livello di progetto consente di creare bucket per ogni fornitore.
Storage Object Viewer Progetto complessivo Responsabile dell'impresa edile Il ruolo Storage Object Viewer consente al responsabile dell'impresa edile di scaricare gli oggetti caricati dai fornitori.
Storage Legacy Bucket Owner Ogni bucket del fornitore Responsabile dell'impresa edile Il ruolo Storage Legacy Bucket Owner consente al responsabile dell'impresa edile di elencare i contenuti di ogni bucket e di eliminare gli oggetti alla fine di ogni fase del progetto.
Storage Object Admin Ogni bucket del fornitore Il fornitore associato al bucket Concedere a ogni fornitore il ruolo Storage Object Admin per il proprio bucket consente di avere il controllo completo sugli oggetti nel bucket, inclusa la possibilità di caricare oggetti, elencare gli oggetti nel bucket e controllare chi ha accesso a ogni oggetto. Non consente di modificare o visualizzare i metadati, come i ruoli sul bucket nel suo complesso, né di elencare o visualizzare altri bucket nel progetto, preservando così la privacy tra i fornitori.

Implementare questo scenario

Le tue azioni

Per implementare lo scenario, devi eseguire le seguenti azioni:

  1. Concedi al responsabile dell'impresa edile il ruolo Proprietario sul progetto e il ruolo Storage Object Viewer sul progetto. Per istruzioni passo passo, consulta Concedi un singolo ruolo.

Azioni del responsabile dell'impresa edile

Per implementare lo scenario, il responsabile dell'impresa edile deve eseguire le seguenti azioni:

  1. Crea un bucket separato per ogni fornitore. Per istruzioni passo passo, consulta Creare un bucket.

    Poiché il responsabile dell'impresa edile ha il ruolo Proprietario, ottiene automaticamente il ruolo Storage Legacy Bucket Owner per ogni bucket che crea.

  2. Concedi a ogni fornitore il ruolo Storage Object Admin per il rispettivo bucket. Per istruzioni passo passo, consulta Aggiungere un'entità a una policy a livello di bucket.

  3. Se un fornitore intende utilizzare la Google Cloud console, forniscigli un link al suo bucket, che ha il seguente formato:

    https://console.cloud.google.com/storage/browser/BUCKET_NAME

    dove BUCKET_NAME è il nome del bucket del fornitore.

Azioni del fornitore

Per implementare lo scenario, ogni fornitore deve eseguire le seguenti azioni:

  1. Carica gli oggetti nel bucket assegnato. Il modo più semplice per farlo è tramite la Google Cloud console. Altri metodi, come Google Cloud CLI, richiedono una configurazione aggiuntiva prima dell'uso. Per istruzioni passo passo, consulta Caricare un oggetto.

Download autenticati del browser

In questo scenario, un cliente vuole rendere disponibili i file a persone specifiche tramite semplici download del browser. Puoi farlo utilizzando l' autenticazione basata sui cookie di Cloud Storage. Per scaricare gli oggetti, gli utenti devono autenticarsi accedendo a un account valido, che include Google Workspace, Cloud Identity, Gmail e la federazione di identità della forza lavoro. I seguenti utenti autenticati possono scaricare l'oggetto:

Tutti gli altri utenti ricevono un errore 403 Forbidden (access denied).

Per utilizzare la funzionalità, concedi a un utente l'autorizzazione per accedere a un oggetto, quindi forniscigli un URL speciale all'oggetto. Quando l'utente fa clic sull'URL, Cloud Storage gli chiede di accedere al suo account (se non ha già eseguito l'accesso) e l'oggetto viene scaricato sul suo computer.

Implementare questo scenario

Puoi implementare l'autenticazione basata sui cookie in quattro passaggi generali:

  1. Crea un bucket. Per istruzioni passo passo, consulta Creare un bucket.

    Se crei un bucket in un progetto di tua proprietà, ottieni automaticamente le autorizzazioni che ti consentono di caricare oggetti nel bucket e modificare chi ha accesso al bucket.

  2. Carica l'oggetto che vuoi condividere. Per istruzioni passo passo, consulta Caricare un oggetto.

  3. Concedi agli utenti l'accesso all'oggetto. Un modo comune per farlo è modificare la policy IAM del bucket per concedere a utenti specifici il ruolo Storage Object Viewer, che si applica a tutti gli oggetti nel bucket. Per istruzioni passo passo, consulta Aggiungere un'entità a una policy a livello di bucket.

  4. Fornisci agli utenti un URL speciale all'oggetto.

    I download autenticati del browser accedono a Cloud Storage tramite un endpoint URL specifico. Utilizza il seguente URL:

    https://storage.cloud.google.com/BUCKET_NAME/OBJECT_NAME

    Dove:

    • BUCKET_NAME è il nome del bucket che contiene l'oggetto desiderato. Ad esempio, my-bucket.
    • OBJECT_NAME è il nome dell'oggetto desiderato. Ad esempio, pets/dog.png.

    Poiché solo gli utenti con le autorizzazioni di accesso appropriate possono visualizzarlo, non importa come rendi disponibile questo URL. Puoi inviarlo direttamente o pubblicarlo su una pagina web.

Utilizzare un gruppo per controllare l'accesso

In questo scenario, vuoi rendere disponibili gli oggetti a utenti specifici, ad esempio gli utenti invitati a provare un nuovo software. Inoltre, vuoi invitare molti utenti, ma non vuoi impostare le autorizzazioni per ogni utente singolarmente. Allo stesso tempo, non vuoi rendere gli oggetti leggibili pubblicamente e inviare ai clienti invitati i link per accedere agli oggetti, perché c'è il rischio che i link vengano inviati a utenti non invitati.

Un modo per gestire questo scenario è utilizzare Gruppi Google. Puoi creare un gruppo e aggiungere solo gli utenti invitati al gruppo. Poi, puoi concedere l'accesso agli oggetti all'intero gruppo:

Ruolo Risorsa Entità Descrizione
Storage Object Viewer Il tuo bucket Gruppo Google Concedere al Gruppo Google il ruolo Storage Object Viewer per il bucket consente a qualsiasi cliente che fa parte del Gruppo Google di visualizzare gli oggetti nel bucket. Nessun utente esterno al gruppo ha accesso agli oggetti.

Implementare questo scenario

  1. Crea un Gruppo Google e aggiungi i clienti. Per istruzioni passo passo , consulta Creare un gruppo.

  2. Crea un bucket. Per istruzioni passo passo, consulta Creare un bucket.

  3. Carica gli oggetti nel bucket. Per istruzioni passo passo, consulta Caricare un oggetto.

  4. Concedi al Gruppo Google l'accesso agli oggetti.

    • Puoi utilizzare il ruolo IAM storage.objectViewer per concedere l'accesso in visualizzazione a tutti gli oggetti nel bucket. Per istruzioni passo passo, consulta Aggiungere un'entità a una policy a livello di bucket.

    • Se vuoi concedere l'accesso solo ad alcuni degli oggetti nel bucket, imposta l'ACL Reader su questi singoli oggetti. Per istruzioni passo passo, consulta Impostare gli ACL.

  5. Condividi l'endpoint della richiesta appropriato con il gruppo, in modo che sappia dove andare per accedere agli oggetti.

    Ad esempio, quando utilizzi la Google Cloud console, l'URL https://console.cloud.google.com/storage/browser/BUCKET_NAME ti porta all'elenco degli oggetti nel bucket BUCKET_NAME.

Utilizzare le cartelle gestite per controllare l'accesso

In questo scenario, hai più clienti, ognuno dei quali possiede un sito web univoco contenente immagini personalizzate. Vuoi che i clienti possano caricare le immagini solo sul proprio sito web, ma non su altri siti web. Quando un cliente annulla il suo account, vuoi disattivare l'accesso pubblico alle immagini sul suo sito web, ma evitare di eliminare le immagini nel caso in cui il cliente voglia riattivare il suo account.

Un modo per gestire questo scenario è utilizzare le cartelle gestite. Puoi creare più cartelle gestite all'interno di un bucket e utilizzare IAM per controllare l'accesso alle singole cartelle gestite sia per i tuoi clienti sia per i loro utenti finali.

Implementare questo scenario

  1. Crea un bucket.

  2. Crea una cartella gestita nel bucket per ogni sito web del cliente.

  3. Per ogni cartella gestita, imposta una policy IAM che conceda a un cliente il ruolo Storage Object User (roles/storage.objectUser), in modo che il cliente possa caricare oggetti nella cartella gestita e rimuovere oggetti da la cartella gestita.

  4. Per tutte le cartelle gestite, imposta una policy IAM che conceda il ruolo Storage Object Viewer (roles/storage.objectViewer) all' entità allUsers, in modo che gli oggetti immagine nelle cartelle gestite siano visibili al pubblico.

    In alternativa, puoi concedere un ruolo personalizzato che conceda a allUsers l'autorizzazione IAM storage.objects.get.

  5. Quando un cliente annulla il suo account, rimuovi la policy IAM che concede al cliente il ruolo Storage Object User (roles/storage.objectUser) per la cartella gestita associata. Per disattivare l'accesso pubblico agli oggetti all'interno di quella cartella gestita, rimuovi la policy IAM che concede il ruolo Storage Object Viewer (roles/storage.objectViewer) a allUsers.