このガイドでは、Okta を ID プロバイダ(IdP)として Workforce Identity 連携を構成し、アクセスを管理する方法と、Workforce Identity 連携をサポートするGoogle Cloud サービスにアクセスできるようにユーザーをログインさせる方法について説明します。
始める前に
- Google Cloud 組織が設定されていることを確認します。
-
Google Cloud CLI をインストールします。 インストール後、次のコマンドを実行して Google Cloud CLI を初期化します。
gcloud init
外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。
- ログインの場合、IdP は署名付き認証情報を提供する必要があります。OIDC IdP は JWT を提供し、SAML IdP レスポンスは署名されている必要があります。
- 組織またはGoogle Cloud プロダクトの変更に関する重要な情報を受け取るには、重要な連絡先を指定する必要があります。詳細については、Workforce Identity 連携の概要をご覧ください。
費用
Workforce Identity 連携は、無料の機能として利用できます。ただし、Workforce Identity 連携の詳細な監査ロギングでは Cloud Logging が使用されます。Logging の料金については、Google Cloud Observability の料金をご覧ください。
必要なロール
Workforce Identity 連携の構成に必要な権限を取得するには、組織に対する IAM Workforce プール管理者(roles/iam.workforcePoolAdmin
)の IAM ロールを付与するように管理者に依頼します。ロールの付与については、プロジェクト、フォルダ、組織へのアクセスを管理するをご覧ください。
必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。
また、IAM オーナー(roles/owner
)の基本ロールには Workforce Identity 連携を構成する権限も含まれています。本番環境では基本ロールを付与すべきではありません。基本ロールは、開発環境またはテスト環境で付与してください。
Workforce Identity プールを作成する
gcloud
Workforce Identity プールを作成するには、次のコマンドを実行します。
gcloud iam workforce-pools create WORKFORCE_POOL_ID \
--organization=ORGANIZATION_ID \
--display-name="DISPLAY_NAME" \
--description="DESCRIPTION" \
--session-duration=SESSION_DURATION \
--location=global
次のように置き換えます。
WORKFORCE_POOL_ID
: Google Cloud Workforce プールを表す ID。ID の形式については、API ドキュメントのクエリ パラメータ セクションをご覧ください。ORGANIZATION_ID
: Workforce Identity プールの Google Cloud 組織の組織 ID。Workforce Identity プールは、組織内のすべてのプロジェクトとフォルダで使用できます。DISPLAY_NAME
: 省略可。Workforce Identity プールの表示名。DESCRIPTION
: 省略可。Workforce Identity プールの説明。SESSION_DURATION
: 省略可。セッション継続時間。s
を付加した数値で表します(例:3600s
)。セッション継続時間は、この Workforce プールの Google Cloud アクセス トークン、コンソール(連携)ログイン セッション、gcloud CLI ログイン セッションの有効期間を決定します。セッション継続時間のデフォルトは 1 時間(3,600 秒)です。セッション継続時間は 15 分(900 秒)~12 時間(43,200 秒)の範囲で指定する必要があります。
コンソール
Workforce Identity プールを作成するには、次の操作を行います。
Google Cloud コンソールで、[Workforce Identity プール] ページに移動します。
Workforce Identity プールの組織を選択します。Workforce Identity プールは、組織内のすべてのプロジェクトとフォルダで使用できます。
[プールを作成] をクリックして、次の操作を行います。
[名前] フィールドに、プールの表示名を入力します。プール ID は、入力した名前から自動的に取得され、[名前] フィールドの下に表示されます。プール ID を更新するには、プール ID の横にある [編集] をクリックします。
省略可: [説明] にプールの説明を入力します。
Workforce Identity プールを作成するには、[次へ] をクリックします。
Workforce Identity プールのセッション継続時間は、デフォルトで 1 時間(3,600 秒)に設定されます。セッション継続時間は、この Workforce プールの Google Cloud アクセス トークン、コンソール(連携)、gcloud CLI ログイン セッションの有効期間を決定します。プールを作成したら、プールを更新してカスタムのセッション継続時間を設定できます。セッション継続時間は 15 分(900 秒)から 12 時間(43,200 秒)にする必要があります。
Okta アプリ統合を作成する
このセクションでは、Okta 管理コンソールを使用して Okta アプリ統合を作成する手順を説明します。詳細については、カスタムアプリ統合を作成するをご覧ください。
Workforce Identity プールは、OIDC プロトコルと SAML プロトコルの両方を使用した連携をサポートしています。
詳細については、Okta の OIDC と SAML の統合ガイドをご覧ください。このセクションでは、基本的な構成について説明します。
OIDC
OIDC プロトコルを使用する Okta アプリ統合を作成するには、次の手順を行います。
- Okta 管理コンソールにログインします。
- [Applications] > [Applications] に移動します。
アプリ統合の構成を開始するには、次の操作を行います。
- [Create App Integration] をクリックします。
- [Sign-in method] で [OIDC - OpenID Connect] を選択します。
- [Application type] で、アプリケーションの種類([Web Application] など)を選択します。
- アプリを作成するには、[Next] をクリックします。
- [App integration name] にアプリの名前を入力します。
- [Grant type] セクションで、[Implicit (hybrid)] チェックボックスをオンにします。
[Sign-in redirect URIs] セクションのテキスト フィールドに、リダイレクト URL を入力します。ログインに成功すると、この URL にリダイレクトされます。コンソール(連携)へのアクセスを構成する場合は、次の URL 形式を使用します。
https://auth.cloud.google/signin-callback/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
次のように置き換えます。
WORKFORCE_POOL_ID
: このガイドで前に作成した Workforce プールの ID。WORKFORCE_PROVIDER_ID
: 任意の Workforce Identity プロバイダ ID(例:okta-oidc-provider
)。ID の形式については、API ドキュメントのクエリ パラメータ セクションをご覧ください。
[Skip group assignment for now] チェックボックスをオンにします。
アプリ統合を保存するには、[Save] をクリックします。
省略可: Okta ユーザー プロファイルのカスタム属性を追加するには、次の操作を行います。
- [Data Type] で [
string
] を選択します。 - [Display name] に「
Department
」と入力します。 - [Variable name] に「
department
」と入力します。 - マッピングを保存するには、[Save] をクリックします。
カスタム属性の追加に関する詳細は、Okta ユーザー プロフィールにカスタム属性を追加するをご覧ください。
- [Data Type] で [
省略可: OIDC トークンで送信される属性のマッピングを作成するには、[Directory] で [Profile Editor] をクリックし、次の操作を行います。
- このガイドで前に作成した OIDC アプリケーションを見つけます。
- [Mappings] をクリックします。
- [Okta User to App] タブを選択します。
- [Okta User User Profile] タブで、使用可能なコンボボックスに「
department
」を入力します。Okta の予測入力によって「user.department
」となります。 - マッピングを保存するには、[Save Mappings] をクリックします。詳しくは、属性のマッピングの追加をご覧ください。
マッピングの詳細については、プロファイル エディタで Okta 属性をアプリ属性にマッピングするをご確認ください。
省略可: グループ クレームを構成するには、次の操作を行います。
組織の認可サーバーを使用する場合は、次の操作を行います。
- [Applications] > [Applications] に移動します。
- このセクションで前に作成した OpenID Connect クライアント アプリケーションを選択します。
- [Sign On] タブに移動します。
- [OpenID Connect ID Token] セクションで、[Edit] をクリックします。
- [Groups claim type] セクションで、次のいずれかのオプションを選択できます。
- [Expression] を選択します。
- [Matches regex] を選択して「
.*
」と入力します。
- グループ クレームを保存するには、[Save] をクリックします。
ユーザーがコンソール(連携)または gcloud CLI ブラウザベースのログインフローを使用してログインできるようにする場合は、このドキュメントの後半で説明する、Workforce Identity プール プロバイダの作成時に次の操作を行います。
--web-sso-additional-scopes
フラグを使用できるように、gcloud CLI の手順を使用してください。Workforce Identity プール プロバイダを作成するときに、
--web-sso-additional-scopes
で追加スコープとしてgroups
を渡します。これにより、ログイン時に Okta からグループ クレームがリクエストされます。
カスタム認可サーバーを使用する場合は、次の操作を行います。
- 管理コンソールで、[Security] メニューから [API] を選択します。
- 構成するカスタム認可サーバーを選択します。
- [Claims] タブに移動し、[Add Claim] をクリックします。
- クレームの名前を入力します。この例では、
groups
という名前を付けます。 - クレームの [Include in token type] で、[ID Token] を選択して [Always] を選択します。
- [Value type] で [Groups] を選択します。
- [Filter] プルダウン ボックスで [Matches regex] を選択し、値として
.*
を入力します。 - [Create] をクリックします。
グループ クレームの詳細については、グループ クレームを追加するをご覧ください。
SAML
SAML プロトコルを使用する Okta アプリ統合を作成するには、次の手順を行います。
- Okta 管理コンソールにログインします。
- [Applications] > [Applications] に移動します。
- [Create App Integration] をクリックします。
- [Sign-in method] で [SAML 2.0] を選択し、[次へ] をクリックします。
- アプリの名前を入力して [Next] をクリックし、[Configure SAML] オプションに進みます。
[Single Sign On URL] に、リダイレクト URL を入力します。これは、ユーザーがログインに成功した後にリダイレクトされる URL です。コンソールへのアクセスを構成する場合は、次の URL 形式を使用します。
https://auth.cloud.google/signin-callback/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
オーディエンス URI(
SP Entity ID
)を入力します。ID の形式は次のとおりです。https://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
次のように置き換えます。
WORKFORCE_POOL_ID
: このガイドの前半で作成した Workforce Identity プールの ID。WORKFORCE_PROVIDER_ID
: 任意の Workforce Identity プロバイダ ID(例:okta-saml-provider
)
ID の形式については、API ドキュメントのクエリ パラメータ セクションをご覧ください。
(省略可)属性ステートメントを使用して、SAML アサーションで送信するカスタム属性を指定します。設定後、これらの属性を Google Cloud で使用してアクセス管理ポリシーを作成できます。また、attribute_condition でも使用できます。たとえば、このガイドでは、部門を次のようにマッピングします。
名前 値 department
user.department
(省略可)グループ クレーム(このガイドの後半で使用)を追加するには、SAML アサーションでユーザーのグループ メンバーを渡す方法をご覧ください。
Okta アプリ統合の作成を完了します。
Workforce Identity プール プロバイダを作成する
このセクションでは、IdP ユーザーが Google Cloudにアクセスできるように Workforce Identity プール プロバイダを作成する方法について説明します。OIDC または SAML プロトコルを使用するようにプロバイダを構成できます。
OIDC Workforce Identity プール プロバイダを作成する
OIDC プロトコルを使用して、Okta アプリ統合用の Workforce Identity プール プロバイダを作成するには、次の操作を行います。
Okta アプリ統合のクライアント ID を取得するため、次の操作を行います。
- Okta アプリ統合に移動します。
- [General] タブをクリックします。
- [Client ID] フィールドの内容をコピーします。
ウェブベースのログイン用の OIDC Workforce Identity プール プロバイダを作成するには、次の操作を行います。
gcloud
コードフロー
Okta で、次の手順を行います。
[Client authentication] で、[Client secret] を選択します。
[Client Secrets] テーブルで、シークレットを見つけて、content_copy [Copy] をクリックします。
Google Cloudでは、ウェブログインに認可コードフローを使用する OIDC プロバイダを作成するには、次のコマンドを実行します。
gcloud iam workforce-pools providers create-oidc WORKFORCE_PROVIDER_ID \ --workforce-pool=WORKFORCE_POOL_ID \ --display-name="DISPLAY_NAME" \ --description="DESCRIPTION" \ --issuer-uri="ISSUER_URI" \ --client-id="OIDC_CLIENT_ID" \
--client-secret-value="OIDC_CLIENT_SECRET" \ --web-sso-response-type="code" \ --web-sso-assertion-claims-behavior="merge-user-info-over-id-token-claims" \ --web-sso-additional-scopes="WEB_SSO_ADDITIONAL_SCOPES" \ --attribute-mapping="ATTRIBUTE_MAPPING" \ --attribute-condition="ATTRIBUTE_CONDITION" \ --jwk-json-path="JWK_JSON_PATH" \ --detailed-audit-logging \ --location=global次のように置き換えます。
WORKFORCE_PROVIDER_ID
: 一意の Workforce Identity プール プロバイダ ID。接頭辞gcp-
は予約されているため、Workforce Identity プールまたは Workforce Identity プール プロバイダ ID では使用できません。WORKFORCE_POOL_ID
: IdP を接続する Workforce Identity プール ID。DISPLAY_NAME
: プロバイダのわかりやすい表示名。省略可能です。例:idp-eu-employees
DESCRIPTION
: Workforce プロバイダの説明。省略可能です。例:IdP for Partner Example Organization employees
ISSUER_URI
:https
で始まる有効な URI 形式の OIDC 発行者 URI。例:https://example.com/oidc
注: セキュリティ上の理由により、ISSUER_URI
では HTTPS スキームを使用する必要があります。OIDC_CLIENT_ID
: OIDC IdP に登録されている OIDC クライアント ID。ID は、IdP によって発行された JWT のaud
クレームと一致する必要があります。OIDC_CLIENT_SECRET
: OIDC クライアント シークレット。WEB_SSO_ADDITIONAL_SCOPES
: コンソール(連携)または gcloud CLI ブラウザベースのログイン用に OIDC IdP に送信する任意の追加スコープ。例: Okta の組織認可サーバーを使用している場合に、Okta からグループ クレームをリクエストするgroups
ATTRIBUTE_MAPPING
: 属性マッピング。属性マッピングの例を次に示します。 この例では、OIDC アサーションの IdP 属性google.subject=assertion.sub, google.groups=assertion.group1, attribute.costcenter=assertion.costcenter
subject
、group1
、costcenter
をそれぞれgoogle.subject
、google.groups
、attribute.costcenter
の各属性にマッピングしています。ATTRIBUTE_CONDITION
: 属性条件。たとえば、前にマッピングされたsubject
の値に末尾が@example.com
のメールアドレスが含まれている場合はassertion.subject.endsWith('@example.com')
です。JWK_JSON_PATH
: ローカルにアップロードされた OIDC JWK へのパス(省略可)。このパラメータを指定しない場合、代わりに Google Cloud は IdP の/.well-known/openid-configuration
パスを使用して公開鍵を含む JWK を取得します。ローカルにアップロードされた OIDC JWK の詳細については、OIDC JWK を管理するをご覧ください。-
Workforce Identity 連携の詳細な監査ロギングでは、IdP から受信した情報が Logging に記録されます。詳細な監査ロギングは、Workforce Identity プール プロバイダの構成のトラブルシューティングに役立ちます。詳細な監査ロギングを使用して属性マッピング エラーのトラブルシューティングを行う方法については、一般的な属性マッピング エラーをご覧ください。Logging の料金については、Google Cloud Observability の料金をご覧ください。
Workforce Identity プール プロバイダの詳細な監査ロギングを無効にするには、
gcloud iam workforce-pools providers create
の実行時に--detailed-audit-logging
フラグを省略します。詳細な監査ロギングを無効にするには、プロバイダを更新することもできます。
locations/global/workforcePools/enterprise-example-organization-employees
暗黙的フロー
ウェブログインに暗黙的フローを使用する OIDC プロバイダを作成するには、次のコマンドを実行します。
gcloud iam workforce-pools providers create-oidc WORKFORCE_PROVIDER_ID \ --workforce-pool=WORKFORCE_POOL_ID \ --display-name="DISPLAY_NAME" \ --description="DESCRIPTION" \ --issuer-uri="ISSUER_URI" \ --client-id="OIDC_CLIENT_ID" \ --web-sso-response-type="id-token" \ --web-sso-assertion-claims-behavior="only-id-token-claims" \ --web-sso-additional-scopes="WEB_SSO_ADDITIONAL_SCOPES" \ --attribute-mapping="ATTRIBUTE_MAPPING" \ --attribute-condition="ATTRIBUTE_CONDITION" \ --jwk-json-path="JWK_JSON_PATH" \ --detailed-audit-logging \ --location=global
次のように置き換えます。
WORKFORCE_PROVIDER_ID
: 一意の Workforce Identity プール プロバイダ ID。接頭辞gcp-
は予約されているため、Workforce Identity プールまたは Workforce Identity プール プロバイダ ID では使用できません。WORKFORCE_POOL_ID
: IdP を接続する Workforce Identity プール ID。DISPLAY_NAME
: プロバイダのわかりやすい表示名。省略可能です。例:idp-eu-employees
DESCRIPTION
: Workforce プロバイダの説明。省略可能です。例:IdP for Partner Example Organization employees
ISSUER_URI
:https
で始まる有効な URI 形式の OIDC 発行者 URI。例:https://example.com/oidc
注: セキュリティ上の理由により、ISSUER_URI
では HTTPS スキームを使用する必要があります。OIDC_CLIENT_ID
: OIDC IdP に登録されている OIDC クライアント ID。ID は、IdP によって発行された JWT のaud
クレームと一致する必要があります。WEB_SSO_ADDITIONAL_SCOPES
: コンソール(連携)または gcloud CLI ブラウザベースのログイン用に OIDC IdP に送信する任意の追加スコープ。例: Okta の組織認可サーバーを使用している場合に、Okta からグループ クレームをリクエストするgroups
ATTRIBUTE_MAPPING
: 属性マッピング。属性マッピングの例を次に示します。 この例では、OIDC アサーションの IdP 属性google.subject=assertion.sub, google.groups=assertion.group1, attribute.costcenter=assertion.costcenter
subject
、group1
、costcenter
をそれぞれgoogle.subject
、google.groups
、attribute.costcenter
の各属性にマッピングしています。ATTRIBUTE_CONDITION
: 属性条件。たとえば、前にマッピングされたsubject
の値に末尾が@example.com
のメールアドレスが含まれている場合はassertion.subject.endsWith('@example.com')
です。JWK_JSON_PATH
: ローカルにアップロードされた OIDC JWK へのパス(省略可)。このパラメータを指定しない場合、代わりに Google Cloud は IdP の/.well-known/openid-configuration
パスを使用して公開鍵を含む JWK を取得します。ローカルにアップロードされた OIDC JWK の詳細については、OIDC JWK を管理するをご覧ください。-
Workforce Identity 連携の詳細な監査ロギングでは、IdP から受信した情報が Logging に記録されます。詳細な監査ロギングは、Workforce Identity プール プロバイダの構成のトラブルシューティングに役立ちます。詳細な監査ロギングを使用して属性マッピング エラーのトラブルシューティングを行う方法については、一般的な属性マッピング エラーをご覧ください。Logging の料金については、Google Cloud Observability の料金をご覧ください。
Workforce Identity プール プロバイダの詳細な監査ロギングを無効にするには、
gcloud iam workforce-pools providers create
の実行時に--detailed-audit-logging
フラグを省略します。詳細な監査ロギングを無効にするには、プロバイダを更新することもできます。
locations/global/workforcePools/enterprise-example-organization-employees
コンソール
コードフロー
Okta で、次の手順を行います。
[Client authentication] で、[Client secret] を選択します。
[Client Secrets] テーブルで、シークレットを見つけて、content_copy [Copy] をクリックします。
Google Cloud コンソールで、認可コードフローを使用する OIDC プロバイダを作成するには、次の操作を行います。
Google Cloud コンソールで、[Workforce Identity プール] ページに移動します。
[Workforce Identity プール] テーブルで、プロバイダを作成するプールを選択します。
[プロバイダ] テーブルで [プロバイダを追加] をクリックします。
[プロトコルを選択] で、[Open ID Connect(OIDC)] を選択します。
[プール プロバイダの作成] で、次の操作を行います。
- [名前] にプロバイダの名前を入力します。
- [発行元(URL)] に発行元 URI を入力します。OIDC 発行元 URI は有効な URI 形式で、
https
で始まる必要があります。(例:https://example.com/oidc
)。 - クライアント ID(OIDC IdP に登録されている OIDC クライアント ID)を入力します。ID は、IdP によって発行された JWT の
aud
クレームと一致する必要があります。 - 有効なプロバイダを作成するには、[有効なプロバイダ] がオンになっていることを確認します。
- [続行] をクリックします。
[フロータイプ] で、次の操作を行います。フロータイプは、ウェブベースのシングル サインオン フローでのみ使用されます。
- [フロータイプ] で [コード] を選択します。
- [クライアント シークレット] に、IdP のクライアント シークレットを入力します。
[アサーション クレームの動作] で、次のいずれかを選択します。
- ユーザー情報と ID トークン
- ID トークンのみ
[続行] をクリックします。
[プロバイダの構成] で、属性のマッピングと属性条件を構成できます。属性のマッピングを作成する手順は次のとおりです。IdP フィールド名、または文字列を返す CEL 形式の式を指定できます。
必須: [OIDC 1] に、IdP からの件名を入力します(例:
assertion.sub
)。省略可: 属性のマッピングを追加する手順は次のとおりです。
- [マッピングを追加] をクリックします。
- [Google n](n は数値)で、Google Cloudでサポートされている鍵のいずれかを入力します。
- 対応する [OIDC n] フィールドに、マッピングする IdP 固有のフィールドの名前を CEL 形式で入力します。
属性条件を作成するには、次の操作を行います。
- [条件を追加] をクリックします。
- [属性条件] に、CEL 形式で条件を入力します。たとえば、前にマッピングされた
subject
の値に末尾が@example.com
のメールアドレスが含まれる場合はassertion.subject.endsWith('@example.com')
です。
詳細な監査ロギングを有効にするには、[詳細なロギング] で [詳細な属性値のロギングを有効にする] 切り替えボタンをクリックします。
Workforce Identity 連携の詳細な監査ロギングでは、IdP から受信した情報が Logging に記録されます。詳細な監査ロギングは、Workforce Identity プール プロバイダの構成のトラブルシューティングに役立ちます。詳細な監査ロギングを使用して属性マッピング エラーのトラブルシューティングを行う方法については、一般的な属性マッピング エラーをご覧ください。Logging の料金については、Google Cloud Observability の料金をご覧ください。
Workforce Identity プール プロバイダの詳細な監査ロギングを無効にするには、
gcloud iam workforce-pools providers create
の実行時に--detailed-audit-logging
フラグを省略します。詳細な監査ロギングを無効にするには、プロバイダを更新することもできます。
プロバイダを作成するには、[送信] をクリックします。
暗黙的フロー
Google Cloud Google Cloud コンソールで次の操作を行います。
Google Cloud コンソールで、[Workforce Identity プール] ページに移動します。
[Workforce Identity プール] テーブルで、プロバイダを作成するプールを選択します。
[プロバイダ] テーブルで [プロバイダを追加] をクリックします。
[プロトコルを選択] で、[Open ID Connect(OIDC)] を選択します。
[プール プロバイダの作成] で、次の操作を行います。
- [名前] にプロバイダの名前を入力します。
- [発行元(URL)] に発行元 URI を入力します。OIDC 発行元 URI は有効な URI 形式で、
https
で始まる必要があります。(例:https://example.com/oidc
)。 - クライアント ID(OIDC IdP に登録されている OIDC クライアント ID)を入力します。ID は、IdP によって発行された JWT の
aud
クレームと一致する必要があります。 - 有効なプロバイダを作成するには、[有効なプロバイダ] がオンになっていることを確認します。
- [続行] をクリックします。
[フロータイプ] で、次の操作を行います。フロータイプは、ウェブベースのシングル サインオン フローでのみ使用されます。
- [フロータイプ] で [ID トークン] を選択します。
- [続行] をクリックします。
[プロバイダの構成] で、属性のマッピングと属性条件を構成できます。属性のマッピングを作成する手順は次のとおりです。IdP フィールド名、または文字列を返す CEL 形式の式を指定できます。
必須: [OIDC 1] に、IdP からの件名を入力します(例:
assertion.sub
)。省略可: 属性のマッピングを追加する手順は次のとおりです。
- [マッピングを追加] をクリックします。
- [Google n](n は数値)で、Google Cloudでサポートされている鍵のいずれかを入力します。
- 対応する [OIDC n] フィールドに、マッピングする IdP 固有のフィールドの名前を CEL 形式で入力します。
属性条件を作成するには、次の操作を行います。
- [条件を追加] をクリックします。
[属性条件] に、CEL 形式で条件を入力します。たとえば、前にマッピングされた
subject
の値に末尾が@example.com
のメールアドレスが含まれる場合はassertion.subject.endsWith('@example.com')
です。
詳細な監査ロギングを有効にするには、[詳細なロギング] で [詳細な属性値のロギングを有効にする] 切り替えボタンをクリックします。
Workforce Identity 連携の詳細な監査ロギングでは、IdP から受信した情報が Logging に記録されます。詳細な監査ロギングは、Workforce Identity プール プロバイダの構成のトラブルシューティングに役立ちます。詳細な監査ロギングを使用して属性マッピング エラーのトラブルシューティングを行う方法については、一般的な属性マッピング エラーをご覧ください。Logging の料金については、Google Cloud Observability の料金をご覧ください。
Workforce Identity プール プロバイダの詳細な監査ロギングを無効にするには、
gcloud iam workforce-pools providers create
の実行時に--detailed-audit-logging
フラグを省略します。詳細な監査ロギングを無効にするには、プロバイダを更新することもできます。
プロバイダを作成するには、[送信] をクリックします。
SAML Workforce Identity プール プロバイダを作成する
SAML IdP で、 Google CloudWorkforce Identity 連携用の新しいアプリケーションを登録します。
SAML アサーションのオーディエンスを設定します。通常、これは IdP 構成の
SP Entity ID
フィールドです。次の URL に設定する必要があります。https://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
リダイレクト URL(Assertion Consumer Service(ACS)URL とも呼ばれます)を設定します。リダイレクト URL を設定するには、SAML IdP でリダイレクト URL フィールドを見つけて、次のいずれかを行います。
Google Cloud コンソールまたは別のブラウザベースのログイン方法を使用してブラウザベースのログインを設定するには、次の URL を入力します。
https://auth.cloud.google/signin-callback/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
次のように置き換えます。
WORKFORCE_POOL_ID
: Workforce Identity プールの IDWORKFORCE_PROVIDER_ID
: このドキュメントの後半で作成する Workforce Identity プール プロバイダの ID。
IdP を介してプログラムによるログインを設定するには、次の URL を入力します。
localhost
コンソール ログインの構成の詳細については、コンソールへのユーザー アクセスを設定するをご覧ください。
Google Cloudで、IdP の SAML メタデータ ドキュメントを使用して SAML Workforce Identity プール プロバイダを作成します。IdP から SAML メタデータ XML ドキュメントをダウンロードできます。ドキュメントには少なくとも次のものが含まれている必要があります。
- IdP の SAML エンティティ ID。
- IdP のシングル サインオン URL。
- 少なくとも 1 つの署名公開鍵。署名鍵の詳細については、このガイドの後述の鍵の要件をご覧ください。
gcloud
SAML プロトコルを使用して、Okta アプリ統合用の Workforce Identity プール プロバイダを作成するには、次の操作を行います。
Okta アプリに SAML メタデータを保存するには、次の操作を行います。
- Okta アプリに移動します。
- [Sign On] タブをクリックします。
- [SAML Signing Certificates] セクションで、有効な証明書の [Actions] > [View IdP metadata] をクリックします。
- 新しいページが開いたら、その中の XML メタデータをコピーします。
- メタデータをローカル XML ファイルとして保存します。
Okta アプリ用の Workforce プロバイダを作成するには、次のコマンドを実行します。
gcloud iam workforce-pools providers create-saml WORKFORCE_PROVIDER_ID \ --workforce-pool="WORKFORCE_POOL_ID" \ --attribute-mapping="ATTRIBUTE_MAPPING" \ --attribute-condition="ATTRIBUTE_CONDITION" \ --idp-metadata-path="XML_METADATA_PATH" \ --detailed-audit-logging \ --location="global"
次のように置き換えます。
WORKFORCE_PROVIDER_ID
: このガイドの前半で作成した Workforce プロバイダ ID。WORKFORCE_POOL_ID
: このガイドの前半で作成した Workforce Identity プール ID。ATTRIBUTE_MAPPING
: 属性マッピング。次に例を示します。 この例では、IdP 属性google.subject=assertion.subject, google.groups=assertion.attributes['https://example.com/aliases'], attribute.costcenter=assertion.attributes.costcenter[0]
assertion.subject
、assertion.attributes['https://example.com/aliases']
、assertion.attributes.costcenter[0]
を Google Cloud属性google.subject
、google.groups
、google.costcenter
にそれぞれマッピングしています。ATTRIBUTE_CONDITION
: オプションの属性条件。たとえば、ipaddr
属性を特定の IP 範囲に制限するには、条件assertion.attributes.ipaddr.startsWith('98.11.12.')
を設定します。この例の条件により、98.11.12.
で始まる IP アドレスを持つユーザーだけが、この Workforce プロバイダを使用してログインできます。XML_METADATA_PATH
: このガイドの前半で作成した Okta アプリの XML 形式のメタデータ ファイルへのパス。
接頭辞
gcp-
は予約されているため、Workforce Identity プールまたは Workforce Identity プール プロバイダ ID では使用できません。-
Workforce Identity 連携の詳細な監査ロギングでは、IdP から受信した情報が Logging に記録されます。詳細な監査ロギングは、Workforce Identity プール プロバイダの構成のトラブルシューティングに役立ちます。詳細な監査ロギングを使用して属性マッピング エラーのトラブルシューティングを行う方法については、