Questa pagina spiega come accedere a un database Spanner se sei un utente con controllo dell'accesso granulare.
Per informazioni sul controllo dell'accesso granulare, consulta Informazioni sul controllo dell'accesso granulare.
In qualità di utente con controllo dell'accesso dell'accesso granulare, devi selezionare un ruolo database da utilizzare per eseguire query e istruzioni SQL ed eseguire operazioni sulle righe di un database. La selezione del ruolo persiste per tutta la sessione finché non modifichi il ruolo.
Quando invii una query, un'operazione DML o una riga, Spanner controlla l'autorizzazione utilizzando le seguenti regole:
- Google Cloud console
Spanner controlla innanzitutto se disponi delle autorizzazioni IAM a livello di database. In questo caso, la consoleGoogle Cloud non mostra un selettore di ruoli del database e la sessione procede con le autorizzazioni a livello di database.
Se disponi solo di privilegi di controllo dell'accesso granulare 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 proceda con i privilegi richiesti.
- Google Cloud SDK
Se specifichi un ruolo database quando invii una query, un'istruzione DML o un'operazione su riga, Spanner controlla i privilegi di controllo dell'accesso dell'accesso granulare. Se il controllo non va a buon fine, Spanner non controlla le autorizzazioni IAM a livello di database e l'operazione non va a buon fine.
Se non specifichi un ruolo database, Spanner controlla le autorizzazioni IAM a livello di database e, se i controlli vanno a buon fine, la sessione procede con le autorizzazioni a livello di database.
Utilizza questi metodi per specificare un ruolo database quando accedi a un database Spanner:
Console
Seleziona un database e, nella pagina Panoramica del database, fai clic sull'icona Cambia ruolo del database (a forma di matita) accanto al campo Ruolo corrente.
Per impostazione predefinita, quando un utente con controllo dell'accesso dell'accesso granulare accede, questo campo ha il valore
public
. Per informazioni sul ruolo di sistemapublic
, consulta Ruoli di sistema per il controllo dell'accesso granulare.Nella finestra di dialogo Cambia ruolo di database, seleziona un altro ruolo dall'elenco di quelli disponibili.
Fai clic su Aggiorna.
Il campo Ruolo corrente 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#
Vai
Java
Node.js
PHP
Python
Ruby