Condivisione e collaborazione

Questo documento fornisce scenari comuni di condivisione dei dati e collaborazione. che include come configurare i criteri IAM (Identity and Access Management) del progetto e il bucket e gli elenchi di controllo dell'accesso (ACL) degli oggetti per implementare gli scenari.

Archiviazione e manutenzione di dati privati

In questo scenario, l'analista marketing di un'azienda vuole usare Cloud Storage per effettuare il backup di previsioni di entrate e dati di proiezione delle vendite riservati. 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 i vari reparti dell'azienda possano accedere a Cloud Storage.

Per soddisfare le esigenze di riservatezza e privacy dell'analista di marketing, le autorizzazioni dei bucket e degli oggetti devono consentire al personale IT di mantenere il bucket in cui sono archiviati i fogli di lavoro e garantire che 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
Proprietario bucket legacy Storage Il bucket finance-marketing Personale IT Concedere al personale IT il ruolo Proprietario bucket legacy di Storage per il bucket consente di eseguire le attività comuni di gestione dei bucket, come l'eliminazione di oggetti e la modifica del criterio IAM sul bucket. Inoltre, il personale IT potrà elencare i contenuti del bucket finance-marketing, ma non visualizzare o scaricare alcun contenuto.
Creatore oggetti Storage Il bucket finance-marketing Analista di marketing Concedere all'analista di marketing il ruolo Creatore oggetti Storage per il bucket le permette di caricare oggetti nel bucket. Una volta completato l'operazione, diventerà proprietaria dell'oggetto caricato, che potrà quindi visualizzare, aggiornare ed eliminare.

Con questi ruoli, nessuno tranne l'analista marketing può visualizzare/scaricare gli oggetti che aggiunge al bucket. Tuttavia, può concedere l'accesso ad altri utenti modificando gli ACL dell'oggetto. Il personale IT può comunque elencare i contenuti del bucket finance-marketing e, in caso di necessità, può eliminare e sostituire i file archiviati nel bucket.

Implementa questo scenario

Le tue azioni

Per implementare lo scenario, devi intraprendere le seguenti azioni:

  1. Crea un bucket denominato finance-marketing. Per istruzioni dettagliate, consulta Creazione di un bucket.

  2. Assegna a ogni membro del personale IT il ruolo Proprietario bucket legacy Storage per il bucket. Per istruzioni dettagliate, consulta Aggiungere un'entità a un criterio a livello di bucket.

Azioni del personale IT

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

  1. Assegna all'analista di marketing il campo Creatore oggetti Storage per il bucket. Per istruzioni dettagliate, consulta Aggiungere un'entità a un criterio a livello di bucket.

Casella personale di fornitore

In questo scenario, un'impresa di costruzioni collabora con vari studi di progettazione architettonica che redigono progetti edili. L'impresa di costruzioni vuole creare una casella personale per le aziende fornitori in modo che possano caricare i piani architettonici per le varie tappe del progetto. La casella personale deve garantire la privacy dei clienti dell'impresa di costruzione, il che significa che la casella personale non può consentire ai fornitori di vedere il lavoro degli altri. A questo scopo, crei un bucket separato per ogni azienda di architettura e concedi i seguenti ruoli per le risorse elencate alle entità specificate:

Ruolo Risorsa Entità Descrizione
Proprietario Progetto complessivo Dirigente di un'impresa di costruzioni L'assegnazione al gestore dell'impresa di costruzioni il ruolo Proprietario a livello di progetto le consente di creare bucket per ciascun fornitore.
Visualizzatore oggetti Storage Progetto complessivo Dirigente di un'impresa di costruzioni Il visualizzatore oggetti Storage consente al gestore dell'impresa di costruzioni di scaricare gli oggetti che i fornitori caricano.
Proprietario bucket legacy Storage Ogni bucket del fornitore Dirigente di un'impresa di costruzioni Il ruolo Proprietario bucket legacy Storage consente al gestore dell'impresa edile di elencare i contenuti di ciascun bucket ed eliminare oggetti alla fine di ogni traguardo del progetto.
Amministratore oggetti Storage Ogni bucket del fornitore Il fornitore associato al bucket Assegnando a ogni fornitore il ruolo Storage Object Admin (Amministratore oggetti Storage) per il proprio bucket, offre il controllo completo sugli oggetti presenti nel bucket, inclusa la possibilità di caricare oggetti, elencare gli oggetti nel bucket e controllare chi può accedere a ciascun oggetto. Non consente loro di modificare o visualizzare metadati come i ruoli nel bucket nel loro complesso, né di elencare o visualizzare altri bucket nel progetto, tutelando così la privacy tra i fornitori.

Implementa questo scenario

Le tue azioni

