Keycloakで実現するシングルサインオンの3つの認証方式と利用方法

シングルサインオン(SSO)とは、最初にアプリケーションを利用する時に、一度keycloakでログイン認証をすれば、以降は全てのアプリケーションやWebサービスをkeycloakへ再ログインなしに利用できる認証の仕組みのことです。

 

 

 

 

 

 

 

KeycloakでSSOを実現する場合、ターゲットのアプリケーション側との認証の構成としては

  1. フェデレーション
  2. クライアントアダプター(エージェント)
  3. 代理認証のリバースプロキシ

などがあります。ターゲットのアプリに合わせてSSOを構成します。

 

 

 

1.フェデレーション

アプリケーション側が、SAML認証やOIDC認証に対応していれば簡単にシングルサインオンが構成できます。メジャーなSaaSではフェデレーションに対応しているケースが多くあります。

アプリケーション側はSAML認証の場合には「SPの機能」もしくはOIDC認証の場合には「RPの機能」などを有しているので、Keycloakとアプリケーション間でシングルサインオンを構成します。

 

2.クライアントアダプター

 

 

アプリケーション側がSAML認証やOIDC認証に対応していない場合、Keycloakのクライアントアダプター(エージェント)をアプリケーション側に組み込み、SAMLのSP機能もしくはOIDCのRP機能で動作させることでシングルサインオンを構成します。

アプリケーション側には、クライアントアダプターを組み込む「改修が必要」となります。

 

 

 

 

3.代理認証のリバースプロキシ

SAMLやOIDC認証対応の代理入力機能を持つリバースプロキシは、Webアプリケーションの前に配置された中継サーバーです。

ユーザーがリバースプロキシにアクセスすると、Keycloak / idPがユーザーの認証を行い、認証に成功するとリバースプロキシがWebアプリケーションにユーザー情報「ID / パスワード」を代理入力します。

これにより、Webアプリケーションを「改修することなくSSOに対応」させることができます。LAN内に設置のWebアプリケーションにもアクセスができます。

 

 

 

 

 

 

 

SSO認証方式の比較

方式 アプリの改修 対応のアプリ
1.フェデレーション 不要 Web *1
2.クライアントアダプター 必要 クライアントアダプターに依存
3.代理認証対応リバースプロキシ 不要 Web

*1 Web以外も可能

 

認証の設定

フェデレーションの設定

 

 

 

 

 

 

 

Keycloak / idP 側

  •  Keycloakの設定
  •     Keycloak / idP のメタデータをエクスポート
  •  ターゲット / SP側のメタデータをインポート

 

ターゲット / SP 側

  •  Keycloak / idP側のメタデータをインポート
  •    ターゲット / SP側のメタデータをエクスポート

 

構成例

 

 

 

 

 

 

 

 

クライアントアダプターの設定

Keycloakで利用できる各種のクライアントアダプターが提供されています。

 

Keycloak / idP 側

  •  Keycloakの設定
  •     アプリの登録

 

ターゲット / SP 側

  • クライアントアダプターのインストール&設定

 

構成例

 

 

 

 

 

 

 

 

代理認証のリバースプロキシの設定

SAML認証やOIDC認証に未対応のWebアプリケーションに対して、SAMLやOIDC認証の機能を有したリバースプロキシを利用して、リバースプロキシからWebアプリケーションにユーザー情報「ID / パスワード」を代理入力して認証までを行います。

Webアプリケーションを改修することなく、SSOに対応させることができます。

 

 

 

 

 

 

idP連携のSAMLやOIDC認証の代理認証対応のID認識型リバースプロキシ

 Powered BLUE Reverse-Proxy with SSO

を利用します。

 

 

特徴

  1. ユーザーは、Webアプリの 「ID / パスワード」 の入力不要
  2. ユーザーには、Webアプリの「ID / パスワード」の公開は不要
  3. Webは改修不要
  4. ブラウザのみで利用(プラグイン不要)

 

構成例

 

ターゲットの「Webシステム」は WAN / DMZ / LAN の任意の場所の設置に対応しています

 

代理認証のSSO手順

 

 

 

  1. 代理認証のリバースプロキシへアクセス
  2. 初回のみ  idP へアクセス
  3. idP の認証後にリバースプロキシからWebへアカウント情報を代理入力
  4. バックエンドのWebへ自動ログイン

 

 

 

 

 

 

 

Powered BLUE リバースプロキシの基本構成

  •  OS  RockyLinux   /  RedHat
  •  各種のアプリ
  •  GUIでのサーバーやアプリの設定

 

 

 

 

 

 

 

 

管理者の負担軽減での運用

Powered BLUE アプライアンスは、管理者の負担を軽減してシステムの構築や運用に対応しています。

 

  1.  サーバーの自己監視やサービスの自動再起動機能
  2.  パッチのスケジュールアップデート機能
  3.  管理者への通知機能

 

 

 

 

 

 

 

 

リバースプロキシの運用先

 

 

 

 

 

オンプレミスやクラウド環境、仮想基盤など自社管理での運用に対応

  • VMware / Hyper-V
  • AWS / Azure / FUJITSU Hybrid IT Service FJcloud-O (富士通) / WebARENA / ALTUS / VPSなど

 

仮想アプライアンスのイメージでの提供により

  • 仮想サーバーのイメージインポートやオンプレミスでの運用に対応

 

 

お問合せ

 

 

 

ご質問やご相談など