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
- Scopri di più su IAM.
- Scopri di più sull'autenticazione e sull'autorizzazione in Spanner Omni.
- Scopri di più sulla configurazione dei log di controllo utilizzando il criterio IAM.