12.6. クライアントスコープ

Red Hat Single Sign-On を使用して、共有クライアント設定を クライアントスコープ と呼ばれるエンティティーに定義します。クライアントスコープ は、複数のクライアントの プロトコルマッパー および ロールスコープのマッピング を設定します。

クライアントスコープは OAuth 2 scope パラメーターもサポートします。クライアントアプリケーションは、アプリケーションの要件に応じて、このパラメーターを使用してアクセストークンの要求またはロールを要求します。

クライアントスコープを作成するには、以下の手順に従います。

  1. メニューの Client Scopes をクリックします。

    クライアントスコープの一覧

    client scopes list

  2. Create をクリックします。
  3. クライアントスコープに名前を付けます。
  4. Save をクリックします。

クライアントスコープ には、通常のクライアントと同様のタブがあります。プロトコルマッパーロールスコープマッピング を定義できます。これらのマッピングは他のクライアントで継承でき、このクライアントスコープから継承するように設定されます。

12.6.1. Protocol

クライアントスコープを作成する場合は、Protocol を選択します。同じスコープにリンクされるクライアントには、同じプロトコルが必要です。

各レルムには、メニューに事前に定義された組み込みクライアントスコープのセットがあります。

  • SAML プロトコル: role_listこのスコープには、SAML アサーションのロールリストのプロトコルマッパーが 1 つ含まれます。
  • OpenID Connect プロトコル: いくつかのクライアントスコープが利用できます。

    • roles

      このスコープは OpenID Connect 仕様では定義されず、アクセストークンの スコープ 要求に自動的に追加されません。このスコープにはマッパーがあり、ユーザーのロールをアクセストークンに追加して、クライアントロールが 1 つ以上あるクライアントの対象を追加するために使用されます。これらのマッパーの詳細は、対象範囲のセクション を参照してください。

    • web-origins

      このスコープは OpenID Connect 仕様には定義されず、アクセストークンを要求する スコープ には追加されません。これは、許可される Web オリジンをアクセストークンの allowed-origins 要求に追加するために使用されます。

    • microprofile-jwt

      このスコープは、MicroProfile/JWT 認証仕様 で定義された要求を処理します。このクライアントスコープは、upn 要求のユーザープロパティーマッパーと、groups 要求のレルムロールマッパーを定義します。これらのマッパーは、MicroProfile/JWT 固有の要求を作成するために、これらのマッパーを変更できます。

    • offline_access

      このスコープは、クライアントがオフライントークンを取得する必要がある場合に使用されます。オフライントークンの詳細は、オフラインアクセスセクション および OpenID Connect 仕様 を参照してください。

    • profile
    • email
    • address
    • phone

クライアントスコーププロファイル、profileemailaddress、および phone は、OpenID Connect 仕様 に定義されています。これらのスコープにはロールスコープマッピングが定義されていませんが、プロトコルマッパーが定義されます。これらのマッパーは OpenID Connect 仕様で定義された要求に対応します。

たとえば、phone クライアントのスコープ、Mappers タブの順に開くと、プロトコルマッパーが表示されます。これは、スコープの phone の仕様で定義される要求に対応します。

クライアントスコープマッパー

client scopes phone

phone クライアントスコープがクライアントにリンクされると、そのクライアントは phone クライアントスコープで定義されたすべてのプロトコルマッパーを自動的に継承します。このクライアントに発行されたアクセストークンには、ユーザーに関する電話番号 (電話番号が定義されているか) が含まれます。

組み込みクライアントスコープには、仕様で定義されているプロトコルマッパーが含まれます。クライアントスコープを編集し、プロトコルマッパーまたはロールスコープマッピングを作成、更新、または削除できます。