Per implementare lo scenario, devi intraprendere le seguenti azioni:

  1. Assegna al gestore dell'impresa di costruzione il ruolo Proprietario per il progetto e il ruolo Visualizzatore oggetti Storage per il progetto. Per istruzioni dettagliate, consulta Concedere un singolo ruolo.

Azioni del gestore di un'azienda di cantieri

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

  1. Crea un bucket separato per ogni fornitore. Per istruzioni dettagliate, consulta la sezione sulla creazione di un bucket.

    Poiché il gestore della costruzione ha il ruolo Proprietario, ottiene automaticamente il ruolo 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 dettagliate, consulta Aggiungere un'entità a un criterio a livello di bucket.

  3. Se un fornitore intende utilizzare la console Google Cloud, fornisci un link al proprio 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 intraprendere le seguenti azioni per implementare lo scenario:

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

Download del browser autenticati

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

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

Per utilizzare la funzionalità, concedi a un utente l'autorizzazione di accesso a un oggetto, poi assegna 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 l'ha già fatto) e l'oggetto viene scaricato sul computer.

Implementa questo scenario

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

  1. Crea un bucket. Per istruzioni dettagliate, consulta Creazione di un bucket.

    Supponendo di creare un bucket in un progetto di tua proprietà, ottieni automaticamente 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 dettagliate, consulta Caricamento di un oggetto.

    Quando carichi un oggetto, ne diventi proprietario, quindi puoi modificare gli ACL dell'oggetto.

  3. Consenti agli utenti di accedere all'oggetto. Puoi farlo in due modi:

    1. Modifica il criterio IAM del bucket per assegnare a ogni utente desiderato il ruolo Visualizzatore oggetti Storage, che si applica a tutti gli oggetti nel bucket. Per istruzioni dettagliate, consulta Aggiungere un'entità a un criterio a livello di bucket.

    2. Modifica gli ACL dell'oggetto in modo da concedere a ogni utente l'autorizzazione READ sul singolo oggetto. Per istruzioni dettagliate, consulta Impostare gli ACL.

  4. Fornisci agli utenti un URL speciale per l'oggetto.

    I download autenticati del browser accedono a Cloud Storage tramite un endpoint URL specifico. Usa 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 ACL o IAM appropriate possono visualizzarlo, indipendentemente dal modo in cui rendi disponibile questo URL. Puoi inviarlo direttamente oppure pubblicarlo in una pagina web.

Utilizzare un gruppo per controllare l'accesso

In questo scenario, vuoi rendere gli oggetti disponibili a utenti specifici, ad esempio utenti invitati a provare nuovo software. Inoltre, vuoi invitare molti utenti, ma non devi impostare le autorizzazioni per ogni singolo utente. Allo stesso tempo, non vuoi rendere gli oggetti pubblicamente leggibili e inviare i link ai clienti invitati per accedere agli oggetti, perché c'è 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 al gruppo solo gli utenti invitati. Quindi, puoi concedere all'intero gruppo l'accesso agli oggetti:

Ruolo Risorsa Entità Descrizione
Visualizzatore oggetti Storage 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 potrà visualizzare gli oggetti contenuti nel bucket. Nessuno esterno al gruppo ha accesso agli oggetti.

Implementa questo scenario

  1. Crea un gruppo Google a cui aggiungere i clienti. Per istruzioni dettagliate, vedi Creare un gruppo.

  2. Creare un bucket. Per istruzioni dettagliate, consulta la sezione Creare un bucket.

  3. Caricare oggetti nel bucket. Per istruzioni dettagliate, consulta Caricamento di 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 tuo bucket. Per istruzioni dettagliate, consulta Aggiungere un'entità a un criterio a livello di bucket.

    • Se vuoi concedere l'accesso solo ad alcuni oggetti nel bucket, imposta l'ACL Reader sui singoli oggetti. Per istruzioni dettagliate, consulta la sezione Impostazione degli ACL.

  5. Condividi l'endpoint di richiesta appropriato con il gruppo, in modo che sappiano 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 rimanda all'elenco degli oggetti nel bucket BUCKET_NAME.

Utilizza 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 e non su altri siti web. Quando un cliente cancella il proprio account, vuoi disattivare l'accesso pubblico alle immagini sul suo sito web, ma evita di eliminare le immagini 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 clienti sia per i loro utenti finali.

Implementa questo scenario

  1. Crea un bucket.

  2. Crea una cartella gestita nel bucket per il sito web di ogni 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 il cliente possa caricare oggetti nella cartella gestita e rimuovere oggetti da quest'ultima.

  4. Per tutte le cartelle gestite, imposta un criterio IAM che concede il ruolo Visualizzatore oggetti Storage (roles/storage.objectViewer) all'entità allUsers, in modo che gli oggetti immagine nelle cartelle gestite possano essere visibili al pubblico.

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

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