OpenID Connect イントロスペクト、ID トークン、およびユーザー情報マッピング
IBM® Verifyの OAuth フローおよび Open ID Connect フローは、許可付与を作成します。 この付与には、イントロスペクション応答に含まれる属性と値、および ID トークンとユーザー情報応答が含まれます。
通常、これらの属性は以下のいずれかの基準に一致するため、付与に追加されます。
preferred_usernameなどのデフォルト属性です。scopeおよびclaimsを使用して、許可要求から計算されます。- 属性と要求のマッピングに基づいています。
手順
ID トークンおよびユーザー情報マッピングとイントロスペクトマッピングのいずれかを選択できます。 どちらの場合も手順は同じです。 前者に定義された属性は、発行されるIDトークンおよびAPIの userinfo レスポンスに追加されます。 イントロスペクト・マッピングの場合、定義された属性がイントロスペクション応答に追加されます。
注: 属性値は、グラントタイプに基づいてリクエストエンドポイントで計算されます。 たとえば、認証コードフローでは、これらの値はリクエスト /authorize 時に算出されます。
- をクリックし、対象のアプリケーションを選択してください。
- 設定アイコンをクリックし、「 サインオン 」タブをクリックして、 「エンドポイント設定」 までスクロールします。
- 「 Introspect 」または「 IDトークン 」およびユーザー 情報の編集アイコンをクリックしてください。
- IDトークンおよびユーザー情報については、
- 「 最小限のクレームのみを返す 」チェックボックスを選択すると、IDトークンに含まれるクレームが、仕様で要求される最小限のものに絞り込まれます。 OpenID を参照してください。Connect Core 1.0 (エラッタセット 2 ID トークンを含む)。 リクエスト内のスコープおよびクレームパラメータ、「 IDトークンに既知のユーザー属性をすべて送信する 」オプション、およびそれに続く属性マッピングは、最小限のクレームに加えて引き続き適用されます。注: 最小限のクレームで生成されたIDトークンは、トークン交換には使用できません。
- ID トークンに組み込みの標準属性および拡張属性を含めるには、「IDトークンに既知のすべてのユーザー属性を送信する」チェックボックスを選択してください。 拡張属性とは、 SAML EnterpriseのIDプロバイダーから提供される追加の属性のことです。
- 「 最小限のクレームのみを返す 」チェックボックスを選択すると、IDトークンに含まれるクレームが、仕様で要求される最小限のものに絞り込まれます。 OpenID を参照してください。Connect Core 1.0 (エラッタセット 2 ID トークンを含む)。 リクエスト内のスコープおよびクレームパラメータ、「 IDトークンに既知のユーザー属性をすべて送信する 」オプション、およびそれに続く属性マッピングは、最小限のクレームに加えて引き続き適用されます。
- 「属性を追加」 をクリックします。
- メニューからVerify属性を選択します。 特定の属性を選択する代わりに、属性の検証メニューで「カスタム・ルール」を選択して、属性値を計算するカスタム・ルールを作成できます。 属性について詳しくは、Managing attributesを参照してください。
- オプションで、単純な変換を選択します。
- 依拠当事者が送信する必要があるターゲット属性の名前を指定します。 例えば、Verifyは、ユーザーの名に
given_nameを使用します。 依拠当事者がこの属性をfirstNameとして ID トークンに含める必要がある場合は、ターゲット属性の名前としてfirstNameを使用します。 aud以下の属性は上書きできません: exp, groupIds, groupUids, at_hash, c_hash, rt_hash, s_hash, iat, iss,, nonce, sub, client_id, grant_id, grant_type、および scope。注: この sub 属性は、IDトークンおよびユーザー情報属性マップでのみ使用可能であり、このマッピングはイントロスペクション、JWTアクセストークン、IDトークン、およびユーザー情報に適用されます。 - 「 リフレッシュ時に更新」 チェックボックスを選択すると、リフレッシュトークンのフロー中にこの属性が更新されます。注: この更新にはログインセッション属性は含まれておらず、Cloud Directory に存在するカスタム属性ルールまたはユーザー属性値に依存しています。
- 関連するスコープへの同意が得られている場合にのみ、この属性を生成するには、「 同意を必須とする」 チェックボックスを選択してください。
- すべての属性マッピングが追加されたら、OK をクリックします。 これらの変更は保存されないことに注意してください。
- アプリケーションで保存をクリックして、変更を保存します。
ID トークンとユーザー情報セクションを編集し、以下の手順を実行して
userinfo応答タイプを構成します。- userinfoのJWT応答チェック・ボックスを選択します。 userinfo応答は、JSON Web Token (JWT)フォーマットになります。
- ドロップダウン・リストから署名アルゴリズム を選択します。
- ドロップダウン・リストから署名認証を選択します。
ES256 署名アルゴリズムが選択されている場合、証明書は P-256 を指定した ECDSA でなければなりません。 ES384 署名アルゴリズムが選択されている場合、証明書は P-384 を指定した ECDSA でなければなりません。 ES512 署名アルゴリズムが選択されている場合、証明書は P-521を指定した ECDSA でなければなりません。
- ドロップダウン・リストから暗号化アルゴリズム を選択します。 暗号化が不要な場合は、なしを選択します。
- ドロップダウン・リストから 内容アルゴリズムを選択します。 暗号化が不要な場合は、なしを選択します。
- ドロップダウン・リストから暗号鍵を選択します。 ブランクのままにするか、暗号化が不要な場合はボックスをクリアします。
カスタム・ルール
手順 4 の「手順」で 「カスタムルール」 を選択した場合は、編集アイコンを選択して詳細ルール画面を表示してください。 「属性関数」 を参照してください。 構文文書に記述されているすべてのドメイン・オブジェクトが使用可能です。