Controllo dell'accesso a Bigtable con IAM

Questa pagina descrive le opzioni di controllo dell'accesso in Bigtable.

Panoramica

Bigtable utilizza Identity and Access Management (IAM) per controllo dell'accesso. Imposti i criteri IAM sulle risorse per controllare chi ha quale accesso alle risorse.

Le risorse Bigtable sono organizzate in una gerarchia. Un progetto Google Cloud è il progetto principale di un'istanza Bigtable, che è il progetto principale dei relativi cluster e tabelle. Una tabella è la tabella principale delle relative visualizzazioni autorizzate, mentre un cluster è la tabella principale dei relativi backup. Puoi configurare controllo dell'accesso a ogni livello.

Se disponi delle autorizzazioni a un livello, disponi automaticamente delle autorizzazioni al di sotto di quel livello. Ad esempio, se disponi dell'accesso a livello di progetto, hai accesso alle istanze, ai cluster, alle tabelle e alle viste autorizzate nel progetto. Se ti viene concesso l'accesso a una vista autorizzata, non hai automaticamente accesso alle risorse di livello superiore che sono i parenti della vista autorizzata, come la tabella e l'istanza. Questo comportamento è chiamato eredità dei criteri.

Per ulteriori informazioni sulla gerarchia IAM, consulta Eredità dei criteri IAM.

Ecco alcuni esempi di utilizzo controllo dell'accesso a livello di progetto:

  • Consente a un utente di leggere, ma non scrivere, in qualsiasi tabella del progetto.
  • Consenti a un utente di leggere e scrivere in qualsiasi tabella all'interno del progetto, ma non di gestire le istanze.
  • Consente a un utente di leggere e scrivere in qualsiasi tabella del progetto e di gestire le istanze.

Di seguito sono riportati alcuni esempi di utilizzo controllo dell'accesso dell'accesso a livello di istanza:

  • Consenti a un utente di leggere da qualsiasi tabella in una sola istanza di un progetto con più istanze.
  • Consenti a un utente di gestire una sola istanza in un progetto con più istanze.

Di seguito sono riportati alcuni esempi di utilizzo controllo dell'accesso dell'accesso a livello di tabella:

  • Consenti a un utente di scrivere in una tabella, ma non di leggerla.
  • Consentire a un utente di leggere da una tabella, ma non di scrivere al suo interno.

Di seguito sono riportati alcuni esempi di utilizzo controllo dell'accesso dell'accesso a livello di backup:

  • Impedire a un utente di eliminare un backup.
  • Impedire a un utente di eseguire il ripristino dal backup.

Di seguito sono riportati alcuni esempi di utilizzo controllo dell'accesso dell'accesso a livello di vista autorizzata:

  • Consente a un utente di leggere una visualizzazione autorizzata, ma non di modificarla.
  • Consenti a un utente di visualizzare i dati di una sola delle più visualizzazioni autorizzate di una tabella.

Per una descrizione dettagliata di IAM e delle sue funzionalità, consulta la Guida per gli sviluppatori di IAM. In particolare, consulta Assegnazione, modifica e revoca dell'accesso.

In Bigtable, non puoi concedere l'accesso ai seguenti tipi di agenti:

Per gli elenchi delle autorizzazioni e dei ruoli supportati da Bigtable, consulta le sezioni seguenti.

Abilitazione dell'API Bigtable

Per visualizzare e assegnare i ruoli IAM di Bigtable, devi attivare l'API Bigtable per il tuo progetto. Non potrai visualizzare i ruoli Bigtable nella console Google Cloud finché non avrai attivato l'API.

Enable the API

Autorizzazioni

Questa sezione riepiloga le autorizzazioni supportate da Bigtable.

Le autorizzazioni consentono agli utenti di eseguire azioni specifiche sulle risorse Bigtable. Ad esempio, le autorizzazioni bigtable.instances.list consentono agli utenti di elencare tutte le istanze Bigtable all'interno di un progetto. Non assegni direttamente le autorizzazioni agli utenti, ma assegni a ciascun utente un ruolo predefinito o un ruolo personalizzato che concede una o più autorizzazioni.

Le tabelle riportate di seguito elencano le autorizzazioni IAM associate a Bigtable:

