IAM を使用したアクセス制御

デフォルトで、すべての Google Cloud プロジェクトには、単一のユーザー(元のプロジェクト作成者)が設定されています。その他のユーザーはプロジェクト メンバーとして追加されるか、特定のリソースにバインディングされるまで、そのプロジェクトにアクセスできず、Dataplex リソースにもアクセスできません。このページでは、新規ユーザーをプロジェクトに追加する方法と、Dataplex リソースに対するアクセス制御を設定する方法について説明します。

IAM の概要

Google Cloud には Identity and Access Management(IAM)機能があり、特定の Google Cloud リソースに対するアクセス権をより詳細に設定できるため、他のリソースへの不要なアクセスを防ぐことができます。IAM を使用すると、セキュリティに関する最小権限の原則を導入できるため、リソースに対する必要なアクセス権のみ付与できます。

また、IAM では、IAM ポリシーを設定することで、誰(どのユーザー)に、どのリソースに対するどの権限(ロール)を付与するかも制御できます。 IAM ポリシーは、特定のロールをプロジェクト メンバーに付与することで、その ID に特定の権限を付与します。たとえば、プロジェクトなどの特定のリソースに対し、Google アカウントに roles/dataplex.admin ロールを割り当てると、そのプロジェクト内の Dataplex リソースを操作できますが、ほかのリソースは管理できません。また、IAM を使用して、プロジェクト チームのメンバーに付与されている基本ロールを管理することもできます。

ユーザーのアクセス制御オプション

ユーザーが Dataplex リソースを作成して管理できるようにするには、ユーザーをプロジェクトまたは特定のリソースにチームメンバーとして追加し、IAM ロールを使用して権限を付与します。

チームメンバーにできるのは、有効な Google アカウント、Google グループ、サービス アカウント、Google Workspace のドメインのいずれかを持つ個別のユーザーです。プロジェクトまたはリソースにチームメンバーを追加するときは、そのメンバーに付与するロールを指定します。IAM には、事前定義ロール基本ロールカスタムロールの 3 種類のロールがあります。

Dataplex の各ロールの機能と、特定のロールが権限を付与する API メソッドの詳細については、Dataplex IAM ロールをご覧ください。

その他のメンバータイプ(サービス アカウントやグループなど)については、ポリシー バインディング リファレンスをご覧ください。

サービス アカウント

Dataplex は、レイク内で管理されているリソースにアクセスするために必要な権限が付与されているサービス アカウントを使用します。このサービス アカウントには、レイク インスタンスを含むプロジェクトの権限が自動的に付与されます。レイク内で追加して管理する他のプロジェクトやリソースに対する権限をそれに明示的に付与する必要があります。

Dataplex のサービス アカウントの形式は次のとおりです。

service-CUSTOMER_PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com

CUSTOMER_PROJECT_NUMBER は、Dataplex API を有効にしたプロジェクトです。

Dataplex サービス エージェント(roles/dataplex.serviceAgent)に、レイクまたはデータゾーンに追加する基盤となるアセットへのアクセス権を付与する必要があります。

リソースの IAM ポリシー

Dataplex は、Cloud Storage バケットや BigQuery データセットなどのベース ストレージ リソースの最上部に仮想階層を追加します。Dataplex は、レイクに割り当てられた IAM ポリシーをデータゾーン アセットに伝播し、最終的に、これらのアセットが指すリソースに伝播します。ポリシーは、ベース ストレージ リソース(Cloud Storage バケットと BigQuery データセット)にすでに存在するものに追加されます。

IAM ポリシーを使用すると、プロジェクト レベルでロールを管理する代わりに、これらのリソースの IAM ロールを管理できます。これにより、共同編集者が作業を行うために必要な特定のリソースのみへのアクセスを許可する、最小権限の原則を適用できます。

リソースは親リソースのポリシーも継承します。プロジェクト レベルでポリシーを設定すると、そのすべての子リソースでそのポリシーが継承されます。特定のリソースに対して有効なポリシーは、そのリソースに設定されたポリシーとリソース階層の上位から継承されるポリシーを組み合わせたものです。詳細については、IAM ポリシーの階層をご覧ください。

IAM ポリシーは、Google Cloud コンソール、IAM API、Google Cloud CLI を使用して取得と設定ができます。

次のステップ