Panoramica di IAM

Identity and Access Management (IAM) ti consente di controllare l'accesso degli utenti alle risorse Spanner Omni. Ad esempio, un utente può avere il controllo completo di un database specifico, ma non può creare o modificare altri database nella tua implementazione. L'utilizzo di IAM ti consente di concedere un'autorizzazione a un utente senza dover modificare singolarmente ogni autorizzazione del database Spanner Omni.

Questo documento si concentra sulle autorizzazioni IAM pertinenti a Spanner Omni e sui ruoli IAM che concedono queste autorizzazioni. Per una descrizione dettagliata di IAM e delle sue funzionalità, consulta la Guida per gli sviluppatori di Identity and Access Management.

Autorizzazioni

Le autorizzazioni consentono agli utenti di eseguire azioni specifiche sulle risorse Spanner Omni. Ad esempio, l'autorizzazione spanner.databases.read consente a un utente di leggere da un database utilizzando l'API di lettura di Spanner Omni, mentre spanner.databases.export consente a un utente di esportare un database Spanner Omni. Non concedi direttamente le autorizzazioni agli utenti, ma assegni loro ruoli predefiniti, che includono una o più autorizzazioni.

Le tabelle seguenti elencano le autorizzazioni IAM associate a Spanner Omni. Alcune autorizzazioni sono condivise con Spanner e altre vengono utilizzate solo da Spanner Omni.

Database

Le seguenti autorizzazioni si applicano ai database Spanner Omni.

Nome autorizzazione database Descrizione Spanner e Spanner Omni Solo Spanner Omni
spanner.databases.create Crea un database. ✔
spanner.databases.createBackup Crea un backup dal database. Richiede anche spanner.backups.create per creare la risorsa di backup. ✔
spanner.databases.get Ottieni i metadati di un database. ✔
spanner.databases.getIamPolicy Ottieni la policy IAM di un database. ✔
spanner.databases.list Elenca i database. ✔
spanner.databases.read Leggi da un database utilizzando l'API Read. ✔
spanner.databases.setIamPolicy Imposta la policy IAM di un database. ✔
spanner.databases.update Aggiorna i metadati di un database. ✔
spanner.databases.updateDdl Aggiorna lo schema di un database. ✔
spanner.databases.write Scrivere in un database. ✔
spanner.databases.compact Comprime le tabelle in un database ✔
spanner.databases.export Esporta un database Spanner Omni ✔
spanner.databases.import Importa un database Spanner Omni ✔
spanner.databases.addSplitPoints Aggiunge punti di suddivisione a un database. ✔

Operazioni del database

Le seguenti autorizzazioni si applicano alle operazioni del database Spanner Omni.

Nome autorizzazione operazione database Descrizione Spanner e Spanner Omni Solo Spanner Omni
spanner.databaseOperations.cancel Annulla un'operazione del database. ✔
spanner.databaseOperations.delete Elimina un'operazione di database. ✔
spanner.databaseOperations.get Ottieni un'operazione di database specifica. ✔
spanner.databaseOperations.list Elenca le operazioni di database e di ripristino del database. ✔

Backup

Le seguenti autorizzazioni si applicano ai backup Spanner Omni.

Nome autorizzazione di backup Descrizione Spanner e Spanner Omni Solo Spanner Omni
spanner.backups.copy Copia un backup. ✔
spanner.backups.create Creazione backup Richiede anche spanner.databases.createBackup sul database di origine. ✔
spanner.backups.createDatabaseFromBackup Crea un database da un backup. ✔
spanner.backups.delete Eliminare un backup. ✔
spanner.backups.get Ottieni un backup. ✔
spanner.backups.getIamPolicy Ottieni la policy IAM di un backup. ✔
spanner.backups.list Elenca i backup. ✔
spanner.backups.restoreDatabase Ripristina il database da un backup. Richiede inoltre a spanner.databases.create di creare il database ripristinato. ✔
spanner.backups.setIamPolicy Imposta la policy IAM di un backup. ✔
spanner.backups.update Aggiorna un backup. ✔
spanner.backups.import Importa un backup da un archivio esterno ✔

