本頁面說明啟用角色型存取權控管 (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 | ||||||
授予或撤銷命名空間中其他主體的權限 | * | |||||
時程表 | ||||||
建立排程 | ||||||
查看時間表 | ||||||
變更時間表 | ||||||
運算設定檔 | ||||||
建立運算設定檔 | ||||||
查看運算設定檔 | ||||||
編輯運算資源設定檔 | ||||||
刪除運算設定檔 | ||||||
連線 | ||||||
建立連線 | ||||||
查看連線 | ||||||
編輯連線 | ||||||
刪除連線 | ||||||
使用連線 | ||||||
管道 | ||||||
建立管道 | ||||||
查看管道 | ||||||
編輯管道 | ||||||
刪除管道 | ||||||
預覽管道 | ||||||
部署管道 | ||||||
執行管道 | ||||||
安全金鑰 | ||||||
建立安全金鑰 | ||||||
查看安全金鑰 | ||||||
刪除安全金鑰 | ||||||
標記 | ||||||
建立代碼 | ||||||
查看代碼 | ||||||
刪除標記 | ||||||
Cloud Data Fusion Hub | ||||||
部署外掛程式 | ||||||
來源控管管理 | ||||||
設定來源控管存放區 | ||||||
從命名空間同步處理管道 | ||||||
Lineage | ||||||
查看歷程 | ||||||
記錄 | ||||||
查看記錄 |
如需 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 存放區 |
|
取得 Namespace 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 |
建立連線 |
|
查看連線 |
|
編輯連線 |
|
刪除連線 |
|
瀏覽、取樣或查看連線規格 |
|
可列出管道 |
|
建立管道 |
|
查看管道 |
|
編輯 pipeline |
|
編輯管道屬性 |
|
刪除管道 |
|
預覽管道 | datafusion.pipelines.preview |
可執行管道 | datafusion.pipelines.execute |
建立排程 | datafusion.pipelines.execute |
查看時間表 |
|
變更排程 | datafusion.pipelines.execute |
列出安全金鑰 |
|
建立安全金鑰 |
|
查看安全金鑰 |
|
刪除安全金鑰 |
|
列出構件* |
|
建立構件* |
|
取得構件* |
|
刪除構件* |
|
偏好設定、標記和中繼資料 | 偏好設定、標記和中繼資料會在特定資源 (datafusion.RESOURCE.update ) 的資源層級設定。 |
資料集權限 (已淘汰) | datafusion.namespaces.update |
後續步驟
- 進一步瞭解 Cloud Data Fusion 中的 RBAC。