Knowledge Catalog IAM 權限

本文提供 Knowledge Catalog 資源的 Identity and Access Management (IAM) 權限參考資料。您可以使用這些權限建立自訂角色,或驗證管理中繼資料、掃描資料、執行 Lake 作業、處理工作和環境所需的精細存取權。

權限與角色

您不會直接授予使用者權限,而是向他們授予內含一或多個權限的「角色」。這個方法符合最小權限原則,鼓勵您只授予使用者或服務帳戶執行工作所需的必要存取權。

IAM 提供常見用途的預先定義角色。 如果這些預先定義的角色無法滿足特定需求,您可以建立自己的自訂角色,只包含所需的特定權限。

如要進一步瞭解預先定義的 Knowledge Catalog 角色及其相關權限,請參閱「Knowledge Catalog 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

dataplex.entryTypes.create

dataplex.aspectTypes.use (適用於項目類型中的每個必要切面類型)

dataplex.entryGroups.useASPECT_TYPE (適用於項目類型中的每個必要系統切面類型)。請參閱系統切面類型的權限。

Delete entry types

dataplex.entryTypes.delete

dataplex.aspectTypes.use (適用於項目類型中的必要切面類型)

dataplex.entryGroups.useASPECT_TYPE (適用於項目類型中的每個必要系統切面類型)。請參閱系統切面類型的權限。

Get entry types dataplex.entryTypes.get
List entry types dataplex.entryTypes.list
Update entry types

dataplex.entryTypes.update

dataplex.aspectTypes.use (適用於項目類型中的每個必要切面類型)

dataplex.entryGroups.useASPECT_TYPE (適用於項目類型中的每個必要系統切面類型)。請參閱系統層面類型權限。

使用項目類型

(建立項目、更新頂層項目欄位和必要切面類型值時)

dataplex.entryTypes.use

dataplex.entries.create或dataplex.entries.update

dataplex.aspectTypes.use (針對建立或更新的每個層面)

切面類型

如要建立及管理切面類型,您必須獲得標準的 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 不適用 不適用
建立或更新項目時,設定選用的切面類型值

dataplex.aspectTypes.use

dataplex.entries.create或dataplex.entries.update

dataplex.entryGroups.useASPECT_TYPE。請參閱系統切面類型的權限。

dataplex.entries.create或dataplex.entries.update

不適用
建立或更新項目時,請設定必要層面類型值

dataplex.aspectTypes.use

dataplex.entryTypes.use

dataplex.entries.create或dataplex.entries.update

dataplex.entryGroups.useASPECT_TYPE。請參閱系統切面類型的權限。

dataplex.entryTypes.use

dataplex.entries.create或dataplex.entries.update

不適用
Update aspect types dataplex.aspectTypes.update 不適用 不適用
建立或更新項目連結時,設定必要長寬比類型值 不適用

dataplex.entryGroups.useASPECT_TYPE。請參閱系統切面類型的權限。

dataplex.entryLinkTypes.useENTRY_LINK_TYPE。請參閱系統項目連結類型的權限。

dataplex.entries.link 授予含有已連結項目的項目群組。系統只會在建立項目連結時檢查。

dataplex.entryLinks.create或dataplex.entryLinks.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 權限。
  • 您必須獲得 create 權限,才能新增或更新項目 (<code>UpdateEntry</code> 搭配 <code>allow_missing = True</code>)。

如要進一步瞭解項目類型所依據的項目類型,請參閱「項目類型類別」。

下表列出操作項目所需的權限:

作業 依據自訂項目類型建立的項目 根據可用的系統項目類型輸入 根據唯讀系統項目類型建立項目
Create entries

dataplex.entries.create

dataplex.entryTypes.use

dataplex.aspectTypes.use (為建立的每個自訂顯示比例)

dataplex.entryGroups.useASPECT_TYPE (適用於建立的每個可用系統切面類型切面)。請參閱系統切面類型的權限。

dataplex.entries.create

dataplex.entryGroups.useENTRY_TYPE。請參閱系統項目類型的權限。

dataplex.entryGroups.useASPECT_TYPE (針對建立的每個系統層面)。請參閱系統切面類型的權限。

dataplex.aspectTypes.use (為建立的每個自訂顯示比例)

不適用
Get entries

dataplex.entries.get

如要查看資料層面, 也必須具備 dataplex.entries.getData。

dataplex.entries.get

如要查看資料層面, 也必須具備 dataplex.entries.getData。

dataplex.entries.get

如要查看資料層面, 也必須具備 dataplex.entries.getData。

List entries dataplex.entries.list dataplex.entries.list dataplex.entries.list
Lookup entries

需要來源系統的中繼資料讀取權限。如要查看資料層面,必須具備從來源系統讀取資料的權限。

如果是自訂項目,且 Knowledge Catalog 視為來源系統,則這些權限分別為 dataplex.entries.get 和 dataplex.entries.getData。

需要來源系統的中繼資料讀取權限。如要查看資料層面,必須具備從來源系統讀取資料的權限。

如果是自訂項目,且 Knowledge Catalog 視為來源系統,則這些權限分別為 dataplex.entries.get 和 dataplex.entries.getData。

需要來源系統的中繼資料讀取權限。如要查看資料層面,必須具備從來源系統讀取資料的權限。

如果是自訂項目,且 Knowledge Catalog 視為來源系統,則這些權限分別為 dataplex.entries.get 和 dataplex.entries.getData。

Search entries

原始來源系統的讀取權限。

如果是自訂項目,則為 dataplex.entries.get,因為 Knowledge Catalog 會視為原始來源系統。

原始來源系統的讀取權限。

