本文提供 Knowledge Catalog 資源的身分與存取權管理 (IAM) 權限參考資料。您可以使用這些權限建立自訂角色,或驗證中繼資料管理、資料掃描、湖泊作業、工作和環境所需的精細存取權。
權限與角色
您不會直接授予使用者權限,而是向他們授予繫結了一或多個權限的「角色」。這種做法符合最小權限原則,建議您只授予使用者或服務帳戶執行工作所需的必要存取權。
IAM 提供預先定義的角色,適用於常見用途。如果這些預先定義的角色不符合您的特定需求,您可以建立自己的自訂角色,只包含所需的特定權限。
如要進一步瞭解預先定義的 Knowledge Catalog 角色及其包含的權限,請參閱「Knowledge Catalog IAM 角色」。
如需 IAM 及其功能的詳細說明,請參閱 IAM 說明文件。
IAM 政策設定和取得權限
下表列出取得及設定 IAM 權限所需的權限:
| 資源 | API 方法 | IAM 權限 |
|---|---|---|
| 切面類型 | GetIamPolicy |
dataplex.aspectTypes.getIamPolicy |
| 切面類型 | SetIamPolicy |
dataplex.aspectTypes.setIamPolicy |
| 項目群組 | GetIamPolicy |
dataplex.entryGroups.getIamPolicy |
| 項目群組 | SetIamPolicy |
dataplex.entryGroups.setIamPolicy |
| 項目類型 | GetIamPolicy |
dataplex.entryTypes.getIamPolicy |
| 項目類型 | SetIamPolicy |
dataplex.entryTypes.setIamPolicy |
| 湖泊 | GetIamPolicy |
dataplex.lakes.getIamPolicy |
| 湖泊 | SetIamPolicy |
dataplex.lakes.setIamPolicy |
中繼資料管理權限
對項目類型、項目連結類型、切面類型、項目群組、項目和項目連結執行作業時,所需權限取決於資源是系統資源還是自訂資源。系統資源由 Knowledge Catalog 定義,自訂資源則由您或貴組織定義。
如要為項目和項目連結補充額外資訊,可以附加切面。
如要執行與多項資源相關的操作 (例如建立特定項目類型的項目,或將特定切面類型的切面新增至項目或項目連結),您可能需要多項與資源相關聯的權限。
項目類型
如要建立及管理項目類型,您至少必須具備標準 create、get、list、update 和 delete 權限。
建立項目類型時,您必須具備權限,才能使用要標示為該項目類型必要項目的各個切面類型。
如要使用項目類型 (例如建立該類型的項目),您必須具備該項目類型的 use 權限。
下表列出操作項目類型所需的權限:
| 作業 | IAM 權限 |
|---|---|
Create entry types |
|
Delete entry types |
|
Get entry types |
dataplex.entryTypes.get |
List entry types |
dataplex.entryTypes.list |
Update entry types |
|
|
使用項目類型 (建立項目、更新頂層項目欄位和必要切面類型值時) |
|
切面類型
如要建立及管理切面類型,您必須具備標準 create、get、list、update 和 delete 權限。
如要使用切面類型 (例如將其附加為項目的選用切面,或更新項目連結的必要切面),您必須具備該切面類型的 use 權限。
切面類型分為系統切面類型和自訂切面類型。系統切面類型由 Knowledge Catalog 建立,自訂切面類型則由您或貴組織建立。系統切面類型可進一步分為可用和唯讀。詳情請參閱「切面類型類別」。
下表列出操作自訂和系統切面類型所需的權限:
| 作業 | 自訂切面類型的必要權限 | 使用系統切面類型所需的權限 | 唯讀系統切面類型所需的權限 |
|---|---|---|---|
Create aspect types |
dataplex.aspectTypes.create |
不適用 | 不適用 |
Delete aspect types |
dataplex.aspectTypes.delete |
不適用 | 不適用 |
Get aspect types |
dataplex.aspectTypes.get |
授予對象:allUsers |
授予對象:allUsers |
List aspect types |
dataplex.aspectTypes.list |
不適用 | 不適用 |
| 建立或更新項目時,設定選用的切面類型值 |
|
|
不適用 |
| 建立或更新項目時,請設定必要的切面類型值 |
|
|
不適用 |
Update aspect types |
dataplex.aspectTypes.update |
不適用 | 不適用 |
| 建立或更新項目連結時,設定必要的切面類型值 | 不適用 |
|
不適用 |
項目群組
如要建立及管理項目群組,您必須具備標準 create、get、list、update 和 delete 權限。
項目群組分為兩類:系統項目群組 (由 Knowledge Catalog 建立) 和自訂項目群組 (由您或貴組織建立)。詳情請參閱「項目群組類別」。
下表列出操作項目群組所需的權限:
| 作業 | 自訂項目群組所需的權限 | 系統項目群組 (以 @ 開頭) 的必要權限 |
|---|---|---|
Create entry groups |
dataplex.entryGroups.create |
不適用 |
Delete entry groups |
dataplex.entryGroups.delete |
不適用 |
Get entry groups |
dataplex.entryGroups.get |
dataplex.entryGroups.get |
List entry groups |
dataplex.entryGroups.list |
dataplex.entryGroups.list |
Update entry groups |
dataplex.entryGroups.update |
不適用 |
實體
如要建立及管理項目,您必須具備標準 create、get、list、update 和 delete 權限。
注意事項:
- 如果是查詢 (
<code>LookupEntry</code>) 和搜尋 (<code>SearchEntries</code>) 方法,則必須具備原始來源系統對項目的權限。舉例來說,如果來源是 BigQuery 資料表,您需要bigquery.tables.get權限才能查看中繼資料,並需要bigquery.tables.getData權限才能查看資料層面。 - 如果沒有查看資料層面的權限,您仍可查看項目,但資料層面的內容會隱藏。
- 建立項目或更新項目的頂層欄位時,您必須具備項目類型的
use權限。 - 建立或更新必要切面時,您必須具備項目類型和基礎切面類型的
use權限。這是因為必要切面是由項目類型強制執行。 - 建立、更新或刪除選用切面時,您必須具備該切面類型的
use權限。 - 新增或更新項目 (
<code>UpdateEntry</code>搭配<code>allow_missing = True</code>) 時,您必須具備create權限。
如要進一步瞭解項目所依據的項目類型,請參閱「項目類型類別」。
下表列出操作項目所需的權限:
| 作業 | 依據自訂項目類型建立的項目 | 根據可用的系統項目類型建立項目 | 依據唯讀系統項目類型建立的項目 |
|---|---|---|---|
Create entries |
|
|
不適用 |
Get entries |
如要查看資料層面,也必須具備 |
如要查看資料層面,也必須具備 |
如要查看資料層面,也必須具備 |
List entries |
dataplex.entries.list |
dataplex.entries.list |
dataplex.entries.list |
Lookup entries |
需要來源系統的中繼資料讀取的權限。您必須具備從來源系統讀取資料的權限,才能查看資料層面。 如果是將 Knowledge Catalog 視為來源系統的自訂項目,這些權限分別為 |
需要來源系統的中繼資料讀取的權限。您必須具備從來源系統讀取資料的權限,才能查看資料層面。 如果是將 Knowledge Catalog 視為來源系統的自訂項目,這些權限分別為 |
需要來源系統的中繼資料讀取的權限。您必須具備從來源系統讀取資料的權限,才能查看資料層面。 如果是將 Knowledge Catalog 視為來源系統的自訂項目,這些權限分別為 |
Search entries |
原始來源系統的讀取的權限。 如果是自訂項目,則為 |
原始來源系統的讀取的權限。 如果是自訂項目,則為 |
原始來源系統的讀取的權限。 如果是自訂項目,則為 |
Update entries |
|
|
無法編輯頂層欄位和必要切面。 |
項目連結
如要建立及管理項目連結,您必須具備 dataplex.entryLinks 的 create、get、list 和 delete 權限。
注意事項:
- 如要建立項目連結 (
CreateEntryLink),也必須具備項目連結類型的權限,以及連結特定項目的權限。 - 建立具有「必要」切面的項目連結時,您必須具備使用切面類型的權限。
- 更新插入項目連結 (
UpdateEntryLink搭配allow_missing = True) 時,您也必須具備CreateEntryLink所需的相同權限。
下表列出操作項目連結所需的權限:
| 作業 | IAM 權限 |
|---|---|
| 建立項目連結 |
根據項目連結類型,所需權限如下:
使用項目連結類型的權限:
項目連結類型指定的必要切面權限:
|
| 刪除項目連結 | dataplex.entryLinks.delete (項目群組) |
| 取得項目連結 |
|
| 查詢項目連結 |
必須具備來源系統的中繼資料讀取的權限,才能查詢項目連結。 如果是連結的自訂項目,且 Knowledge Catalog 是來源系統,則權限為 如果是連結的系統項目,則權限為連結項目來源系統的讀取的權限。 |
| 更新項目連結 |
使用項目連結類型的權限:
項目連結類型指定的必要切面權限:
如果 |
項目連結的面向限制
使用切面與項目連結時,須遵守下列限制。
脈絡資料集
情境集是目標資料資產和中繼資料的有界容器,用於在專屬商業邏輯中建立 AI 模型基準。雖然這些集合可以包含資料庫專屬資訊,例如 SQL 查詢範本或 QueryData 等文字轉 SQL 工具的值搜尋查詢,但 Knowledge Studio 也會使用情境集合來存放術語詞彙、結構化資料表總覽和企業資料對應。
如要進一步瞭解 Google Cloud如何使用情境集,請參閱 Knowledge Studio、AlloyDB for PostgreSQL、Cloud SQL for MySQL、Cloud SQL for PostgreSQL或 Spanner 的情境集總覽。
如要建立及管理 AI 基準化的情境集,您必須具備下列 IAM 角色:
- Dataplex Catalog 檢視者 (
roles/dataplex.catalogViewer):具備唯讀權限,可查看、列出及下載情境集,以及查看位置。 - Dataplex Catalog 編輯者 (
roles/dataplex.catalogEditor):可更新、刪除、上傳及下載情境集。 - Dataplex Catalog 管理員 (
roles/dataplex.catalogAdmin) 或 Dataplex 項目群組擁有者 (roles/dataplex.entryGroupOwner):具備情境集的所有管理權限,包括建立情境集所需的dataplex.entryGroups.setIamPolicy權限。
下表列出操作情境集所需的 IAM 權限:
| 作業 | IAM 權限 |
|---|---|
| 建立脈絡資料集 | dataplex.entryGroups.createContextSet |
| 刪除脈絡資料集 | dataplex.entryGroups.deleteContextSet |
| 讀取脈絡資料集 | dataplex.entryGroups.getContextSet |
| 更新脈絡資料集 | dataplex.entryGroups.updateContextSet |
| 要求情境變更 | dataplex.entryGroups.requestContextChanges |
| 建立脈絡項目 | dataplex.entries.createContext |
| 刪除背景資訊項目 | dataplex.entries.deleteContext |
| 讀取情境項目 | dataplex.entries.getContext |
| 列出背景資訊項目 | dataplex.entries.listContext |
| 更新脈絡資料項目 | dataplex.entries.updateContext |
詳情請參閱「Knowledge Catalog IAM 角色」。
中繼資料工作權限
| 作業 | IAM 權限 |
|---|---|
| 存取中繼資料匯出工作的匯出結果 |
|
Cancel metadata jobs |
|
Create metadata export jobs |
|
Create metadata import jobs |
|
Get metadata jobs |
|
List metadata jobs |
|
系統切面類型、項目類型和項目連結類型
每個系統定義的切面類型、系統定義的項目類型和系統定義的項目連結類型,都有專屬的 IAM 權限。這些權限的格式類似 dataplex.entryGroups.useASPECT_TYPE、dataplex.entryGroups.useENTRY_TYPE 或 dataplex.entryGroups.useENTRY_LINK_TYPE。例如,overview 系統切面類型的權限是 dataplex.entryGroups.useOverviewAspect。
下表列出適用於系統定義切面類型、項目類型和項目連結類型的權限。
| 資源 | IAM 權限 |
|---|---|
contacts (系統切面類型) |
dataplex.entryGroups.useContactsAspect |
data-profile (系統切面類型) |
dataplex.entryGroups.useDataProfileAspect |
data-quality-rule-template (系統切面類型) |
dataplex.entryGroups.useDataQualityRuleTemplateAspect |
data-quality-scorecard (系統切面類型) |
dataplex.entryGroups.useDataQualityScorecardAspect |
data-rules (系統切面類型) |
dataplex.entryGroups.useDataRulesAspect |
generic (系統切面類型) |
dataplex.entryGroups.useGenericAspect |
guidelines (系統切面類型) |
dataplex.entryGroups.useGuidelinesAspect |
overview (系統切面類型) |
dataplex.entryGroups.useOverviewAspect |
schema (系統切面類型) |
dataplex.entryGroups.useSchemaAspect |
schema-join (系統切面類型) |
dataplex.entryGroups.useSchemaJoinAspect |
generic (系統項目類型) |
dataplex.entryGroups.useGenericEntry |
definition (系統項目連結類型) |
dataplex.entryGroups.useDefinitionEntryLink |
related (系統項目連結類型) |
dataplex.entryGroups.useRelatedEntryLink |
synonym (系統項目連結類型) |
dataplex.entryGroups.useSynonymEntryLink |
schema-join (系統項目連結類型) |
dataplex.entryGroups.useSchemaJoinEntryLink |
湖泊、可用區和資產權限
下表列出對湖泊、可用區和資產執行作業所需的權限:
| API 方法 | IAM 權限 |
|---|---|
CreateAsset |
dataplex.assets.create |
CreateLake |
dataplex.lakes.create |
CreateZone |
dataplex.zones.create |
DeleteAsset |
dataplex.assets.delete |
DeleteLake |
dataplex.lakes.delete |
DeleteZone |
dataplex.zones.delete |
GetAsset |
dataplex.assets.get |
GetLake |
dataplex.lakes.get |
GetZone |
dataplex.zones.get |
ListAssetActions |
dataplex.assetActions.list |
ListAssets |
dataplex.assets.list |
ListLakeActions |
dataplex.lakeActions.list |
ListLakes |
dataplex.lakes.list |
ListZoneActions |
dataplex.zoneActions.list |
ListZones |
dataplex.zones.list |
UpdateAsset |
dataplex.assets.update |
UpdateLake |
dataplex.lakes.update |
UpdateZone |
dataplex.zones.update |
工作權限
下表列出操作任務所需的權限:
| API 方法 | IAM 權限 |
|---|---|
CancelJob |
dataplex.tasks.cancel |
CreateTask |
dataplex.tasks.create |
DeleteTask |
dataplex.tasks.delete |
GetJob |
dataplex.tasks.get |
GetTask |
dataplex.tasks.get |
ListJobs |
dataplex.tasks.get |
ListTasks |
dataplex.tasks.list |
UpdateTask |
dataplex.tasks.update |
中繼資料權限
下表列出操作實體和分區所需的權限:
| API 方法 | IAM 權限 |
|---|---|
CreateEntity |
dataplex.entities.create |
CreatePartition |
dataplex.partitions.create |
DeleteEntity |
dataplex.entities.delete |
DeletePartition |
dataplex.partitions.delete |
GetEntity |
dataplex.entities.get |
GetPartition |
dataplex.partitions.get |
ListEntities |
dataplex.entities.list |
ListPartitions |
dataplex.partitions.list |
資料掃描權限
下表列出操作資料掃描作業所需的權限:
| API 方法 | IAM 權限 |
|---|---|
CancelDataScanJob |
dataplex.datascans.cancel |
CreateDataScan |
dataplex.datascans.create |
DeleteDataScan |
dataplex.datascans.delete |
GetDataScan (基本檢視畫面) |
dataplex.datascans.get |
GetDataScan (完整檢視) |
dataplex.datascans.getData |
GetDataScanJob (基本檢視畫面) |
dataplex.datascans.get |
GetDataScanJob (完整檢視) |
dataplex.datascans.getData |
ListDataScanJobs |
dataplex.datascans.get |
ListDataScans |
dataplex.datascans.list |
RunDataScan |
dataplex.datascans.run |
UpdateDataScan |
dataplex.datascans.update |
Knowledge Studio 資料充實任務
您必須具備下列權限,才能建立及管理 Knowledge Studio 擴充工作:
| 作業 | IAM 權限 |
|---|---|
| 建立資料充實工作 | dataplex.agentTasks.create |
| 刪除資料充實任務 | dataplex.agentTasks.delete |
| 讀取資料充實任務詳細資料 | dataplex.agentTasks.get |
| 讀取及擷取基礎資料結果 | dataplex.agentTasks.getData |
| 列出資料充實任務 | dataplex.agentTasks.list |
| 更新資料充實工作 | dataplex.agentTasks.update |
| 執行資料充實任務 | dataplex.agentTasks.run |
| 要求變更項目群組 (提案) | dataplex.entryGroups.requestChanges |
| 核准中繼資料變更要求 | dataplex.changeRequests.use |
| 取消資料充實工作執行作業 | dataplex.agentTasks.cancel |
第三方驗證服務供應商權限
設定外部連接器時,必須具備下列代理身分權限,才能管理驗證提供者:
| 作業 | IAM 權限 |
|---|---|
| 建立驗證提供者 | agentidentity.authProviders.create |
| 查看驗證提供者詳細資料 | agentidentity.authProviders.get |
| 刪除驗證提供者 | agentidentity.authProviders.delete |
| 更新驗證提供者 | agentidentity.authProviders.update |
BigQuery 剖析權限
如要允許擴充代理執行 BigQuery 資料剖析,並讀取資料表查詢記錄,您必須將 BigQuery 資料檢視者 (roles/bigquery.dataViewer) 和 BigQuery 資源檢視者 (roles/bigquery.resourceViewer) 角色授予目標專案的 Knowledge Catalog 服務代理 (service-<var>PROJECT_NUMBER</var>@gcp-sa-dataplex.iam.gserviceaccount.com)。