外部ストアからのクレームを含むトークンを受信するように SAML アプリを構成する
この記事では、カスタム クレーム プロバイダーからの外部クレームを含むトークンを受信するように SAML アプリケーションを構成する方法について説明します。
前提条件
外部クレームを含むトークンを受信するように SAML アプリケーションを構成する前に、まず次のセクションに従ってください。
エンリッチされたトークンを受け取る SAML アプリケーションを構成する
個々のアプリ管理者または所有者は、カスタム クレーム プロバイダーを使用して、既存のアプリケーションまたは新しいアプリケーションのトークンをエンリッチできます。 これらのアプリでは、JWT (OpenID Connect の場合) または SAML 形式のいずれかでトークンを使用できます。
次の手順では、エンリッチされたクレームを含むトークンを受け取ることができるかどうかをテストできるように、デモ XRayClaims アプリケーションを登録します。
新しい SAML アプリケーションを追加する
ヒント
この記事の手順は、開始するポータルに応じて若干異なる場合があります。
テナントにギャラリー以外の新しい SAML アプリケーションを追加します。
クラウド アプリケーション管理者以上として Microsoft Entra 管理センターにサインインします。
[ID]>[アプリケーション]>[エンタープライズ アプリケーション] の順に移動します。
[新しいアプリケーション]、[独自のアプリケーションの作成] の順に選択します。
アプリの名前を追加します。 たとえば、AzureADClaimsXRay などです。 [ギャラリーに見つからないその他のアプリケーションを統合します (ギャラリー以外)] オプションを 選択し、[作成] を選びます。
SAML を使用してシングル サインオンを構成する
アプリのシングル サインオンをセットアップします。
[概要] ページで、[シングル サインオンの設定]、[SAML] の順に選択します。 [Basic SAML Configuration] (基本的な SAML 構成) で [編集] を選択します。
[識別子の追加] を選択し、識別子として "urn:microsoft:adfs:claimsxray" を追加します。 この識別子が組織内の別のアプリケーションで既に使用されている場合は、urn:microsoft:adfs:claimsxray12 などを代わりに使用できます。
[応答 URL] を選択し、応答 URL として
https://adfshelp.microsoft.com/ClaimsXray/TokenResponse
を追加します。[保存] を選択します。
要求の構成
カスタム クレーム プロバイダー API によって返される属性は、Microsoft Entra ID によって返されるトークンに自動的には含まれません。 カスタム クレーム プロバイダーによって返される属性を参照し、トークン内のクレームとして返すようにアプリケーションを構成する必要があります。
その新しいアプリのエンタープライズ アプリケーション構成ページで、[シングル サインオン] ウィンドウに移動します。
[属性とクレーム] セクションの [編集] を選択します。
[詳細設定] セクションを展開します。
[カスタム クレーム プロバイダー] の [構成] を選択します。
[カスタム クレーム プロバイダー] ドロップダウンで、前に登録した カスタム拡張機能を選択します。 [保存] を選択します。
[新しクレームの追加] を選択して、新しいクレームを追加します。
発行するクレームに名前を指定します (例: "DoB")。 必要に応じて、名前空間 URI を設定します。
[ソース] で [属性] を選択し、[ソース属性] ドロップダウンからカスタム クレーム プロバイダーによって提供される属性を選択します。 表示される属性は、カスタム クレーム プロバイダーの構成でカスタム クレーム プロバイダーによって "使用可能にする" として定義されている属性です。 カスタム クレーム プロバイダーによって提供される属性には、customclaimsprovider というプレフィックスが付きます。 たとえば、customclaimsprovider.DateOfBirth や customclaimsprovider.CustomRoles です。 これらのクレームは、API 応答に応じて単一または複数値の場合があります。
[保存] を選択して、クレームを SAML トークン構成に追加します。
[クレームの管理] ウィンドウと [属性とクレーム] ウィンドウを閉じます。
アプリケーションにユーザーまたはグループを割り当てる
ユーザー サインインをテストする前に、ユーザーまたはユーザーのグループをアプリに割り当てる必要があります。 そうしないと、サインイン時に AADSTS50105 - The signed in user is not assigned to a role for the application
エラーが返されます。
アプリケーションの [概要] ページで、[作業の開始] の [ユーザーとグループの割り当て] を選択します。
[ユーザーとグループ] ページで [ユーザーまたはグループの追加] を選択します。
アプリにサインインするユーザーを検索して選択します。 [割り当て] ボタンを選択します。
アプリケーションをテストする
アプリケーションにサインインするユーザーに対してトークンがエンリッチされていることをテストします。
アプリの概要ページで、左側のナビゲーション バーの [シングル サインオン] を選択します。
下にスクロールし、[{アプリ名} でシングル サインオンをテストする] の下にある [テスト] を選択します。
[Test sign in] (サインインのテスト) を選択してサインインします。 サインインの最後に、トークン応答の Claims X-ray ツールが表示されます。 トークンに表示するように構成したクレームは、カスタム要求プロバイダーをソースとして使用するものを含め、null 以外の値を持つ場合は、すべてリストされているはずです。