Condivisione e collaborazione

Questo documento fornisce scenari comuni di condivisione e collaborazione dei dati. Viene incluso come configurare le policy Identity and Access Management (IAM) 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 riservati sulle previsioni di entrate e sulle 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 loro principali responsabilità di gestione includono la creazione e la condivisione di bucket in modo che vari reparti dell'azienda abbiano accesso a Cloud Storage.

Per soddisfare le esigenze di riservatezza e privacy dell'analista di marketing, le autorizzazioni per bucket e 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. Per farlo, 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 L'assegnazione al personale IT del ruolo Proprietario bucket legacy Storage per il bucket consente di eseguire attività comuni di gestione del bucket, come l'eliminazione di oggetti e la modifica della policy IAM del bucket. Consente inoltre al personale IT di elencare i contenuti del bucket finance-marketing, ma non di visualizzarli o scaricarli.
Storage Object User Il bucket finance-marketing Analista di marketing Se assegni all'analista di marketing il ruolo Utente oggetti Storage per il bucket, potrà caricare, visualizzare, aggiornare ed eliminare gli oggetti nel bucket.

Con questi ruoli, solo l'analista di marketing può visualizzare o scaricare gli oggetti nel bucket. Il personale IT può ancora elencare i contenuti del bucket finance-marketing ed eliminare e sostituire i file archiviati nel bucket in caso di necessità.

Implementa 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. Assegna a ogni membro del personale IT il ruolo Proprietario bucket legacy Storage per il bucket. Per istruzioni passo passo, vedi Aggiungere un principal a una policy a livello di bucket.

Azioni del personale IT

Il personale IT deve intraprendere le seguenti azioni per implementare lo scenario:

  1. Concedi all'analista di marketing il ruolo Storage Object User per il bucket. Per istruzioni passo passo, vedi Aggiungere un principal a una policy a livello di bucket.

Drop box del fornitore

In questo scenario, un'impresa edile collabora con diverse società di progettazione architettonica che forniscono i progetti di costruzione per vari progetti. La società di costruzioni vuole configurare una casella di deposito per le aziende fornitrici in modo che possano caricare i progetti architettonici nelle varie fasi del progetto. La casella di deposito 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 studio di architettura e concedi i seguenti ruoli per le risorse elencate alle entità specificate:

Ruolo Risorsa Entità Descrizione
Proprietario Progetto complessivo Responsabile di un'impresa di costruzioni L'assegnazione del ruolo Proprietario a livello di progetto al responsabile dell'impresa edile gli consente di creare bucket per ogni fornitore.
Storage Object Viewer Progetto complessivo Responsabile di un'impresa di costruzioni Il ruolo Visualizzatore oggetti Storage consente al responsabile dell'impresa edile di scaricare gli oggetti caricati dai fornitori.
Storage Legacy Bucket Owner Ogni bucket fornitore Responsabile di un'impresa di costruzioni Il ruolo Proprietario bucket legacy di Storage consente al responsabile dell'impresa edile di elencare i contenuti di ogni bucket ed eliminare gli oggetti al termine di ogni traguardo del progetto.
Storage Object Admin Ogni bucket fornitore Il fornitore associato al bucket Se concedi a ogni fornitore il ruolo Storage Object Admin per il proprio bucket, gli concedi 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, ad esempio i ruoli nel bucket nel suo complesso, né di elencare o visualizzare altri bucket nel progetto, preservando così la privacy tra i fornitori.

Implementa questo scenario

Le tue azioni

Per implementare lo scenario, devi eseguire le seguenti azioni:

  1. Assegna al responsabile dell'impresa edile il ruolo di Proprietario per il progetto e il ruolo di Visualizzatore oggetti Storage per il progetto. Per istruzioni passo passo, vedi Concedere un singolo ruolo.

Azioni del responsabile dell'impresa edile

Il responsabile dell'impresa edile deve intraprendere le seguenti azioni per implementare lo scenario:

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

    Poiché il responsabile dei lavori ha il ruolo di Proprietario, ottiene automaticamente il ruolo di Proprietario bucket legacy Storage per ogni bucket che crea.

  2. Assegna a ogni fornitore il ruolo Amministratore oggetti Storage per il rispettivo bucket. Per istruzioni passo passo, vedi Aggiungere un principal a una policy a livello di bucket.

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

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

    dove BUCKET_NAME è il nome del bucket del fornitore.

Azioni del fornitore

Ogni fornitore deve eseguire le seguenti azioni per implementare lo scenario:

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

Download autenticati dal 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 su cookie di Cloud Storage. Per scaricare gli oggetti, gli utenti devono autenticarsi accedendo a un account valido, tra cui Google Workspace, Cloud Identity, Gmail e federazione delle 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 fornisci all'utente un URL speciale per l'oggetto. Quando l'utente fa clic sull'URL, Cloud Storage gli chiede di accedere al proprio account (se non ha già eseguito l'accesso) e l'oggetto viene scaricato sul computer.

Implementa questo scenario

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

  1. Crea un bucket. Per istruzioni passo passo, consulta Creazione di 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, vedi Caricare un oggetto.

  3. Consenti agli utenti di accedere all'oggetto. Un modo comune per farlo è modificare il criterio IAM del bucket per assegnare a utenti specifici il ruolo Visualizzatore oggetti Storage, che si applica a tutti gli oggetti nel bucket. Per istruzioni passo passo, vedi Aggiungere un principal a una policy a livello di bucket.

  4. Fornisci agli utenti un URL speciale per l'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 link per accedere agli oggetti, perché esiste il rischio che i link vengano inviati a utenti non invitati.

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

Ruolo Risorsa Entità Descrizione
Storage Object Viewer Il tuo bucket Gruppo Google Se assegni al gruppo Google il ruolo Visualizzatore oggetti Storage per il bucket, qualsiasi cliente che fa parte del gruppo Google può visualizzare gli oggetti nel bucket. Nessun utente esterno al gruppo ha accesso agli oggetti.

Implementa questo scenario

  1. Crea un gruppo Google e aggiungici i clienti. Per istruzioni passo passo, vedi Creare un gruppo.

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

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

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

  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 console Google Cloud , 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 unico contenente immagini personalizzate. Vuoi che i clienti possano caricare immagini solo sul loro sito web, ma non su altri siti web. Quando un cliente annulla il proprio account, vuoi disattivare l'accesso pubblico alle immagini sul suo sito web, ma evitare di eliminarle nel caso in cui il cliente voglia riattivare il proprio 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.

Implementa 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 un criterio IAM che conceda a un cliente il ruolo Utente oggetti Storage (roles/storage.objectUser), in modo che possa caricare oggetti nella cartella gestita e rimuoverli.

  4. Per tutte le cartelle gestite, imposta una policy IAM che conceda il ruolo Visualizzatore oggetti Storage (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 assegna a allUsers l'autorizzazione IAM storage.objects.get.

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