Questa pagina spiega come accedere a un database Spanner quando sei un utente con controllo dell'accesso granulare.
Per saperne di più sul controllo dell'accesso dell'accesso granulare, vedi Informazioni sul controllo dell'accesso granulare.
In qualità di utente con un controllo dell'accesso granulare, devi selezionare un ruolo di database da utilizzare per eseguire query e istruzioni SQL ed eseguire operazioni sulle righe su un database. La selezione del ruolo persiste per tutta la sessione finché non cambi il ruolo.
Quando invii una query, un DML o un'operazione su riga, Spanner controlla l'autorizzazione utilizzando le seguenti regole:
- Console Google Cloud
Spanner controlla innanzitutto se disponi delle autorizzazioni IAM a livello di database. In questo caso, la console Google Cloud non mostra un selettore di ruolo del database e la sessione procede con le autorizzazioni a livello di database.
Se disponi solo di privilegi di controllo dell'accesso granulari e non di autorizzazioni IAM a livello di database, devi aver ottenuto l'accesso al ruolo di sistema
spanner_sys_reader
o a uno dei suoi ruoli membro. Seleziona un ruolo nella pagina Panoramica del database in modo che la sessione della console Google Cloud prosegua con i privilegi richiesti.
- Google Cloud SDK
Se specifichi un ruolo del database quando invii una query, un DML o un'operazione su riga, Spanner controlla i privilegi di controllo dell'accesso dell'accesso granulari. Se il controllo ha esito negativo, Spanner non controlla le autorizzazioni IAM a livello di database e l'operazione non va a buon fine.
Se non specifichi un ruolo del database, Spanner controlla le autorizzazioni IAM a livello di database e, se i controlli hanno esito positivo, la sessione procede con le autorizzazioni a livello di database.
Utilizza questi metodi per specificare un ruolo del database quando accedi a un database Spanner:
Console
Seleziona un database, quindi, nella pagina Panoramica del database, fai clic sull'icona a forma di matita Modifica ruolo del database accanto al campo Ruolo attuale.
Per impostazione predefinita, quando un utente con controllo dell'accesso granulare esegue l'accesso, questo campo ha il valore
public
. Per informazioni sul ruolo di sistemapublic
, consulta Ruoli di sistema di controllo dell'accesso granulare degli accessi.Nella finestra di dialogo Modifica ruolo database, seleziona un altro ruolo dall'elenco di ruoli disponibili.
Fai clic su Update (Aggiorna).
Il campo Ruolo attuale mostra il nuovo ruolo.
gcloud
Aggiungi l'opzione
--database-role
al comandogcloud spanner databases execute-sql
come segue:gcloud spanner databases execute-sql DATABASE_NAME \ --instance=INSTANCE_NAME \ --sql="SELECT * from TABLE_NAME;" \ --database-role=ROLE_NAME
Librerie client
C++
C#
Go
Java
Node.js
PHP
Python
Ruby