如果是自訂項目,則為 dataplex.entries.get,因為 Knowledge Catalog 會視為原始來源系統。

原始來源系統的讀取權限。

如果是自訂項目,則為 dataplex.entries.get,因為 Knowledge Catalog 會視為原始來源系統。

Update entries

dataplex.entries.update

dataplex.entryTypes.use (用於更新頂層欄位或必要屬性)

dataplex.aspectTypes.use (針對每個更新的層面)

dataplex.entryGroups.useASPECT_TYPE (針對更新的每個系統層面)。請參閱系統切面類型的權限。

dataplex.entries.create (如果 allow_missing 為 True)

dataplex.entries.update

dataplex.entryGroups.useENTRY_TYPE (用於更新頂層欄位或必要項目)。請參閱「系統項目類型權限」。

dataplex.aspectTypes.use (針對每個更新的自訂層面)

dataplex.entryGroups.useASPECT_TYPE (適用於屬於系統切面類型的每個切面)。請參閱系統層面類型權限。

dataplex.entries.create (如果 allow_missing 為 True)

dataplex.entries.update

dataplex.aspectTypes.use (針對每個更新的自訂層面)

dataplex.entryGroups.useASPECT_TYPE (針對更新的每個可用系統切面類型切面)。請參閱系統層面類型權限。

無法編輯頂層欄位和必要切面。

項目連結

如要建立及管理進入連結,您必須在 dataplex.entryLinks 擁有 create、get、list 和 delete 權限。

注意事項:

  • 建立項目連結 (CreateEntryLink) 也需要項目連結類型的權限,以及連結特定項目的權限。
  • 使用必要切面建立項目連結時,您需要使用切面類型的權限。
  • 插入或更新項目連結 (UpdateEntryLink 搭配 allow_missing = True) 時,您也必須具備 CreateEntryLink 所需的相同權限。

下表列出操作項目連結所需的權限:

作業 IAM 權限
建立項目連結

dataplex.entryLinks.create (在項目群組中)

根據項目連結類型,所需權限如下:

  • 同義詞: dataplex.glossaryTerms.use (在兩個詞彙項目中)
  • 定義: dataplex.glossaryTerms.use (在字詞項目上) 和 dataplex.entries.link (在目標項目上)
  • 其他: dataplex.entries.link (適用於兩個項目)

使用項目連結類型的權限:

項目連結類型指定的任何必要切面權限:

刪除項目連結 dataplex.entryLinks.delete (在項目群組中)
取得進入連結

dataplex.entryLinks.get (在項目群組中)

查詢參賽連結

您必須具備來源系統的項目中繼資料讀取權限,才能查詢項目連結。

如果是連結的自訂項目,且 Knowledge Catalog 是來源系統,則權限為 dataplex.entries.get。

如果是連結的系統項目,權限是連結項目來源系統的讀取權限。

更新進入連結

dataplex.entryLinks.update (在項目群組中)

使用項目連結類型的權限:

項目連結類型指定的任何必要切面權限:

如果 allow_missing 是 True,則 Create entry link 的所有權限也適用。

項目連結的層面限制

使用附有進入連結的構面時,請注意以下限制。

脈絡資料集

脈絡資料集內含特定資料庫的資訊,例如 SQL 查詢範本、Facet 搜尋查詢和值搜尋查詢。脈絡工程代理會使用脈絡資料集建構、評估及最佳化「文字轉 SQL」翻譯。QueryData 是一種對話式查詢工具,可使用脈絡資料集將自然語言轉換為資料庫查詢,用於建構資料代理。

詳情請參閱 AlloyDB for PostgreSQL、MySQL 適用的 Cloud SQL、PostgreSQL 適用的 Cloud SQL 或 Spanner 的內容集總覽。

如要建立及管理 AI 基礎的脈絡集,您必須取得下列 IAM 角色:

  • Dataplex Catalog 檢視者 (roles/dataplex.catalogViewer):唯讀存取權,可檢視、列出及下載內容集,並查看位置。
  • Dataplex Catalog 編輯者 (roles/dataplex.catalogEditor):可建立、更新、刪除、上傳及下載內容集。
  • Dataplex Catalog 管理員 (roles/dataplex.catalogAdmin):擁有內容集完整管理存取權。

詳情請參閱「Knowledge Catalog IAM 角色」。

中繼資料工作權限

下表列出使用中繼資料匯入工作和中繼資料匯出工作所需的權限。

作業 IAM 權限
存取中繼資料匯出工作匯出的結果

storage.objects.get

Cancel metadata jobs

dataplex.metadataJobs.cancel

Create metadata export jobs

dataplex.metadataJobs.create

dataplex.entryGroups.export

dataplex.entryGroups.get

resourcemanager.projects.get

resourcemanager.projects.list

Create metadata import jobs

dataplex.metadataJobs.create

dataplex.entryTypes.use (適用於工作範圍內的自訂項目類型)

dataplex.entryTypes.useENTRY_TYPE (適用於工作範圍內的每個系統項目類型)。 請參閱「系統項目類型權限」。不過,執行僅限切面的中繼資料匯入工作時,修改選用切面不需要這項權限。

dataplex.aspectTypes.use (適用於工作範圍內的自訂切面類型)

dataplex.aspectTypes.useASPECT_TYPE (適用於工作範圍內的每個系統層面類型)。 請參閱系統切面類型的權限。

dataplex.entryGroups.import (適用於工作範圍內的項目群組)

Get metadata jobs

dataplex.metadataJobs.get

List metadata jobs

dataplex.metadataJobs.list

系統切面類型、項目類型和項目連結類型

每個系統定義的切面類型、系統定義的項目類型和系統定義的項目連結類型,都有各自的 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