BigQuery 安全性和存取控管機制簡介
您可以使用 Identity and Access Management (IAM),精細設定特定 BigQuery 資源的存取權,並防止他人存取其他資源。IAM 可協助您套用最小權限安全原則,確保任何 IAM 主體都不會擁有超出所需的權限。
當 IAM 主體 (例如使用者、群組或服務帳戶) 呼叫 Google Cloud API 時,該主體必須具備使用資源所需的最低權限。您可以使用預先定義和自訂 IAM 角色,授予主體必要的 BigQuery 資源存取權。如要進一步瞭解 Google Cloud如何管理存取權,請參閱「IAM 總覽」。
IAM 角色類型
角色是一組權限,可授予 IAM 主體。您可以在 IAM 中使用下列類型的角色,授予 BigQuery 資源的存取權:
- 預先定義的角色由 Google Cloud 管理,支援常見的用途和存取控管模式。
- 自訂角色:根據使用者指定的權限清單提供存取權。如要瞭解如何建立自訂角色,請參閱 IAM 說明文件中的「建立及管理自訂角色」。
如要判斷預先定義的 IAM 角色是否包含一或多項權限,請使用下列其中一種方法:
- BigQuery IAM 角色和權限參考資料
- IAM 角色和權限索引
gcloud iam roles describe指令- IAM API 中的
roles.get()方法
BigQuery 的 IAM 角色
權限不會直接指派給使用者、群組或服務帳戶。而是向使用者、群組或服務帳戶授予一或多個預先定義或自訂角色,讓他們有權對資源執行動作。您可以在特定資源上授予這些角色,但這些角色也適用於資源階層中該資源的所有子系。
如果將多個角色類型指派給使用者,授予的權限會是各個角色權限的聯集。
您可以授予下列 BigQuery 資源的存取權:
- 資料集和資料集內的下列資源:
- 資料表和檢視表
- 處理常式
- 連線
- 已儲存的查詢
- 資料面板
- 資料準備
- 管道
- 存放區
授予 Resource Manager 資源的存取權
您可以透過 Resource Manager 設定 BigQuery 資源的存取權,方法是將 BigQuery 角色授予主體,然後在組織、資料夾或專案上授予該角色。
將角色授予 Resource Manager 資源 (例如組織和專案) 時,您會授予組織或專案中「所有」BigQuery 資源的權限。
如要進一步瞭解如何使用 IAM 管理 Resource Manager 資源的存取權,請參閱 IAM 說明文件中的「管理專案、資料夾和組織的存取權」。
授予資料集存取權
您可以在資料集層級指派角色,提供特定資料集的存取權,而不必提供專案其他資源的完整存取權。在 IAM 資源階層中,BigQuery 資料集是專案的子資源。如要進一步瞭解如何在資料集層級指派角色,請參閱「使用 IAM 控管資源存取權」。
授予資料集內個別資源的存取權
您可以授予角色資料集內特定類型資源的存取權,而不必提供資料集資源的完整存取權。
角色可套用至資料集內的下列資源:
- 資料表和檢視表
- 處理常式
如要進一步瞭解如何在資料表、檢視表或常式層級指派角色,請參閱「使用 IAM 控管資源存取權」。
後續步驟
- 如要進一步瞭解如何將角色指派給 BigQuery 資源,請參閱「使用 IAM 控管資源存取權」。
- 如需 BigQuery 預先定義 IAM 角色和權限的清單,請參閱「BigQuery IAM 角色和權限」。