keycloak」カテゴリーアーカイブ

Keycloakで生体認証(パスワードレス認証)を導入する方法と構成

FIDO2を利用

Keycloakは、FIDO2(ファイド・ツー)に対応した生体認証をサポートしています。FIDO2は、生体認証の統一規格です。この機能を活かし、指紋認証、顔認証、虹彩認証などの生体認証を使用して、Keycloakにログインすることができます。

また、iPhoneやAndroidなどのスマートフォンもFIDO2に対応しています。普段利用している携帯端末の指紋認証や顔認証機能をそのまま、Keycloakのログイン認証に利用することができます。生体認証を利用することで、パスワードレス認証での運用も可能となり利便性も向上します。

 

 

 

 

 

 

ペアリングとアクセス許可

FIDO2の生体認証では、利用できる端末とユーザーがペアリングされて固定されるため、第3者のアクセスを防止できるメリットがあります。

 アクセス許可 = ① 端末の固定 + ② 指定のユーザー

例 会社が支給した「Aさん用の端末」を「Aさん」が利用する場合にアクセスを許可する

 

 

生体認証

生体認証は、パスワードに比べて安全性と利便性に優れています。パスワードは、忘れたり、盗まれたり、なりすまされたりするリスクがあります。一方、生体認証は、本人の身体的特徴を用いて認証を行うため、これらのリスクを軽減することができます。

生体認証の特徴は、以下のとおりです。

  • 偽造やなりすましが困難
  • 忘れたり、紛失したりする心配がない

 

生体認証には

  • 指紋認証
  • 静脈認証
  • 顔認証
  • 虹彩認証

などがあります。

 

 

 

FIDO2規格

FIDO2は、生体認証に際して認証機器とブラウザ、およびidPの認証を行う統一規格です。

 

 

FIDO2 のメリットは、PCやスマートフォン、ブラウザが対応済のため、生体認証の導入に際して「ご利用中のPCや携帯端末をそのまま利用できる」環境がすでに整っています。

  1. 主要なブラウザは、すべてFIDO2に対応済
  2. Windows 10 / 11 やMacintosh、アンドロイドなどもFIDO2に対応済
  3. iPhone / iPad はSafari (ブラウザ)が対応済
機種 アンドロイド IPhone / iPad Windows Macintosh ブラウザ
FIDO2対応

 

 

 

FIDO2での生体情報の保護

FIDO2では、ブラウザを経由してユーザ側の生体認証器とidP / Keycloakの通信を行います

  • CTAP(利用者側の認証機器とブラウザ間の規格)
  • WebAuthn(ブラウザとidP / Keycloak サーバー間の規格)

   生体情報は、利用者側が保有する「認証器」内に保存&保護されます
  公開鍵暗号化方式(公開鍵・秘密鍵)を利用します

 

 

 FIDO2では、生体情報はユーザーの保有する認証器外へ漏洩しません 

 

 

 

 

 

 

 

FIDO2の生体認証で必要な機器

  1. Keycloak / idP
  2. SAMLやOIDC認証に対応のWebやリバースプロキシ
  3. スマートフォン(アンドロイド・iPhone・iPad)や PC端末+FIDO2対応の生体認証器
  4. ブラウザ

 

 

 

システム側の環境

  • idP / Keycloak
  • SP / Web
  • KeycloakとWebはSAML認証やOIDC認証で連携
idP / Keycloak SAML / OIDC認証のWeb

 

ユーザー側の環境

 

iPhone / iPadの場合(内蔵の生体認証器を利用)

iOS 14以降 ブラウザ / Safari Touch ID / Face ID

 

アンドロイドの場合(内蔵の生体認証器を利用)

Android 7 以降 FIDO2対応のブラウザ 指紋認証 / 顔認証

 

汎用PCの場合(USB接続の生体認証器を利用)

Windows 10 / 11
Macintosh
FIDO2対応のブラウザ FIDO2・指紋認証器

 

 

機器の構成

① idP認証サーバー

 

 

 

 

FIDO2に対応のKeycloakのアプライアンス