Operazioni di backup

Le seguenti autorizzazioni si applicano alle operazioni di backup di Spanner Omni.

Nome autorizzazione operazione di backup Descrizione Spanner e Spanner Omni Solo Spanner Omni
spanner.backupOperations.cancel Annulla un'operazione di backup. ✔
spanner.backupOperations.get Ottieni un'operazione di backup specifica. ✔
spanner.backupOperations.list Elenca le operazioni di backup. ✔

Pianificazioni di backup

Le seguenti autorizzazioni si applicano alle pianificazioni di backup di Spanner Omni.

Nome autorizzazione pianificazione di backup Descrizione Spanner e Spanner Omni Solo Spanner Omni
spanner.backupSchedules.create Crea una pianificazione dei backup. Richiede anche spanner.databases.createBackup sul database di origine. ✔
spanner.backupSchedules.delete Elimina una pianificazione del backup. ✔
spanner.backupSchedules.get Ottieni una pianificazione dei backup. ✔
spanner.backupSchedules.list Elenca le pianificazioni di backup. ✔
spanner.backupSchedules.update Aggiorna una pianificazione del backup. ✔
spanner.backupSchedules.getIamPolicy Ottieni la policy IAM di una pianificazione dei backup. ✔
spanner.backupSchedules.setIamPolicy Imposta la policy IAM di una pianificazione dei backup. ✔

Descrittori di backup

Le seguenti autorizzazioni si applicano ai descrittori di backup Spanner Omni.

Nome autorizzazione descrittore di backup Descrizione Spanner e Spanner Omni Solo Spanner Omni
spanner.backupDescriptors.import Importa un backup da un descrittore di backup ✔
spanner.backupDescriptors.list Elenca i descrittori di backup. ✔

Sessioni

Le seguenti autorizzazioni si applicano alle sessioni Spanner Omni.

Nome autorizzazione sessione Descrizione Spanner e Spanner Omni Solo Spanner Omni
spanner.sessions.create Crea una sessione. ✔
spanner.sessions.delete Elimina una sessione. ✔
spanner.sessions.get Ottieni una sessione. ✔
spanner.sessions.list Elenca le sessioni. ✔

Località e zone

Le seguenti autorizzazioni si applicano alle località e alle zone Spanner Omni.

Nome autorizzazione Descrizione Spanner e Spanner Omni Solo Spanner Omni
spanner.locations.create Crea una posizione Spanner Omni ✔
spanner.locations.delete Eliminare una posizione Spanner Omni ✔
spanner.locations.get Ottenere una posizione Spanner Omni ✔
spanner.locations.list Elenca le posizioni di Spanner Omni ✔
spanner.locationDistances.create Crea una distanza dalla posizione Spanner Omni ✔
spanner.locationDistances.delete Elimina una distanza di Spanner Omni ✔
spanner.locationDistances.get Ottenere la distanza di una località Spanner Omni ✔
spanner.locationDistances.list Elenca le distanze delle posizioni di Spanner Omni ✔
spanner.locationDistances.update Aggiorna la distanza di una località Spanner Omni ✔
spanner.zones.create Crea una zona Spanner Omni ✔
spanner.zones.delete Elimina una zona Spanner Omni ✔
spanner.zones.get Ottenere una zona Spanner Omni ✔
spanner.zones.list Elenca le zone Spanner Omni ✔

Server

Le seguenti autorizzazioni si applicano ai server Spanner Omni.

Nome autorizzazione server Descrizione Spanner e Spanner Omni Solo Spanner Omni
spanner.servers.create Crea un server Spanner Omni ✔
spanner.servers.delete Elimina un server Spanner Omni ✔
spanner.servers.get Ottiene un server Spanner Omni ✔
spanner.servers.list Elenca i server Spanner Omni ✔

Utenti e ruoli

Le seguenti autorizzazioni si applicano agli utenti e ai ruoli Spanner Omni.