Nome dell'autorizzazione del profilo dell'app Descrizione
bigtable.appProfiles.create Crea un profilo dell'app Bigtable.
bigtable.appProfiles.delete Elimina un profilo dell'app Bigtable.
bigtable.appProfiles.get Visualizza le informazioni su un profilo dell'app Bigtable.
bigtable.appProfiles.list Elenca i profili delle app Bigtable di un'istanza.
bigtable.appProfiles.update Aggiorna le impostazioni di un profilo dell'app Bigtable.
Nome autorizzazione per i backup Descrizione
bigtable.backups.create Crea un backup di Bigtable.
bigtable.backups.delete Elimina un backup di Bigtable.
bigtable.backups.get Visualizza le informazioni su un backup Bigtable.
bigtable.backups.getIamPolicy Leggi gli elenchi di controllo dell'accesso (ACL) di un backup. Restituito come criteri IAM.
bigtable.backups.list Elenca i backup di Bigtable.
bigtable.backups.restore Ripristina da un backup di Bigtable.
bigtable.backups.testIamPermissions Ottenere le autorizzazioni dell'utente che ha effettuato la chiamata su un backup specificato.
bigtable.backups.read Leggi da un backup di Bigtable.
bigtable.backups.setIamPolicy Aggiorna le ACL di backup.
bigtable.backups.update Modifica la scadenza di un backup di Bigtable.
Nome dell'autorizzazione del cluster Descrizione
bigtable.clusters.create Crea un cluster Bigtable.
bigtable.clusters.delete Elimina un cluster Bigtable.
bigtable.clusters.get Visualizza le informazioni su un cluster Bigtable.
bigtable.clusters.list Elenca i cluster Bigtable di un'istanza.
bigtable.clusters.update Aggiorna le impostazioni di un cluster Bigtable.
Nome dell'autorizzazione per i tablet caldi Descrizione
bigtable.hotTablets.list Elenca i tablet caldi per un cluster.
Nome autorizzazione istanza Descrizione
bigtable.instances.create Crea un'istanza Bigtable.
bigtable.instances.createTagBinding Crea un tag.
bigtable.instances.delete Elimina un'istanza Bigtable.
bigtable.instances.deleteTagBinding Eliminare un tag.
bigtable.instances.get Visualizza le informazioni su un'istanza Bigtable.
bigtable.instances.getIamPolicy Leggi gli elenchi di controllo dell'accesso (ACL) delle istanze. Restituito come criteri IAM.
bigtable.instances.list Elenca le istanze Bigtable di un progetto.
bigtable.instances.listEffectiveTagBindings Elenca tutti i tag in vigore per un'istanza.
bigtable.instances.listTagBindings Elenca i tag di un'istanza.
bigtable.instances.ping Inviare richieste di priming del canale.
bigtable.instances.setIamPolicy Aggiorna gli ACL.
bigtable.instances.update Aggiorna le impostazioni di un'istanza Bigtable.
Nome dell'autorizzazione Key Visualizer Descrizione
bigtable.keyvisualizer.get Visualizza le informazioni di Key Visualizer su una tabella, inclusi i metadati relativi ai pattern di accesso e alle distribuzioni chiave di riga.
bigtable.keyvisualizer.list Elenca le informazioni di Key Visualizer disponibili per una tabella.
Nome dell'autorizzazione di accesso alla posizione Descrizione
bigtable.locations.list Elenca le località Bigtable.
Nome dell'autorizzazione tabella Descrizione
bigtable.tables.checkConsistency Controlla se una tabella replicata è aggiornata.
bigtable.tables.create Creare una tabella.
bigtable.tables.delete Elimina una tabella.
bigtable.tables.generateConsistencyToken Genera un token per verificare se una tabella replicata è aggiornata.
bigtable.tables.get Visualizza le informazioni su una tabella, incluse le famiglie di colonne e le relative impostazioni individuali.
bigtable.tables.getIamPolicy Leggere gli ACL delle tabelle. Restituito come criteri IAM.
bigtable.tables.list Elenca le tabelle in un'istanza.
bigtable.tables.mutateRows Modifica le righe all'interno di una tabella o tronca la tabella.
bigtable.tables.readRows Legge le righe di una tabella. Sono incluse informazioni sulla tabella, ad esempio le famiglie di colonne e le relative impostazioni.
bigtable.tables.sampleRowKeys Ottieni un esempio delle chiavi di riga utilizzate in una tabella.
bigtable.tables.setIamPolicy Aggiorna le ACL delle tabelle.
bigtable.tables.undelete Ripristinare una tabella eliminata.
bigtable.tables.update Aggiorna le impostazioni di una tabella, incluse le famiglie di colonne e le relative impostazioni individuali.
Nome dell'autorizzazione di accesso alla posizione Descrizione
bigtable.locations.list Elenca le località Bigtable.
nome dell'autorizzazione di visualizzazione autorizzata Descrizione
bigtable.authorizedViews.create Crea una vista autorizzata.
bigtable.authorizedViews.delete Elimina una vista autorizzata.
bigtable.authorizedViews.get Visualizza le informazioni su una visualizzazione autorizzata.
bigtable.authorizedViews.getIamPolicy Visualizza il controllo dell'accesso per una vista autorizzata. Restituito come criteri IAM.
bigtable.authorizedViews.list Elenca le viste autorizzate in una tabella.
bigtable.authorizedViews.mutateRows Modificare le righe all'interno di una vista autorizzata.
bigtable.authorizedViews.readRows Leggi le righe da una vista autorizzata.
bigtable.authorizedViews.sampleRowKeys Ottieni un esempio delle chiavi di riga utilizzate in una visualizzazione autorizzata.
bigtable.authorizedViews.setIamPolicy Aggiorna i criteri di controllo dell'accesso per una visualizzazione autorizzata.
bigtable.authorizedViews.update Aggiorna le impostazioni per una vista autorizzata.

