検索

9.5. OpenID Connect v1.0 アイデンティティープロバイダー

download PDF

Red Hat build of Keycloak は、OpenID Connect プロトコルに基づいてアイデンティティープロバイダーのブローカーとして機能します。ユーザーを認証しアクセスを認可するには、これらのアイデンティティープロバイダー (IDP) は、仕様によって定義された Authorization Code Flow をサポートする必要があります。

手順

  1. メニューで Identity Providers をクリックします。
  2. Add provider リストから OpenID Connect v1.0 を選択します。

    アイデンティティープロバイダーの追加

    Add Identity Provider

  3. 初期設定オプションを入力します。設定オプションの詳細については、一般的な IDP 設定 を参照してください。

    表9.2 OpenID の接続設定
    設定説明

    Authorization URL

    OIDC プロトコルが要求する認可 URL エンドポイント。

    Token URL

    OIDC プロトコルが要求するトークン URL エンドポイント。

    Logout URL

    OIDC プロトコルのログアウト URL エンドポイント。この値はオプションです。

    Backchannel Logout

    ユーザーをログアウトするための、IDP へのバックグラウンド (アウトオブバウンド) REST リクエスト。一部の IDP は、ブラウザークッキーを使用してセッションを認識するため、ブラウザーリダイレクトによってしかログアウトを実行しません。

    User Info URL

    OIDC プロトコルが定義するエンドポイント。このエンドポイントは、ユーザープロファイル情報を参照します。

    Client Authentication

    Red Hat build of Keycloak が Authorization Code Flow で使用するクライアント認証メソッドを定義します。JWT が秘密鍵で署名されている場合、Red Hat build of Keycloak はレルムの秘密鍵を使用します。他の場合は、クライアントシークレットを定義します。詳細は、クライアント認証の仕様 を参照してください。

    Client ID

    外部 IDP への OIDC クライアントとして動作するレルム。認可コードフローを使用して外部 IDP と対話する場合は、レルムに OIDC クライアント ID が必要です。

    Client Secret

    外部 ボールト からのクライアントシークレット。このシークレットは、Authorization Code Flow を使用している場合は必要になります。

    Client Assertion Signature Algorithm

    クライアント認証として JWT アサーションを作成する署名アルゴリズム。秘密鍵で署名した JWT または jwt としてのクライアントシークレットの場合、必要になります。アルゴリズムを指定しないと、以下のアルゴリズムが適合されます。RS256 は、秘密鍵で署名した JWT の場合に適合されます。HS256 は、jwt としてのクライアントシークレットの場合に適合されます。

    Client Assertion Audience

    クライアントアサーションに使用するオーディエンス。デフォルト値は IDP のトークンエンドポイント URL です。

    Issuer

    Red Hat build of Keycloak は、IDP からの応答で発行者の要求をこの値と照合して検証します。

    Default Scopes

    Red Hat build of Keycloak が認証要求とともに送信する OIDC スコープのリスト。デフォルト値は openid です。各スコープはスペースで区切ります。

    Prompt

    OIDC 仕様の prompt パラメーター。このパラメーターを使用して、再認証およびその他のオプションを強制的に実行できます。詳細は、仕様を参照してください。

    Accepts prompt=none forward from client

    prompt=none クエリーパラメーターが含まれる転送された認証リクエストを IDP が受け入れるかどうかを指定します。レルムが prompt=none の認証リクエストを受信すると、レルムはユーザーが現在認証されているかを確認し、ユーザーがログインしていない場合は login_required エラーを返します。Red Hat build of Keycloak が認証リクエストのデフォルト IDP を決定する場合 (kc_idp_hint クエリーパラメーターを使用するか、レルムのデフォルト IDP を持つ場合)、prompt=none の認証要求をデフォルトの IDP に転送できます。デフォルトの IDP は、そこにユーザーの認証をチェックします。すべての IDP が prompt=none の要求をサポートしているわけではないため、Red Hat build of Keycloak は、認証要求をリダイレクトする前に、このスイッチを使用してデフォルトの IDP がパラメーターをサポートすることを示します。

    ユーザーが IDP で認証されていない場合、クライアントは login_required エラーを受け取ります。ユーザーが IDP で認証されている場合、Red Hat build of Keycloak がユーザーの対話を求める認証ページを表示する必要があると、クライアントは interaction_required エラーを受け取る場合があります。この認証には、必須アクション (パスワードの変更など)、合意画面、first broker login フローまたは post broker login フローで表示が設定された画面が含まれます。

    Validate Signatures

    Red Hat build of Keycloak が、この IDP によって署名された外部 ID トークンの署名を検証するかどうかを指定します。ON の場合、Red Hat build of Keycloak は外部の OIDC IDP の公開鍵を認識している必要があります。パフォーマンス上の目的で、Red Hat build of Keycloak は外部の OIDC アイデンティティープロバイダーの公開鍵をキャッシュします。

    Use JWKS URL

    このスイッチは、Validate SignaturesON の場合に適用されます。Use JWKS URLON の場合、Red Hat build of Keycloak は JWKS URL から IDP の公開鍵をダウンロードします。アイデンティティープロバイダーが新しいキーペアを生成すると、新しいキーがダウンロードされます。OFF の場合、Red Hat build of Keycloak はデータベースからの公開鍵 (または証明書) を使用します。そのため、IDP キーペアが変更された場合は、新しいキーを Red Hat build of Keycloak データベースにもインポートします。

    JWKS URL

    IDP JWK キーの場所をポイントする URL。詳細は、JWK の仕様 を参照してください。外部の Red Hat build of Keycloak を IDP として使用する場合、仲介された Red Hat build of Keycloak が http://broker-keycloak:8180 で実行されていて、そのレルムが test であれば、http://broker-keycloak:8180/realms/test/protocol/openid-connect/certs などの URL を使用できます。

    Validating Public Key

    Red Hat build of Keycloak が外部 IDP 署名を検証するために使用する PEM 形式の公開鍵。このキーは、Use JWKS URLOFF の場合に適用されます。

    Validating Public Key Id

    この設定は、Use JWKS URLOFF の場合に適用されます。この設定は、公開鍵の ID を PEM 形式で指定します。キーからキー ID を計算する標準的な方法がないため、外部 アイデンティティープロバイダーは Red Hat build of Keycloak が使用するアルゴリズムとは異なるアルゴリズムを使用できます。このフィールドの値が指定されていない場合、Red Hat build of Keycloak は、外部 IDP によって送信されるキー ID に関係なく、すべての要求に検証用の公開鍵を使用します。ON の場合、このフィールドの値がプロバイダーからの署名を検証するために Red Hat build of Keycloak によって使用されるキー ID となり、IDP によって指定されたキー ID と一致する必要があります。

OpenID Provider Metadata を参照する URL またはファイルを指定して、この設定データをすべてインポートできます。Red Hat build of Keycloak の 外部 IDP に接続する場合は、<root>/realms/{realm-name}/.well-known/openid-configuration から IDP 設定をインポートできます。このリンクは、IDP に関するメタデータを記述する JSON ドキュメントです。

プロバイダーで Json Web Encryption (JWE) ID トークンまたは UserInfo 応答を使用する場合、IDP は Red Hat build of Keycloak で使用する公開鍵を知っている必要があります。プロバイダーは、さまざまな暗号化アルゴリズムに対して定義された レルムキー を使用してトークンを復号化します。Red Hat build of Keycloak は、IDP がキーを自動ダウンロードするために使用できる標準の JWKS エンドポイント を提供します。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.