本文提供 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 |
|
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權限。 - 當您要 upsert 項目 (
<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) 時,也需要項目連結類型的權限,以及連結特定項目的權限。 - 使用必要切面建立項目連結時,您需要使用切面類型的權限。
- 在 upsert 項目連結 (
UpdateEntryLink搭配allow_missing = True) 時,您也必須具備CreateEntryLink所需的相同權限。
下表列出操作項目連結所需的權限:
| 作業 | IAM 權限 |
|---|---|
| 建立項目連結 |
根據項目連結類型,所需權限如下:
使用項目連結類型的權限:
項目連結類型指定的任何必要切面權限:
|
| 刪除項目連結 | dataplex.entryLinks.delete (在項目群組中) |
| 取得進入連結 |
|
| 查詢項目連結 |
您必須具備來源系統中繼資料的讀取權限,才能查閱項目的項目連結。 如果是連結的自訂項目,且 Knowledge Catalog 是來源系統,則權限為 如果是連結的系統項目,權限是連結項目來源系統的讀取權限。 |
| 更新進入連結 |
使用項目連結類型的權限:
項目連結類型指定的任何必要切面權限:
如果 |
項目連結的層面限制
使用附有項目連結的構面時,請注意下列限制。
中繼資料工作權限
| 作業 | IAM 權限 |
|---|---|
| 存取中繼資料匯出工作匯出的結果 |
|
Cancel metadata jobs |
|
Create metadata export jobs |
|
Create metadata import jobs |
|
Get metadata jobs |
|
List metadata jobs |
|
系統切面類型、項目類型和項目連結類型
每個系統定義的切面類型、系統定義的項目類型和系統定義的項目連結類型,都有各自的身分與存取權管理權限。這類權限採用 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 權限 |
|---|---|
CreateContent |
dataplex.content.create |
CreateEnvironment |
dataplex.environments.create |
DeleteContent |
dataplex.content.delete |
DeleteEnvironment |
dataplex.environments.delete |
GetContent |
dataplex.content.get |
GetEnvironment |
dataplex.environments.get |
ListContent |
dataplex.content.list |
ListEnvironments |
dataplex.environments.list |
ListSessions |
dataplex.environments.get |
UpdateContent |
dataplex.content.update |
UpdateEnvironment |
dataplex.environments.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 |