本頁面定義了精細存取權控管機制為每個資料庫提供的三種預先定義系統角色,包括這些角色的特徵、限制和預期用途。每個系統角色都有一組不同的權限,且無法撤銷。這項資訊適用於 GoogleSQL 方言資料庫和 PostgreSQL 方言資料庫。
public 系統角色
根據預設,所有精細存取控管使用者都會在
public中擁有 IAM 成員資格。所有資料庫角色都會繼承這個角色的權限。
public一開始沒有任何權限,但您可以授予權限。如果您將權限授予public,所有資料庫角色 (包括之後建立的資料庫角色) 都能使用該權限。
spanner_info_reader 系統角色
這個角色在 GoogleSQL 方言資料庫的
INFORMATION_SCHEMA檢視畫面,以及 PostgreSQL 方言資料庫的information_schema檢視畫面中,都具有SELECT權限。你無法授予
spanner_info_reader其他權限。將這個角色的成員資格授予任何需要對
INFORMATION_SCHEMA檢視區塊 (GoogleSQL 方言資料庫) 或information_schema檢視區塊 (PostgreSQL 方言資料庫) 擁有未經過濾讀取存取權的資料庫角色。
spanner_sys_reader 系統角色
這個角色在
SPANNER_SYS資料表上具有SELECT權限。你無法授予
spanner_sys_reader其他權限。將這個角色的成員資格授予任何必須具備
SPANNER_SYS結構定義讀取權的資料庫角色。
系統角色限制
您無法使用
DROP ROLE陳述式刪除系統角色。系統角色無法成為其他資料庫角色的成員。也就是說,下列 GoogleSQL 陳述式無效:
GRANT ROLE pii_access TO ROLE spanner_info_reader;您無法將資料庫角色授予
public角色。舉例來說,下列 GoogleSQL 陳述式也無效:GRANT ROLE public TO ROLE pii_access;不過,你可以授予
spanner_info_reader和spanner_sys_reader角色會員資格。舉例來說,以下陳述式皆有效。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;