Ruoli predefiniti

Ogni ruolo predefinito è un insieme di una o più autorizzazioni. Ad esempio, roles/bigtable.reader fornisce l'accesso di sola lettura alle informazioni su istanze, cluster, tabelle e famiglie di colonne Bigtable, nonché ai dati contenuti nelle tabelle. Assegna i ruoli a utenti o gruppi, che possono eseguire azioni sulle risorse del progetto.

La tabella seguente elenca i ruoli predefiniti per Bigtable, incluso un elenco delle autorizzazioni associate a ciascun ruolo:

Role Permissions

(roles/bigtable.admin)

Administers all Bigtable instances within a project, including the data stored within tables. Can create new instances. Intended for project administrators.

Lowest-level resources where you can grant this role:

  • Table

bigtable.*

  • bigtable.appProfiles.create
  • bigtable.appProfiles.delete
  • bigtable.appProfiles.get
  • bigtable.appProfiles.list
  • bigtable.appProfiles.update
  • bigtable.authorizedViews.create
  • bigtable.authorizedViews.createTagBinding
  • bigtable.authorizedViews.delete
  • bigtable.authorizedViews.deleteTagBinding
  • bigtable.authorizedViews.get
  • bigtable.authorizedViews.getIamPolicy
  • bigtable.authorizedViews.list
  • bigtable.authorizedViews.listEffectiveTags
  • bigtable.authorizedViews.listTagBindings
  • bigtable.authorizedViews.mutateRows
  • bigtable.authorizedViews.readRows
  • bigtable.authorizedViews.sampleRowKeys
  • bigtable.authorizedViews.setIamPolicy
  • bigtable.authorizedViews.update
  • bigtable.backups.create
  • bigtable.backups.delete
  • bigtable.backups.get
  • bigtable.backups.getIamPolicy
  • bigtable.backups.list
  • bigtable.backups.read
  • bigtable.backups.restore
  • bigtable.backups.setIamPolicy
  • bigtable.backups.update
  • bigtable.clusters.create
  • bigtable.clusters.delete
  • bigtable.clusters.get
  • bigtable.clusters.list
  • bigtable.clusters.update
  • bigtable.hotTablets.list
  • bigtable.instances.create
  • bigtable.instances.createTagBinding
  • bigtable.instances.delete
  • bigtable.instances.deleteTagBinding
  • bigtable.instances.executeQuery
  • bigtable.instances.get
  • bigtable.instances.getIamPolicy
  • bigtable.instances.list
  • bigtable.instances.listEffectiveTags
  • bigtable.instances.listTagBindings
  • bigtable.instances.ping
  • bigtable.instances.setIamPolicy
  • bigtable.instances.update
  • bigtable.keyvisualizer.get
  • bigtable.keyvisualizer.list
  • bigtable.locations.list
  • bigtable.tables.checkConsistency
  • bigtable.tables.create
  • bigtable.tables.delete
  • bigtable.tables.generateConsistencyToken
  • bigtable.tables.get
  • bigtable.tables.getIamPolicy
  • bigtable.tables.list
  • bigtable.tables.mutateRows
  • bigtable.tables.readRows
  • bigtable.tables.sampleRowKeys
  • bigtable.tables.setIamPolicy
  • bigtable.tables.undelete
  • bigtable.tables.update

