Identity and Access Management(IAM)では、プリンシパルのアクセスを制御します。プリンシパルは、 Trusted Cloudに対して認証された 1 つ以上の ID を表します。
ポリシーでプリンシパルを使用する
ポリシーでプリンシパルを使用する手順は次のとおりです。
Trusted Cloud で認識できる ID を構成します。ID の構成は、 Trusted Cloud で認識できる ID を作成するプロセスです。ユーザーとワークロードの ID を構成できます。
ID を構成する方法については、以下をご覧ください。
- ユーザーの ID を構成する方法については、ユーザーの ID をご覧ください。
- ワークロードの ID を構成する方法については、ワークロードの ID をご覧ください。
使用するプリンシパル ID を決定します。プリンシパル ID は、ポリシーでプリンシパルを参照する方法です。この識別子は、単一の ID または ID のグループを参照できます。
プリンシパル ID に使用する形式は、次の要素によって異なります。
- プリンシパルのタイプ
- プリンシパルを含めるポリシーのタイプ
各タイプのポリシーの各タイプのプリンシパルのプリンシパル ID の形式を確認するには、プリンシパル ID をご覧ください。
ID の形式がわかれば、プリンシパルの属性(プリンシパルのメールアドレスなど)に基づいてプリンシパルの固有識別子を特定できます。
ポリシーにプリンシパルの ID を含めます。ポリシーの形式に沿って、プリンシパルをポリシーに追加します。
IAM のさまざまなタイプのポリシーについては、ポリシーの種類をご覧ください。
プリンシパル タイプのサポート
各 IAM ポリシータイプは、IAM がサポートするプリンシパル タイプのサブセットをサポートしています。各ポリシータイプでサポートされているプリンシパル タイプを確認するには、プリンシパル ID をご覧ください。
プリンシパルのタイプ
IAM は、次のタイプのプリンシパルをサポートしています。
- サービス アカウント
allAuthenticatedUsers
allUsers
- Workforce Identity プール内の 1 つ以上のフェデレーション ID
- Workload Identity プール内の 1 つ以上のフェデレーション ID
- Google Kubernetes Engine Pod のセット
以降のセクションでは、これらの主なタイプについて詳しく説明します。
サービス アカウント
サービス アカウントは、個々のエンドユーザーではなく、アプリケーションまたはコンピューティング ワークロードのアカウントです。Trusted Cloudにホストされているコードを実行する場合は、アプリケーションの ID として使用するサービス アカウントを指定します。必要な数のサービス アカウントを作成して、アプリケーションのさまざまな論理コンポーネントを表すことができます。
サービス アカウントの詳細については、サービス アカウントの概要をご覧ください。
allAuthenticatedUsers
allAuthenticatedUsers
は、すべてのサービス アカウントを表す特殊な ID です。
このプリンシパル タイプには、外部 ID プロバイダ(IdP)によって管理されるフェデレーション ID は含まれません。フェデレーション ID を含めるには、次のいずれかを使用します。
- すべての IdP のユーザーを含めるには、
allUsers
を使用します。 - 特定の外部 IdP のユーザーを含めるには、Workforce Identity プール内のすべての ID または Workload Identity プール内のすべての ID の識別子を使用します。
このプリンシパル タイプは、一部のリソースタイプでサポートされていません。
allUsers
allUsers
は、認証されたユーザーと認証されていないユーザーの両方を含めて、インターネット上のユーザーを表す特殊な識別子です。
このプリンシパル タイプは、一部のリソースタイプでサポートされていません。
Workforce Identity プール内のフェデレーション ID
Workforce Identity プール内のフェデレーション ID は、外部 IdP で管理され、Workforce Identity 連携を使用して連携されたユーザー ID です。Workforce Identity プールで特定の ID を使用することも、特定の属性を使用して Workforce Identity プールでユーザー ID のグループを指定することもできます。
Workload Identity プール内のフェデレーション ID
Workload Identity プールのフェデレーション ID は、外部 IdP によって管理され、Workload Identity 連携を使用して連携されるワークロード ID です。Workload Identity プールで特定のワークロード ID を使用することも、特定の属性を使用して Workload Identity プールのワークロード ID のグループを指定することもできます。
GKE Pod
GKE で実行されているワークロードは、Workload Identity Federation for GKE を使用して Trusted Cloud サービスにアクセスします。GKE Pod のプリンシパル ID の詳細については、IAM ポリシーで Kubernetes リソースを参照するをご覧ください。
次のステップ
- IAM がサポートするポリシータイプについて学習する
- Resource Manager のプロジェクト、フォルダ、または組織に対するプリンシパルにロールを付与する