Nome autorizzazione Descrizione Spanner e Spanner Omni Solo Spanner Omni
spanner.users.create Crea un utente Spanner Omni ✔
spanner.users.delete Elimina un utente Spanner Omni ✔
spanner.users.get Ottiene un utente Spanner Omni ✔
spanner.users.list Elenca gli utenti di Spanner Omni ✔
spanner.users.update Aggiorna un utente Spanner Omni ✔
spanner.roles.get Recupera un ruolo Spanner Omni ✔
spanner.roles.list Elenca i ruoli Spanner Omni ✔

Unità di archiviazione esterna

Le seguenti autorizzazioni si applicano all'archiviazione esterna di Spanner Omni.

Nome autorizzazione di accesso all'unità di archiviazione esterna Descrizione Spanner e Spanner Omni Solo Spanner Omni
spanner.externalStorages.create Crea spazio di archiviazione esterno ✔
spanner.externalStorages.delete Elimina un archivio esterno ✔
spanner.externalStorages.get Ottiene l'unità di archiviazione esterna ✔
spanner.externalStorages.getIamPolicy Recupera la policy IAM di un archivio esterno ✔
spanner.externalStorages.list Elenca le unità di archiviazione esterne ✔
spanner.externalStorages.setIamPolicy Imposta la policy IAM di un archivio esterno ✔

File system e descrittori

Le seguenti autorizzazioni si applicano al file system Spanner Omni.

Nome autorizzazione Descrizione Spanner e Spanner Omni Solo Spanner Omni
spanner.filesystem.cat Stampa i file nel file system Spanner Omni ✔
spanner.filesystem.ls Elenca i file nel file system Spanner Omni ✔
spanner.descriptors.print Stampa i descrittori nel file system Spanner Omni ✔

Altre autorizzazioni di amministratore

Le seguenti autorizzazioni si applicano ad altre attività di amministratore di Spanner Omni.

Nome autorizzazione Descrizione Spanner e Spanner Omni Solo Spanner Omni
spanner.chubby.list Elenchi Chubby ✔
spanner.chubby.print Stampa i contenuti della cella Chubby ✔
spanner.deployment.get Ottieni il deployment di Spanner Omni ✔
spanner.diagnostics.create Raccoglie artefatti dai server Spanner Omni per il debug ✔
spanner.internal-tables.sql Esegue query SQL sulle tabelle interne ✔
spanner.logs.copy Copia i log da un server Spanner Omni ✔
spanner.tablet.move Sposta un tablet da un server Spanner Omni a un altro ✔
spanner.workflows.delete Elimina un workflow in un database ✔
spanner.groups.compact Comprime i tablet in un gruppo ✔
spanner.directories.compact Tablet compatti in una directory ✔

Ruoli predefiniti

Un ruolo predefinito è un insieme di una o più autorizzazioni. Spanner Omni supporta i seguenti ruoli predefiniti:

Ruolo Descrizione
roles/spanner.admin Ha accesso completo a tutte le risorse Spanner Omni. Include tutte le autorizzazioni.
roles/spanner.backupAdmin Ha accesso completo ai backup e alle operazioni di backup di Spanner Omni.
roles/spanner.backupWriter Può creare backup, ma non può aggiornarli o eliminarli.
roles/spanner.databaseAdmin Ha accesso completo a tutti i database Spanner Omni in un progetto.
roles/spanner.databaseReader Può leggere dal database Spanner Omni e visualizzare lo schema.
roles/spanner.databaseUser Può leggere e scrivere nel database Spanner Omni.
roles/spanner.editor Ruolo di editor per Spanner Omni.
roles/spanner.restoreAdmin Può ripristinare un database da un backup.
roles/spanner.viewer Può visualizzare tutte le risorse Spanner Omni, ma non può modificarle. Include le autorizzazioni di sola lettura.

Spanner Omni presenta alcune limitazioni più importanti:

  • Nessun ruolo personalizzato.
  • Nessun controllo dell'accesso granulare.
  • Nessuna condizione IAM.

Passaggi successivi