monitoring.metricDescriptors.get

monitoring.metricDescriptors.list

monitoring.timeSeries.*

  • monitoring.timeSeries.create
  • monitoring.timeSeries.list

resourcemanager.projects.get

(roles/bigtable.reader)

Provides read-only access to the data stored within Bigtable tables. Intended for data scientists, dashboard generators, and other data-analysis scenarios.

Lowest-level resources where you can grant this role:

  • Table

bigtable.appProfiles.get

bigtable.appProfiles.list

bigtable.authorizedViews.get

bigtable.authorizedViews.list

bigtable.authorizedViews.readRows

bigtable.authorizedViews.sampleRowKeys

bigtable.backups.get

bigtable.backups.list

bigtable.clusters.get

bigtable.clusters.list

bigtable.hotTablets.list

bigtable.instances.executeQuery

bigtable.instances.get

bigtable.instances.list

bigtable.instances.ping

bigtable.keyvisualizer.*

  • bigtable.keyvisualizer.get
  • bigtable.keyvisualizer.list

bigtable.locations.list

bigtable.tables.checkConsistency

bigtable.tables.generateConsistencyToken

bigtable.tables.get

bigtable.tables.list

bigtable.tables.readRows

bigtable.tables.sampleRowKeys

monitoring.metricDescriptors.get

monitoring.metricDescriptors.list

monitoring.timeSeries.*

  • monitoring.timeSeries.create
  • monitoring.timeSeries.list

resourcemanager.projects.get

(roles/bigtable.user)

Provides read-write access to the data stored within Bigtable tables. Intended for application developers or service accounts.

Lowest-level resources where you can grant this role:

  • Table

bigtable.appProfiles.get

bigtable.appProfiles.list

bigtable.authorizedViews.get

bigtable.authorizedViews.list

bigtable.authorizedViews.mutateRows

bigtable.authorizedViews.readRows

bigtable.authorizedViews.sampleRowKeys

bigtable.backups.get

bigtable.backups.list

bigtable.clusters.get

bigtable.clusters.list

bigtable.hotTablets.list

bigtable.instances.executeQuery

bigtable.instances.get

bigtable.instances.list

bigtable.instances.ping

bigtable.keyvisualizer.*

  • bigtable.keyvisualizer.get
  • bigtable.keyvisualizer.list

bigtable.locations.list

bigtable.tables.checkConsistency

bigtable.tables.generateConsistencyToken

bigtable.tables.get

bigtable.tables.list

bigtable.tables.mutateRows

bigtable.tables.readRows

bigtable.tables.sampleRowKeys

monitoring.metricDescriptors.get

monitoring.metricDescriptors.list

monitoring.timeSeries.*

  • monitoring.timeSeries.create
  • monitoring.timeSeries.list

resourcemanager.projects.get

(roles/bigtable.viewer)

Provides no data access. Intended as a minimal set of permissions to access the Google Cloud console for Bigtable.

Lowest-level resources where you can grant this role:

  • Table

bigtable.appProfiles.get

bigtable.appProfiles.list

bigtable.authorizedViews.get

bigtable.authorizedViews.list

bigtable.backups.get

bigtable.backups.list

bigtable.clusters.get

bigtable.clusters.list

bigtable.hotTablets.list

bigtable.instances.get

bigtable.instances.list

bigtable.instances.listEffectiveTags

bigtable.instances.listTagBindings

bigtable.locations.list

bigtable.tables.checkConsistency

bigtable.tables.generateConsistencyToken

bigtable.tables.get

bigtable.tables.list

monitoring.metricDescriptors.get

monitoring.metricDescriptors.list

monitoring.timeSeries.list

resourcemanager.projects.get

Ruoli personalizzati

Se i ruoli predefiniti per Bigtable non soddisfano i tuoi requisiti aziendali, puoi definire i tuoi ruoli personalizzati con le autorizzazioni da te specificate.

