検索

第9章 アイデンティティープロバイダーの統合

download PDF

Identity Broker は、サービスプロバイダーをアイデンティティープロバイダーに接続する中間サービスです。アイデンティティープロバイダーは外部アイデンティティープロバイダーとの関係を作成し、プロバイダーのアイデンティティーを使用してサービスプロバイダーが公開する内部サービスにアクセスします。

ユーザーの観点からすると、アイデンティティーブローカーは、セキュリティードメインおよびレルムのアイデンティティーを管理するユーザー中心の一元的な方法を提供します。アカウントをアイデンティティープロバイダーからの 1 つまたは複数のアイデンティティーとリンクすることや、プロバイダーからの ID 情報に基づいてアカウントを作成することができます。

アイデンティティープロバイダーは特定のプロトコルに基づき、これを使用して認証を行い認証および認可情報をユーザーに送付します。以下をアイデンティティープロバイダーとすることができます。

  • Facebook、Google、Twitter などのソーシャルプロバイダー。
  • そのユーザーがお客様のサービスにアクセスする必要があるビジネスパートナー。
  • 統合するクラウドベースのアイデンティティーサービス。

通常、Red Hat build of Keycloak では、以下のプロトコルのアイデンティティープロバイダーがベースとなります。

  • SAML v2.0
  • OpenID Connect v1.0
  • OAuth v2.0

9.1. ブローカーの概要

Red Hat build of Keycloak をアイデンティティーブローカーとして使用する場合、Red Hat build of Keycloak は特定のレルムで認証する際に認証情報の提供をユーザーに強制しません。Red Hat build of Keycloak には、認証できるアイデンティティープロバイダーのリストが表示されます。

デフォルトのアイデンティティプロバイダーを設定すると、Red Hat build of Keycloak はユーザーをデフォルトのプロバイダーにリダイレクトします。

注記

プロトコルによって異なる認証フローが必要になる場合があります。Red Hat build of Keycloak でサポートされるすべてのアイデンティティープロバイダーは、次のフローを使用します。

アイデンティティーブローカーフロー

Identity broker flow

  1. 認証されていないユーザーは、クライアントアプリケーションの保護されているリソースを要求します。
  2. クライアントアプリケーションは、認証のためにユーザーを Red Hat build of Keycloak にリダイレクトします。
  3. Red Hat build of Keycloak では、レルム内に設定されたアイデンティティプロバイダーのリストを含むログインページが表示されます。
  4. ユーザーは、ボタンまたはリンクをクリックしてアイデンティティープロバイダーの 1 つを選択します。
  5. Red Hat build of Keycloak は、ターゲットのアイデンティティープロバイダーに認証要求を発行して認証を要求し、ユーザーをアイデンティティープロバイダーのログインページにリダイレクトします。管理者は、すでに管理コンソールのアイデンティティープロバイダーの接続プロパティーおよびその他の設定オプションを設定しています。
  6. ユーザーは、アイデンティティープロバイダーと認証を行うための認証情報または同意を提供します。
  7. アイデンティティプロバイダーによる認証が成功すると、ユーザーは認証応答とともに Red Hat build of Keycloak にリダイレクトされます。通常、応答には、Red Hat build of Keycloak がアイデンティティープロバイダーの認証を信頼し、ユーザー情報を取得するために使用するセキュリティートークンが含まれます。
  8. Red Hat build of Keycloak は、アイデンティティプロバイダーからの応答が有効かチェックします。応答が有効で、かつそのユーザーがまだ存在していない場合、Red Hat build of Keycloak はユーザーをインポートして作成します。トークンに必要な情報が含まれていない場合、Red Hat build of Keycloak はアイデンティティープロバイダーに追加のユーザー情報を求める場合があります。この動作は ID フェデレーション です。ユーザーがすでに存在する場合、Red Hat build of Keycloak は、アイデンティティープロバイダーから返されたアイデンティティーを既存のアカウントにリンクするようユーザーに要求します。この動作は、アカウントのリンク です。Red Hat build of Keycloak を使用すると、Account linking を設定し、First Login Flow で指定できます。このステップで、Red Hat build of Keycloak はユーザーを認証し、サービスプロバイダー内の要求されたリソースにアクセスするためのトークンを発行します。
  9. ユーザーが認証されると、Red Hat build of Keycloak は、ローカル認証時に発行されたトークンを送信することで、ユーザーをサービスプロバイダーにリダイレクトします。
  10. サービスプロバイダーは Red Hat build of Keycloak からトークンを受け取り、保護されたリソースへのアクセスを許可します。

このフローのバリエーションが可能です。たとえば、クライアントアプリケーションは、アイデンティティープロバイダーのリストを表示するのではなく特定のプロバイダーを要求するか、アイデンティティーのフェデレーションを行う前にユーザーに追加情報の提供を強制するように Red Hat build of Keycloak を設定できます。

認証プロセスの最後に、Red Hat build of Keycloak がそのトークンをクライアントアプリケーションに発行します。クライアントアプリケーションは外部のアイデンティティープロバイダーから分離されるため、クライアントアプリケーションのプロトコルやユーザーのアイデンティティーの検証方法を確認できません。プロバイダーが把握する必要があるのは Red Hat build of Keycloak だけです。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.