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 固有の要求を作成するために、必要に応じてこれらのマッパーを変更できます。