Se il ruolo personalizzato deve supportare l'accesso alla console Google Cloud, devi identificare le attività che gli utenti eseguiranno, quindi assicurarti che il ruolo personalizzato disponga delle autorizzazioni richieste per ogni attività, come mostrato nella tabella seguente. Se un ruolo personalizzato non dispone di tutte le autorizzazioni richieste per un'attività e un utente tenta di eseguirla, la Console Google Cloud non funzionerà correttamente.

Attività della console Google Cloud Autorizzazioni obbligatorie
Accesso di base alla console Google Cloud
  • bigtable.appProfiles.get
  • bigtable.appProfiles.list
  • bigtable.clusters.get
  • bigtable.clusters.list
  • bigtable.instances.get
  • bigtable.instances.list
  • bigtable.locations.list
  • bigtable.tables.get
  • bigtable.tables.list
  • resourcemanager.projects.get
Creare un'istanza o un cluster

Autorizzazioni di accesso di base, oltre a:

  • bigtable.clusters.create
  • bigtable.instances.create
Modificare un'istanza o un cluster

Autorizzazioni di accesso di base, oltre a:

  • bigtable.clusters.update
  • bigtable.instances.update
Gestire la configurazione della replica

Autorizzazioni di accesso di base, oltre a:

  • bigtable.appProfiles.create
  • bigtable.appProfiles.delete
  • bigtable.appProfiles.update
Eliminare un'istanza o un cluster

Autorizzazioni di accesso di base, oltre a:

  • bigtable.clusters.delete
  • bigtable.instances.delete
Monitora un'istanza visualizzando i grafici

Autorizzazioni di accesso di base, oltre a:

  • monitoring.metricDescriptors.get
  • monitoring.metricDescriptors.list
  • monitoring.timeSeries.list
Creare e aggiornare una tabella

Autorizzazioni di accesso di base, oltre a:

  • bigtable.tables.create
  • bigtable.tables.update
Ripristina un backup

Autorizzazioni di accesso di base, oltre a:

  • bigtable.backups.list
  • bigtable.tables.create
  • bigtable.backups.restore

Gestione IAM

Questa sezione spiega come gestire i ruoli IAM e le autorizzazioni correlate a livello di progetto, istanza, tabella e backup.

Gestione IAM a livello di progetto

A livello di progetto, puoi concedere, modificare e revocare i ruoli IAM utilizzando la console Google Cloud, l'API IAM o Google Cloud CLI. Per istruzioni dettagliate, consulta Concedere, modificare e revocare l'accesso.

Dopo aver creato un progetto, puoi concedere agli utenti i ruoli IAM a livello di progetto in base ai livelli di accesso specifici.

Ruoli obbligatori

Prima di impostare i ruoli IAM a livello di istanza, a livello di tabella, a livello di backup o a livello di visualizzazione autorizzati per un utente, assicurati che l'utente disponga di almeno uno dei seguenti ruoli IAM a livello di progetto:

  • Visualizzatore Bigtable (consigliato)
  • Bigtable Reader
  • Bigtable User
  • Bigtable Administrator

Scegli un ruolo a livello di progetto che non abbia più autorizzazioni di quelle di cui l'utente ha effettivamente bisogno in tutte le istanze, le tabelle, i backup o le visualizzazioni autorizzate del progetto. Per questo motivo, dovresti concedere il ruolo Visualizzatore Bigtable quasi sempre.

Se l'utente non dispone di almeno uno di questi ruoli a livello di progetto, non avrà accesso a Bigtable tramite la console Google Cloud. La console Google Cloud richiede uno di questi ruoli a livello di progetto per poter recuperare informazioni su istanze, cluster, tabelle o backup per conto dell'utente.

Concedere ruoli IAM a livello di istanza

A livello di istanza, puoi concedere a un utente o a un account di servizio uno dei ruoli predefinite di Bigtable. Puoi anche concedere qualsiasi ruolo personalizzato che hai definito.

Per concedere un ruolo predefinito o personalizzato a un account utente o di servizio a livello di istanza:

