8.6. クライアントスコープ
多くのアプリケーションを組織内で保護および登録する必要がある場合には、これらの各クライアントに プロトコルマッパー と ロールスコープのマッピング を設定することが簡単になります。Red Hat Single Sign-On では、共有クライアント設定を クライアントスコープ と呼ばれるエンティティーに定義できます。
クライアントスコープは OAuth 2 scope パラメーターもサポートします。これにより、アプリケーションのニーズに応じて、クライアントアプリケーションがアクセストークン内の要求またはロールを要求できます。
クライアントスコープを作成するには、以下の手順に従います。
-
左側のメニュー項目
Client Scopesに移動します。この初期画面には、現在定義されているクライアントスコープの一覧が表示されます。
クライアントスコープの一覧
-
Createボタンをクリックします。クライアントスコープに名前を付け、保存します。クライアントスコープ には、通常のクライアントと同様のタブがあります。プロトコルマッパー と ロールスコープマッピング を定義できます。このマッピングは、他のクライアントによって継承でき、このクライアントスコープから継承するように設定されます。
8.6.1. プロトコル リンクのコピーリンクがクリップボードにコピーされました!
クライアントスコープを作成する場合は、Protocol を選択する必要があります。同じプロトコルを使用するクライアントのみを、このクライアントスコープにリンクできます。
新しいレルムを作成したら、メニューに事前定義 (組み込み) クライアントスコープの一覧があることを確認できます。
-
SAML プロトコルには、SAML アサーションのロールリストを表示するためのプロトコルマッパーを 1 つ持つ 組み込みクライアントスコープ
roles_listが 1 つあります。 -
OpenID Connect プロトコルには、クライアントスコーププロファイル
profile、email、address、phone、offline_access、roles、web-origins、およびmicroprofile-jwtがあります。
クライアントスコープ (offline_access) は、クライアントがオフライントークンを取得する場合に便利です。Offline Access セクション または OpenID Connect 仕様 でオフライントークンについて説明します。ここで、scope パラメーターは offline_access の値で定義されます。
クライアントスコーププロファイル、profile、email、address、および phone は、OpenID Connect 仕様 にも定義されています。これらのクライアントスコープにはロールスコープのマッピングが定義されていませんが、一部のプロトコルマッパーが定義されており、これらのマッパーは OpenID Connect 仕様で定義される要求に対応します。
たとえば、phone クライアントのスコープを開き、Mappers タブを開くと、プロトコルマッパーが表示されます。これは、スコープの phone の仕様で定義される要求に対応します。
クライアントスコープマッパー
phone クライアントスコープがクライアントにリンクされると、そのクライアントは phone クライアントスコープで定義されたすべてのプロトコルマッパーを自動的に継承します。このクライアントに発行されたアクセストークンには、ユーザーに関する電話番号 (電話番号が定義されているか) が含まれます。
組み込みクライアントスコープには、仕様に定義されているプロトコルマッパーを正確に含まれますが、クライアントスコープを編集し、プロトコルマッパー (またはロールの範囲) の作成/更新/削除を行うことができます。
クライアントスコープ ロール は OpenID Connect 仕様に定義されず、アクセストークンの スコープ 要求に自動的に追加されません。このクライアントスコープにはいくつかのマッパーがあります。これは、ユーザーのロールをアクセストークンに追加するために使用され、Audience セクションに記載されているように、1 つ以上のクライアントロールを持つクライアントのオーディエンスを追加するために使用されます。
クライアントスコープの web-origins も OpenID Connect 仕様には定義されず、scope 要求には追加されません。これは、許可される Web オリジンをアクセストークン allowed-origins 要求に追加するために使用されます。
クライアント scopemicroprofile-jwt は MicroProfile/JWT Auth Specification で定義された要求を処理するために作成されています。このクライアントスコープは、upn 要求のユーザープロパティーマッパーと、groups クレームのレルムロールマッパーを定義します。これらのマッパーは、MicroProfile/JWT 固有の要求を作成するために、必要に応じてこれらのマッパーを変更できます。