Ruoli del sistema di controllo dell'accesso granulare

Questa pagina definisce le caratteristiche, i vincoli e l'utilizzo previsto dei tre ruoli di sistema predefiniti forniti dal controllo dell'accesso granulare per ciascun database. Ogni ruolo di sistema ha un insieme diverso di privilegi che non possono essere revocati. Queste informazioni si applicano sia ai database con dialetto GoogleSQL sia a quelli con dialetto PostgreSQL.

public ruolo di sistema

  • Per impostazione predefinita, tutti gli utenti del controllo degli accessi granulare sono membri di IAM in public.

  • Tutti i ruoli del database ereditano i privilegi da questo ruolo.

  • Inizialmente, public non dispone di privilegi, ma puoi concedergliene. Se concedi un privilegio a public, questo sarà disponibile per tutti i ruoli di database, inclusi quelli creati in un secondo momento.

spanner_info_reader ruolo di sistema

  • Questo ruolo ha il privilegio SELECT sulle visualizzazioni INFORMATION_SCHEMA per i database con dialetto Google SQL e sulle visualizzazioni information_schema per i database con dialetto PostgreSQL.

  • Non puoi concedere altri privilegi a spanner_info_reader.

  • Concedi l'appartenenza a questo ruolo a qualsiasi ruolo del database che deve avere accesso di lettura non filtrato alle visualizzazioni INFORMATION_SCHEMA (database in dialetto GoogleSQL) o alle visualizzazioni information_schema (database in dialetto PostgreSQL).

spanner_sys_reader ruolo di sistema

  • Questo ruolo ha il privilegio SELECT sulle tabelle SPANNER_SYS.

  • Non puoi concedere altri privilegi a spanner_sys_reader.

  • Concedi l'appartenenza a questo ruolo a qualsiasi ruolo del database che deve disporre dell'accesso in lettura allo schema SPANNER_SYS.

Limitazioni relative ai ruoli di sistema

  • Non puoi eliminare un ruolo di sistema utilizzando un'istruzione DROP ROLE.

  • I ruoli di sistema non possono essere membri di altri ruoli di database. In altre parole, l'istruzione GoogleSQL seguente non è valida:

    GRANT ROLE pii_access TO ROLE spanner_info_reader;
    
  • Non puoi concedere l'appartenenza al ruolo public ai tuoi ruoli di database. Ad esempio, anche l'istruzione GoogleSQL seguente non è valida:

    GRANT ROLE public TO ROLE pii_access;
    

    Tuttavia, puoi concedere l'appartenenza ai ruoli spanner_info_reader e spanner_sys_reader. Ad esempio, le seguenti sono affermazioni valide.

    GoogleSQL

      GRANT ROLE spanner_info_reader TO ROLE pii_access;
      GRANT ROLE spanner_sys_reader TO ROLE pii_access;
      ```
    

    PostgreSQL

    GRANT spanner_info_reader TO pii_access;
    GRANT spanner_sys_reader TO pii_access;
    

Passaggi successivi