本頁面說明啟用角色型存取控制 (RBAC) 後,Cloud Data Fusion 執行個體使用的角色和權限。
如要在命名空間層級以下強制執行精細的存取權,請搭配 RBAC 使用這些資料平面資源和權限。
資源階層
Cloud Data Fusion 資源的資源階層如下:

這張圖顯示資源階層,依遞減順序排列 (從最廣到最窄): Google Cloud 專案、位置、Cloud Data Fusion 執行個體和命名空間。以下命名空間 (順序不限) 是連線、安全金鑰、管道、構件 (例如外掛程式、驅動程式和應用程式) 和運算設定檔。
下列資源是 Cloud Data Fusion 資料層資源,您可以使用 REST API 或在 Cloud Data Fusion Studio 中控管這些資源:命名空間、連線、安全金鑰、管道、構件和運算設定檔。
RBAC 的預先定義角色
Cloud Data Fusion RBAC 包含多個可用的預先定義角色:
- 執行個體存取角色 (
datafusion.accessor) - 授予主體 Cloud Data Fusion 執行個體的存取權,但無權存取執行個體內的任何資源。搭配使用這個角色和其他命名空間專屬角色,即可提供命名空間的精細存取權。
- 檢視者角色 (
datafusion.viewer) - 授予主體命名空間的存取權,可查看管道,但無法撰寫或執行管道。
- 作業員角色 (
datafusion.operator) - 授予主體命名空間的存取權,以便存取及執行管道、變更運算設定檔、建立運算設定檔,或上傳構件。可執行與開發人員相同的動作,但無法預覽管道。
- 開發人員角色 (
datafusion.developer) - 授予主體命名空間的存取權,讓主體在命名空間內建立及修改管道等受限資源。
- 編輯者角色 (
datafusion.editor) - 授予主體 Cloud Data Fusion 執行個體中命名空間內所有 Cloud Data Fusion 資源的完整存取權。除了執行個體存取者角色,您也必須將這個角色授予主體。有了這個角色,主體就能在命名空間中建立、刪除及修改資源。
- 執行個體管理員角色 (
datafusion.admin) - 授予 Cloud Data Fusion 執行個體內所有資源的存取權。透過 IAM 指派。未透過 RBAC 在命名空間層級指派。
| 作業 | datafusion.accessor | datafusion.viewer | datafusion.operator | datafusion.developer | datafusion.editor | datafusion.admin |
|---|---|---|---|---|---|---|
| 執行個體 | ||||||
| 存取執行個體 | ||||||
| 命名空間 | ||||||
| 建立命名空間 | * | |||||
| 存取已明確授予存取權的命名空間 | ||||||
| 存取命名空間,但未明確授予存取權 | * | |||||
| 編輯命名空間 | ||||||
| 刪除命名空間 | ||||||
| 命名空間服務帳戶 | ||||||
| 新增服務帳戶 | ||||||
| 編輯服務帳戶 | ||||||
| 移除服務帳戶 | ||||||
| 使用服務帳戶 | ||||||
| RBAC | ||||||
| 授予或撤銷命名空間中其他主體的權限 | * | |||||
| 時間表 | ||||||
| 建立排程 | ||||||
| 查看時間表 | ||||||
| 變更時間表 | ||||||
| 運算設定檔 | ||||||
| 建立運算設定檔 | ||||||
| 查看運算設定檔 | ||||||
| 編輯運算設定檔 | ||||||
| 刪除運算設定檔 | ||||||
| 連線 | ||||||
| 建立連結 | ||||||
| 查看連線 | ||||||
| 編輯連結 | ||||||
| 刪除連線 | ||||||
| 使用連結 | ||||||
| Wrangler 工作區 | ||||||
| 建立工作區 | ||||||
| 查看工作區 | ||||||
| 編輯工作區 | ||||||
| 刪除工作區 | ||||||
| 使用工作區 | ||||||
| 管道 | ||||||
| 建立管道 | ||||||
| 查看管道 | ||||||
| 編輯管道 | ||||||
| 刪除管道 | ||||||
| 預覽管道 | ||||||
| 部署管道 | ||||||
| 執行管道 | ||||||
| 安全金鑰 | ||||||
| 建立安全金鑰 | ||||||
| 查看安全金鑰 | ||||||
| 刪除安全金鑰 | ||||||
| 標記 | ||||||
| 建立標籤 | ||||||
| 查看代碼 | ||||||
| 刪除標記 | ||||||
| Cloud Data Fusion Hub | ||||||
| 部署外掛程式 | ||||||
| 來源控管管理 | ||||||
| 設定來源控制存放區 | ||||||
| 從命名空間同步處理管道 | ||||||
| 血統 | ||||||
| 查看歷程 | ||||||
| 記錄 | ||||||
| 查看記錄 | ||||||
如需 Cloud Data Fusion 預先定義角色包含的完整權限清單,請參閱「Cloud Data Fusion 預先定義角色」一文。
RBAC 的自訂角色
部分用途無法透過 Cloud Data Fusion 的預先定義角色實作。在這種情況下,請建立自訂角色。
範例
下列範例說明如何為 RBAC 建立自訂角色:
如要建立自訂角色,僅授予存取命名空間內安全金鑰的權限,請建立具有
datafusion.namespaces.get和datafusion.secureKeys.*權限的自訂角色。如要建立自訂角色,授予安全金鑰的唯讀存取權,請建立具有
datafusion.namespaces.get、datafusion.secureKeys.getSecret和datafusion.secureKeys.list權限的自訂角色。
一般動作的權限
單一預先定義的權限可能不足以執行相應動作。舉例來說,如要更新命名空間屬性,您可能也需要 datafusion.namespaces.get 權限。下表說明在 Cloud Data Fusion 執行常見動作時,所需的 IAM 權限:
| 動作 | 所需權限 |
|---|---|
| 存取執行個體 | datafusion.instances.get |
| 建立命名空間 | datafusion.namespaces.create |
| 取得命名空間 | datafusion.namespaces.get |
| 更新命名空間中繼資料 (例如屬性) |
|
| 刪除命名空間 (僅限啟用「無法復原的重設」) |
|
| 查看命名空間的權限 | datafusion.namespaces.getIamPolicy |
| 授予命名空間權限 | datafusion.namespaces.setIamPolicy |
| 從命名空間 SCM 設定提取管道 |
|
| 將管道推送至命名空間的 SCM 存放區 |
|
| 取得命名空間 SCM 設定 | datafusion.namespaces.get |
| 更新命名空間 SCM 設定 | datafusion.namespaces.updateRepositoryMetadata |
| 為命名空間設定服務帳戶 |
|
| 取消設定命名空間的服務帳戶 |
|
| 為命名空間佈建服務帳戶憑證 | datafusion.namespaces.provisionCredential |
| 查看管道草稿 | datafusion.namespaces.get |
| 建立/刪除管道草稿 |
|
| 列出運算設定檔 | datafusion.profiles.list |
| 建立運算設定檔 | datafusion.profiles.create |
| 查看運算設定檔 | datafusion.profiles.get |
| 編輯運算設定檔 | datafusion.profiles.update |
| 刪除運算設定檔 | datafusion.profiles.delete |
| 建立連線 |
|
| 查看連線 |
|
| 編輯連線 |
|
| 刪除連線 |
|
| 瀏覽、取樣或查看連線規格 |
|
| 建立 Wrangler 工作區 |
|
| 查看 Wrangler 工作區 |
|
| 編輯或重新取樣 Wrangler 工作區 |
|
| 刪除 Wrangler 工作區 |
|
| 在 Wrangler Workspace 上套用一組指令 |
|
| 可列出管道 |
|
| 建立管道 |
|
| 查看管道 |
|
| 編輯 pipeline |
|
| 編輯管道屬性 |
|
| 刪除管道 |
|
| 預覽管道 | datafusion.pipelines.preview |
| 可執行管道 | datafusion.pipelines.execute |
| 建立排程 | datafusion.pipelines.execute |
| 查看時間表 |
|
| 變更時間表 | datafusion.pipelines.execute |
| 列出安全金鑰 |
|
| 建立安全金鑰 |
|
| 查看安全金鑰 |
|
| 刪除安全金鑰 |
|
| 列出構件* |
|
| 建立構件* |
|
| 取得構件* |
|
| 刪除構件* |
|
| 偏好設定、標記和中繼資料 | 偏好設定、標記和中繼資料是在特定資源 (datafusion.RESOURCE.update) 的資源層級設定。
|
| 資料集權限 (已淘汰) | datafusion.namespaces.update |
後續步驟
- 進一步瞭解 Cloud Data Fusion 中的 RBAC。