Console

  1. Vai alla pagina delle istanze Bigtable nella console Google Cloud.

    Vai alla pagina delle istanze

  2. Seleziona le caselle accanto alle istanze di cui vuoi gestire i ruoli. Viene visualizzato un riquadro informativo.

  3. Nel riquadro delle informazioni, fai clic su Autorizzazioni.

  4. In Aggiungi entità, inizia a digitare l'indirizzo email dell'utente o dell'account di servizio che vuoi aggiungere, quindi fai clic sull'indirizzo email dell'utente o dell'account di servizio.

  5. Fai clic sull'elenco a discesa Seleziona un ruolo, quindi su Bigtable per selezionare un ruolo predefinito o su Personalizzato per selezionare un ruolo personalizzato.

  6. Fai clic sul nome di ogni ruolo che vuoi assegnare.

  7. Fai clic su Aggiungi. All'account utente o di servizio vengono concessi i ruoli specificati a livello di istanza.

gcloud

  1. Se non conosci l'ID istanza, utilizza il comando bigtable instances list per visualizzare un elenco delle istanze del progetto:

    gcloud bigtable instances list
    
  2. Utilizza il comando bigtable instances set-iam-policy:

    gcloud bigtable instances set-iam-policy \
    INSTANCE_ID \
    POLICY_FILE
    

    Fornisci quanto segue:

    • INSTANCE_ID: l'identificatore permanente dell'istanza.
    • POLICY_FILE: percorso di un file JSON o YAML locale contenente un criterio IAM valido.

Concedere ruoli IAM a livello di tabella

A livello di tabella, puoi concedere a un utente o a un account di servizio uno dei ruoli predefiniti di Bigtable. Puoi anche concedere qualsiasi ruolo personalizzato che hai definito.

Per concedere un ruolo predefinito o personalizzato a un account utente o di servizio a livello di tabella:

Console

  1. Vai alla pagina delle istanze Bigtable nella console Google Cloud.

    Vai alla pagina delle istanze

  2. Fai clic sul nome dell'istanza contenente la tabella di cui stai impostando l'IAM.

  3. Seleziona Tables (Tabelle) nel riquadro di navigazione a sinistra.

  4. Seleziona le caselle accanto alle tabelle di cui vuoi gestire i ruoli. Viene visualizzato un riquadro informativo.

  5. Nel riquadro delle informazioni, fai clic su Autorizzazioni.

  6. In Aggiungi entità, inizia a digitare l'indirizzo email dell'utente o dell'account di servizio che vuoi aggiungere, quindi fai clic sull'indirizzo email dell'utente o dell'account di servizio.

  7. Fai clic sull'elenco a discesa Seleziona un ruolo, quindi su Bigtable per selezionare un ruolo predefinito o su Personalizzato per selezionare un ruolo personalizzato.

  8. Fai clic sul nome di ogni ruolo che vuoi assegnare.

  9. Fai clic su Aggiungi. All'account utente o di servizio vengono concessi i ruoli specificati a livello di tabella.

gcloud

  1. Se non conosci l'ID istanza, utilizza il comando bigtable instances list per visualizzare un elenco delle istanze del progetto:

    gcloud bigtable instances list
    
  2. Se non conosci gli ID tabella dell'istanza, utilizza il comando bigtable instances tables list per visualizzare un elenco delle tabelle nell'istanza.

    gcloud bigtable instances tables list --instances=INSTANCE_ID
    

    Fornisci quanto segue:

    • INSTANCE_ID: l'identificatore permanente dell'istanza.
  3. Utilizza il comando bigtable instances tables set-iam-policy:

    gcloud bigtable instances tables set-iam-policy \TABLE_ID \
        --instance=INSTANCE_ID \
        POLICY_FILE
    

    Fornisci quanto segue:

    • TABLE_ID: l'identificatore permanente della tabella.
    • INSTANCE_ID: l'identificatore permanente dell'istanza.
    • POLICY_FILE: percorso di un file JSON o YAML locale contenente un criterio IAM valido.

Concedere ruoli IAM a livello di backup

A livello di backup, puoi concedere a un utente o a un account di servizio uno dei ruoli predefinite di Bigtable. Puoi anche concedere qualsiasi ruolo personalizzato che hai definito.

Per concedere un ruolo predefinito o personalizzato a un account utente o di servizio a livello di backup:

