Knowledge Catalog の IAM 権限

このドキュメントでは、Knowledge Catalog リソースの Identity and Access Management(IAM)権限について説明します。これらの権限を使用して、カスタムロールを作成するか、メタデータ管理、データスキャン、レイク オペレーション、タスク、環境に必要なきめ細かいアクセス権を確認します。

権限とロール

ユーザーに権限を直接付与する代わりに、ロールを割り当てます。ロールには、1 つ以上の権限が含まれています。このアプローチは最小権限の原則に沿ったものであり、ユーザーまたはサービス アカウントがタスクを実行するために必要なアクセス権のみを付与することが推奨されます。

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 によって定義され、カスタム リソースはユーザーまたは組織によって定義されます。

エントリとエントリリンクに追加情報を付加するには、アスペクトを関連付けます。

複数のリソースに関連するオペレーション(特定のエントリタイプのエントリの作成、特定のアスペクト タイプのアスペクトのエントリまたはエントリリンクへの追加など)を実行するには、リソースに関連付けられた複数の権限が必要になる場合があります。

エントリタイプ

エントリタイプを作成して管理するには、少なくとも標準の creategetlistupdatedelete の権限が付与されている必要があります。

エントリタイプを作成するときに、そのエントリタイプに必須とされるアスペクト タイプをそれぞれ使用する権限が付与されている必要があります。

エントリタイプを使用するには(エントリタイプのエントリを作成するなど)、エントリタイプに対する 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(作成または更新されるすべてのアスペクトに対して)

アスペクト タイプ

アスペクト タイプを作成して管理するには、標準の creategetlistupdatedelete 権限が付与されている必要があります。

アスペクト タイプを使用する(エントリにオプションのアスペクトとしてアタッチする、エントリリンクの必須アスペクトを更新するなど)には、アスペクト タイプに対する 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

なし

エントリ グループ

エントリ グループを作成して管理するには、標準の creategetlistupdatedelete 権限が付与されている必要があります。

エントリ グループは、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 該当なし

エントリ

エントリを作成して管理するには、標準の creategetlistupdatedelete 権限が付与されている必要があります。

次の点にご注意ください。

  • ルックアップ(<code>LookupEntry</code>)メソッドと検索(<code>SearchEntries</code>)メソッドの場合、エントリに対する元のソースシステムの権限が必要です。たとえば、ソースが BigQuery テーブルの場合、メタデータを表示するには bigquery.tables.get 権限、データ アスペクトを表示するには bigquery.tables.getData 権限が必要です。
  • データ アスペクトを表示する権限がない場合でも、エントリは表示されますが、データ アスペクトの内容は非表示になります。
  • エントリを作成するとき、またはエントリの最上位フィールドを更新するときには、エントリタイプの use 権限が付与されている必要があります。
  • 必須アスペクトを作成または更新するには、エントリのエントリタイプと基盤となるアスペクト タイプの両方に対する use 権限が付与されている必要があります。これは、必須アスペクトがエントリタイプによって適用されるためです。
  • オプションのアスペクトを作成、更新、削除するには、アスペクトのアスペクト タイプに対する use 権限が付与されている必要があります。
  • エントリを upsert する場合(<code>allow_missing = True</code><code>UpdateEntry</code>)は、create 権限が付与されている必要があります。

エントリがベースとして使用するエントリタイプの詳細については、エントリタイプのカテゴリをご覧ください。

次のテーブルでは、エントリに対する操作に必要な権限を示します。

オペレーション カスタム エントリタイプに基づくエントリ 使用可能なシステム エントリタイプに基づくエントリ 読み取り専用システム エントリタイプに基づくエントリ
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.getdataplex.entries.getData です。

ソースシステムのメタデータ読み取り権限が必要です。データ アスペクトを表示するには、ソースシステムからデータを読み取る権限が必要です。

Knowledge Catalog がソースシステムとして扱われるカスタム エントリの場合、これらの権限はそれぞれ dataplex.entries.getdataplex.entries.getData です。

ソースシステムのメタデータ読み取り権限が必要です。データ アスペクトを表示するには、ソースシステムからデータを読み取る権限が必要です。

Knowledge Catalog がソースシステムとして扱われるカスタム エントリの場合、これらの権限はそれぞれ dataplex.entries.getdataplex.entries.getData です。

Search entries

元のソースシステムの読み取り権限。

カスタム エントリの場合、Knowledge Catalog は元のソースシステムとして扱われるため、これは dataplex.entries.get です。

元のソースシステムの読み取り権限。

カスタム エントリの場合、Knowledge Catalog は元のソースシステムとして扱われるため、これは dataplex.entries.get です。

元のソースシステムの読み取り権限。

カスタム エントリの場合、Knowledge Catalog は元のソースシステムとして扱われるため、これは dataplex.entries.get です。

Update entries

dataplex.entries.update

dataplex.entryTypes.use(最上位フィールドまたは必須アスペクトの更新に対して)

dataplex.aspectTypes.use(更新されるすべてのアスペクトに対して)

dataplex.entryGroups.useASPECT_TYPE(更新されるすべてのシステム アスペクトに対して)。システム アスペクト タイプの権限をご覧ください。

dataplex.entries.createallow_missingTrue の場合)

dataplex.entries.update

dataplex.entryGroups.useENTRY_TYPE(最上位フィールドまたは必要なアスペクトの更新に対して)システム エントリタイプの権限をご覧ください。

dataplex.aspectTypes.use(更新されるすべてのカスタム アスペクトに対して)

dataplex.entryGroups.useASPECT_TYPE(システム アスペクト タイプに属するすべてのアスペクトに対して)。システム アスペクト タイプの権限をご覧ください。

dataplex.entries.createallow_missingTrue の場合)

dataplex.entries.update

dataplex.aspectTypes.use(更新されるすべてのカスタム アスペクトに対して)

dataplex.entryGroups.useASPECT_TYPE(更新される使用可能なシステム アスペクト タイプのすべてのアスペクトに対して)。システム アスペクト タイプの権限をご覧ください。

最上位フィールドと必須アスペクトは編集できません。

エントリリンク

エントリリンクを作成して管理するには、dataplex.entryLinks に対する creategetlistdelete 権限が付与されている必要があります。

次の点にご注意ください。

  • エントリリンク(CreateEntryLink)を作成するには、エントリリンク タイプに対する権限と、特定のエントリをリンクする権限も必要です。
  • 必須アスペクトを含むエントリリンクを作成する場合は、アスペクト タイプを使用する権限が必要です。
  • エントリリンクを upsert する場合(allow_missing = TrueUpdateEntryLink)は、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_missingTrue の場合は、Create entry link のすべての権限も適用されます。

エントリリンクのアスペクトに関する制限事項

エントリリンクでアスペクトを使用する場合、次の制限事項が適用されます。

メタデータ ジョブの権限

次の表に、メタデータのインポート ジョブメタデータのエクスポート ジョブの操作に必要な権限を示します。

オペレーション 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_TYPEdataplex.entryGroups.useENTRY_TYPEdataplex.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