idP 「Powered BLUE for idP

を利用します。

 

② SAML/OIDC認証に対応のWebサーバー

 

 

 

 

SAMLやOIDC認証のWebサイトを構築・運用する機能を有しているアプライアンス

SP 「Powered BLUE Reverse-Proxy with SSO

を利用できます。

 

③ SAML / OIDC認証に対応のリバースプロキシ(代理認証機能)

 

 

 

 

SAML / OIDC認証対応のリバースプロキシから既存のWebへ「ID / パスワード」を代理入力&代理認証の機能を有しているアプライアンス

SP 「Powered BLUE ReverseProxy for SSO / IDaaS

を利用できます。

SAML / OIDC認証に未対応の既存のWebを改修不要でSSOのメンバーとして構成します。

 

 

 

SSO構成 ①+②

  • SAML/OIDC認証のWebサイトへアクセス

 

 

 

 

 

 

 

 

 

SSO構成 ①+③

  • SAML/OIDC認証対応のリバースプロキシから既存Webへ「ID / パスワード」を代理入力&代理認証でSSO

 

 

 

*SAML/OIDCに未対応の既存Webを改修不要で、代理入力&代理認証でSSO化に対応します

 

 

生体認証のSSO

 

iPhone / iPad  + Touch ID / Face ID  のユーザー

 

 

 

例 生体認証を利用したパスワードレス認証
(「iPhone / iPad の所持認証」+「生体認証」の2要素認証 )

例 生体認証を利用した3要素認証
(「iPhone / iPad の所持認証」+「生体認証」+「パスワード認証」の3要素認証 )

 

① ターゲットWebへアクセス
② Keycloak認証 (初回のみ)
③ iPhoneのFace ID やTouch IDの認証機能を利用(初回のみ)
④ 認証後にWebへログイン

 

 

 

 

 

 

 

 

Android  + 指紋認証 / 顔認証 のユーザー

 

 

 

例 生体認証を利用したパスワードレス認証
(「Android の所持認証」+「生体認証」の2要素認証 )

例 生体認証を利用した3要素認証
(「Android の所持認証」+「生体認証」+「パスワード認証」の3要素認証 )

 

① ターゲットWebへアクセス
② Keycloak認証 (初回のみ)
③ Androidの顔認証や指紋認証機能を利用(初回のみ)
④ 認証後にWebへログイン

 

 

 

 

PC + FIDO2・指紋認証キー のユーザー

パスワードレス認証で運用のケース
(「認証器の所持認証」+「生体認証」= 2要素認証)

3要素認証での運用のケース
(「認証器の所持認証」+「パスワード認証」+「生体認証」= 3要素認証)

① ターゲットWebへアクセス
② Keycloak認証 (初回のみ)
③ FIDO2の指紋認証機能を利用(初回のみ)
④ 認証後にWebへログイン

 

 

各種Webへ生体認証でのSSO

一度のidP / Keycloakへの生体認証で、複数のWebシステムへのシングルサインオン

 

 

Powered BLUE アプライアンスの基本構成

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

 

 

 

 

 

 

 

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

Powered BLUE アプライアンスの統一的なGUIで、関連のアプライアンスはすべて「同一のGUI」で設定できるため、管理者の負担を軽減してシステムの構築や運用に対応しています。

 

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

 

 

 

 

 

 

 

KeycloakやSP(Webやリバースプロキシ)の運用先

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

生体認証対応 Keycloak SAML / OIDC対応Web SAML / OIDC対応リバースプロキシ
  • VMware / Hyper-V
  • AWS / Azure / FUJITSU Hybrid IT Service FJcloud-O (富士通) / WebARENA / VPSなど

 

こんな場合に

  • なりすましを防止したい
  • スマートフォンの生体認証を利用したい
  • 社員へ配布の端末からのみアクセスさせたい
  • パスワードレス認証で運用したい
  • 自社管理で生体認証システムを運用したい

 

 

 

 

本人
なりすまし  A

 

お問合せ

 

 

ご質問やご相談など