gcloud

  1. Se non conosci l'ID istanza, utilizza il comando bigtable instances list per visualizzare un elenco delle istanze del progetto:

    gcloud bigtable instances list
    
  2. Se non conosci gli ID backup in un'istanza, utilizza il comando bigtable instances backups list per visualizzare un elenco dei backup nell'istanza.

    gcloud bigtable backups list --instances=INSTANCE_ID
    

    Fornisci quanto segue:

    • INSTANCE_ID: l'identificatore permanente dell'istanza.
  3. Utilizza il comando gcloud bigtable backups set-iam-policy:

    gcloud bigtable backups set-iam-policy BACKUP_ID \
        --instance=INSTANCE_ID \
        --cluster=CLUSTER_ID \
        POLICY_FILE
    

    Fornisci quanto segue:

    • BACKUP_ID: l'identificatore permanente del backup.
    • INSTANCE_ID: l'identificatore permanente dell'istanza.
    • TABLE_ID: l'identificatore permanente della tabella
    • POLICY_FILE: percorso di un file JSON o YAML locale contenente un criterio IAM valido.

Concedere ruoli IAM a livello di vista autorizzata

A livello di vista autorizzata, puoi concedere a un utente o a un account di servizio uno dei ruoli predefiniti di Bigtable. Puoi anche concedere qualsiasi ruolo personalizzato che hai definito.

Per concedere un ruolo predefinito o personalizzato a un utente o a un account di servizio a livello di vista autorizzata, procedi nel seguente modo:

Console

  1. Apri l'elenco delle istanze Bigtable nella console Google Cloud.

    Apri l'elenco delle istanze

  2. Fai clic sull'istanza contenente la vista autorizzata.

  3. Nel riquadro di navigazione, fai clic su Bigtable Studio.

  4. Nell'esploratore, espandi la tabella e Visualizzazioni autorizzate.

  5. Accanto alla visualizzazione autorizzata che vuoi modificare, fai clic sul menu di azioni more_vert e poi su Concede accesso.

  6. Aggiungi almeno un'entità e seleziona il ruolo a cui deve essere assegnata l'entità o il gruppo di entità.

  7. (Facoltativo) Per concedere l'accesso per altri ruoli, fai clic su Aggiungi un altro ruolo e inserisci l'entità e il ruolo per ogni ruolo aggiuntivo.

  8. Fai clic su Salva.

gcloud

  1. Se non conosci l'ID istanza, utilizza il comando bigtable instances list per visualizzare un elenco delle istanze del progetto:

    gcloud bigtable instances list
    
  2. Se non conosci gli ID tabella dell'istanza, utilizza il comando bigtable instances tables list per visualizzare un elenco delle tabelle nell'istanza.

    gcloud bigtable instances tables list --instances=INSTANCE_ID
    
  3. Se non conosci l'ID vista, utilizza il comando bigtable authorized-views list per visualizzare un elenco di tutte le viste autorizzate della tabella.

    gcloud bigtable instances tables authorized-views list \
        --instance=INSTANCE_ID \
        --table=TABLE_ID
    
  4. Utilizza il comando bigtable authorized-views set-iam-policy:

    gcloud bigtable authorized-views set-iam-policy TABLE_ID \
        AUTHORIZED_VIEW_ID --instance=INSTANCE_ID POLICY_FILE
    

    Fornisci quanto segue:

    • INSTANCE_ID: l'identificatore permanente dell'istanza.
    • TABLE_ID: l'identificatore permanente della tabella
    • AUTHORIZED_VIEW_ID: l'identificatore permanente della visualizzazione
    • POLICY_FILE: percorso di un file JSON o YAML locale contenente un criterio IAM valido.

Condizioni IAM

Le condizioni IAM ti consentono di definire e applicare forzatamente il controllo dell'accesso condizionale basato su attributi per alcune risorse Google Cloud, tra cui le risorse Bigtable.

In Bigtable, puoi applicare l'accesso condizionale in base ai seguenti attributi:

  • Attributi data/ora: vengono utilizzati per impostare l'accesso temporaneo (in scadenza), pianificato o con durata limitata alle risorse Bigtable. Ad esempio, puoi consentire a un utente di accedere a una tabella fino a una data specificata.
  • Attributi della risorsa: da utilizzare per configurare l'accesso condizionale in base al nome, al tipo o agli attributi del servizio della risorsa. In Bigtable, puoi utilizzare gli attributi di istanze, cluster, tabelle, backup e viste autorizzate per configurare l'accesso condizionale. Ad esempio, puoi consentire a un utente di gestire le tabelle solo se iniziano con un prefisso specifico oppure puoi consentire a un utente di accedere solo a una tabella specifica.

Per ulteriori informazioni sulle condizioni IAM, consulta la panoramica delle condizioni.

Passaggi successivi

Scopri di più su IAM.