OpenOpen SourceSource SolutionSolution TechnologyTechnology

OpenAMOpenAM((OpenSSOOpenSSO)) のご紹介のご紹介

オープンソース・ソリューション・テクノロジ株式会社 2010/12/1 野村 健太郎

Copyright © 2010 Open Source Solution Technology - 1 - 目次

 会社紹介

 OpenAM(OpenSSO)のご紹介 – 概要、開発の歴史 – シングルサインオン方式 – 認証方式(認証連鎖による多様素認証) – レルムによるユーザー管理 – 冗長化 – 導入事例

 OpenAM(OpenSSO)デモ

Copyright © 2010 Open Source Solution Technology - 2 - 会社紹介

Copyright © 2010 Open Source Solution Technology - 3 - 会社紹介 オープンソース・ソリューション・テクノロジ株式会社オープンソース・ソリューション・テクノロジ株式会社

 OSOSに依存しないに依存しないOSSOSSのソリューションのソリューションを中心に提供を中心に提供 – Windows/Solaris から Linux への移行も支援!

 OSSOSSを利用した認証基盤構築を利用した認証基盤構築が得意分野が得意分野 – LDAP認証、Windowsドメイン認証、Webアプリケーション認証、 クラウド認証

 Samba,OpenLDAP,OpenAM,IDMSamba,OpenLDAP,OpenAM,IDMなどによる認などによる認 証統合証統合//シングルサインオン、シングルサインオン、IDID管理ソリューションを管理ソリューションを 提供提供 – OSSの製品パッケージ・製品サポートを提供 – OSSの改良、バグ修正などコンサルティングにも対応

Copyright © 2010 Open Source Solution Technology - 4 - OSSTechのソリューション領域

システム管理者

ID管理 ID管理 ID管理

Active Directory Google Apps

Salesforce

ファイルファイルサーバ LDAP Web アプリ クラウド サーバー

Windows ドメインログオン ログイン ログイン

ユーザー

Copyright © 2010 Open Source Solution Technology - 5 - OSSTechのソリューション導入効果

Unicorn IDM ID管理

システム管理者 ID連携

Active Directory Google Apps

Salesforce

ファイルサーバ Web アプリ ファイル LDAP クラウド サーバー SSO

Windows ドメインログオン ログイン

ユーザー

Copyright © 2010 Open Source Solution Technology - 6 - OpenAM((OpenSSOOpenSSO)) 概要

Copyright © 2010 Open Source Solution Technology - 7 - OpenAMとは

 Webアプリケーションにおけるシングルサインオンを実 現するためのプラットフォームとなるソフトウェア – シングルサインオン(SSO):一度のログイン操作さえ完了 すれば、複数の Web アプリケーションにログイン操作すること なくログインすることが可能

 ユーザー情報を格納するためのユーザーリポジトリ (ユーザーデータストア)として様々な LDAP サーバー 、RDBに対応 – RDBへの対応は OpenAM からサポート開始

 SAML、OpenID、OAuth、ID-WSFなどの認証・認 可に関連した複数のプロトコルをサポート

Copyright © 2010 Open Source Solution Technology - 8 - OpenAMの歴史 - その1

AOLによる AOLからの 認証連携 オープン 買収 分離 機能の強化 ソース化!

開発 主体 Netscape iPlanet

製品名 dsame Identity Server Access Manager OpenSSO

Copyright © 2010 Open Source Solution Technology - 9 - OpenAMの歴史 - その2

Oracle OpenSSO は非戦略的な製品 による買収 という位置づけ

Sun Oracle

OpenSSO Oracle OpenSSO

ForgeRock社

Oracleから OpenAM 分離 新プロジェクト OSSTech の開始! との協業

Copyright © 2010 Open Source Solution Technology - 10 - OpenAMのこれから(技術面)  OpenAM は OpenSSO の正常進化形 – OpenSSO を担当していたエンジニアが中心になり Forgerock社を設立 – ベースにするソースコードが同じ – 最新の Ver. 9.5 では多量のバグフィックスを適用 – OpenSSOと完全互換

 クラウド対応 – Google Apps, Salesforce とのシングルサインオン (SAML)連携機能を強化 – GUI による操作でシングルサインオン設定が可能

 機能拡充 – ワンタイムパスワード機能の追加 – ユーザーリポジトリしてRDBをサポート

Copyright © 2010 Open Source Solution Technology - 11 - OpenAMのこれから(ビジネス面)

 ベンダ独自のパッケージングも可能 – 生体認証などの独自認証方式を組み合わせる – ID管理システムと組み合わせる – OSSTech 版 OpenAM の特徴  OpenLDAP 用拡張スキーマを提供  ID管理製品(Unicorn IDM)との組合わせ  Google Apps シングルサインオンソリューションを提供

 需要 – 日本では多くが新規ユーザー – 企業・大学などの認証基盤として OpenAM を利用 – クラウドにおける認証基盤として OpenAM を利用 – 既存ユーザー(Sun Access Manager、OpenSSO)からの 移行(米国、ヨーロッパ)

Copyright © 2010 Open Source Solution Technology - 12 - OpenAMの機能(その1)

多様なシングルサインオン方式

Copyright © 2010 Open Source Solution Technology - 13 - シングルサインオンの方式(1)

SAML

OpenAM (SAML IdP) ・認証基盤

(1)ログイン Webアプリ (SAML SP) アサーション (認証情報) Web SAML Application ユーザー (2)Webアプリへアクセス

WebアプリがSAMLに 対応している必要がある

※この図は、HTTP Redirect Binding/HTTP POST Binding の場合の例です。

Copyright © 2010 Open Source Solution Technology - 14 - シングルサインオンの方式(2) エージェント方式 OpenAM(認証サーバ) (3)Cookieの (1)ログイン 正当性を確認 Webサーバー

ユーザ Web Cookie Agent 情報 Application ユーザー (2)Webアプリへアクセス リバースプロキシ方式 リバースプロキシ HTTP Web ヘッダー Application (1)ログイン ユーザー (3)Webアプリへアクセス (2)ユーザー認証 OpenAM (認証サーバ)

Copyright © 2010 Open Source Solution Technology - 15 - シングルサインオンの方式(3) 代理認証方式

ID/パスワードを 初回アクセス時のみ 代理で送信する Webアプリ (1)ログイン OpenAM Form認証

ID/パスワード ID PW ユーザー (3)代理認証 (2)ユーザー認証

(4)代理認証後は直接アクセス

Copyright © 2010 Open Source Solution Technology - 16 - OpenAMの機能- シングルサインオン

 SAMLによるシングルサインオン – Secure Assertion Markup Lauguage – 認証、認可、ユーザ属性情報などをXMLで送受信するための フレームワーク – 標準化団体OASISにより策定 – GoogleApps、Salesforceなどが採用

 エージェント方式 – SSO対象のWebアプリが動作するサーバー上にアクセス制御 用のモジュールを配置する方式 – サーバーのバージョンに影響を受ける

Copyright © 2010 Open Source Solution Technology - 17 - OpenAMの機能 - シングルサインオン

 リバースプロキシ方式 – リバースプロキシを使用してアクセス制御を行う – ユーザーデータの受け渡しはHTTPヘッダーを利用 – SSO対象Webアプリのバージョンや設定変更の影響が少な い – リバースプロキシが性能上のボトルネックになる可能性がある

 代理認証方式 – SSO対象Webアプリの既存ログイン画面に対して、OpenAM がユーザーの代理でログインID/パスワードを送信する – SSO対象Webアプリの改修が不要 – 細かなアクセス制御はできない(ログイン処理の代理実行の み)

Copyright © 2010 Open Source Solution Technology - 18 - OpenAMの機能(その2)

認証方式(多様素認証)

Copyright © 2010 Open Source Solution Technology - 19 - OpenAMの機能-データストアと認証方式

認証方式 □ワンタイムパスワード □Windows Desktop SSO □クライアント証明書 □外部DB Web □認証連鎖 Application OpenAM

ログイン Web ID SSO ログイン PW Application ユーザー Web User Application Data Store

ユーザーデータストア (ユーザー情報DB) □Active Directory □OpenLDAP □RDB

Copyright © 2010 Open Source Solution Technology - 20 - OpenAMの機能 - 認証方式

 基本的には OpenAM のユーザーデータストアに保存 された ID/パスワードにより認証を行なう

 ユーザー認証時に外部のデータベースを参照すること も可能 – LDAP、Active Directory、RADIUS、RDB(JDBC)

 よりセキュアな認証方式も使用可能 – ワンタイムパスワード(電子メールを利用) – クライアント証明書による認証 – Windows Desktop SSO(統合Windows認証)

 複数の認証方式を組み合わせて使用可能:認証連鎖認証連鎖

Copyright © 2010 Open Source Solution Technology - 21 - OpenAMの機能 - ユーザー情報DB

 ユーザーデータストア – OpenAMのユーザー情報を格納するLDAPサーバー/データ ベースサーバー  Active Directory  Open LDAP  Sun Directory Server  OpenDS(Sun Directory Server のオープンソース版。OpenAMに標 準で組み込まれている)  RDB(OpenAMから対応)

Copyright © 2010 Open Source Solution Technology - 22 - OpenAMの機能 - 認証連鎖  多様素認証の必要性 – 複数の認証方式を組合わせて認証を行うことにより個々の認 証方式の欠点を補完

 認証連鎖認証連鎖 – 複数の認証方式を組み合わせて利用可能 – 認証方式にはそれぞれ適用条件を指定する  必須:失敗したらそこで終了  十分:成功したらそこで終了  必要:成功しても失敗しても次に継続  任意:認証結果には関係しない付随的な処理

認証方式1(必須) 認証方式2(必須) ログイン完了 ID/PW認証 ワンタイムパスワード

Copyright © 2010 Open Source Solution Technology - 23 - OpenAMの機能(その3)

「レルム」によるユーザー管理

Copyright © 2010 Open Source Solution Technology - 24 - OpenAMの機能 - レルム

 「レルム」:OpenAMの設定を管理するための単位の

 以下の設定をレルム単位で管理 – ユーザーデータストア(LDAPベースDN、検索フィルタなども 指定可能) – アクセス制御ポリシー – 認証方式

 基本的には、ユーザー情報DB単位でレルムを分ける

 レルム毎に管理者を置き管理を委任することが可能

Copyright © 2010 Open Source Solution Technology - 25 - OpenAMの機能 - レルム使用の具体例

 複数組織(複数の企業など)のシングルサインオン基盤を OpenAM で構築し、組織毎に設定を行なう  組織内に存在する複数の DB を一つのレルムに登録し、全ての ユーザーに同一のシングルサインオン環境を提供する(例B)  DB内の特定のユーザーに対してのみ、シングルサイオン可能に する(例C) OpenAM

レルムC レルムA レルムB

Copyright © 2010 Open Source Solution Technology - 26 - OpenAMの機能(その4)

冗長化

Copyright © 2010 Open Source Solution Technology - 27 - OpenAMの機能 - 冗長化

シングルサーバ構成 OpenAM

User Data Store

サイト構成 セッション フェールオーバー 構成 Load Balancer Load Balancer

OpenAM OpenAM OpenAM OpenAM セッション セッション フォワーディング フォワーディング セッション セッション 情報 情報 User User セッションフェールオーバー Data Data User User Store レプリケーション Store Data Data /マルチマスタ Store レプリケーション Store /マルチマスタ Copyright © 2010 Open Source Solution Technology - 28 - OpenAM(OpenSSO)の 導入事例

Copyright © 2010 Open Source Solution Technology - 29 - 事例紹介

 九州工業大学様 – OpenSSO + OpenLDAP を使ったシングルサインオンシステ ムを構築 – シングルサインオン方式  SAML  リバースプロキシ

 その他

Copyright © 2010 Open Source Solution Technology - 30 - OpenAMデモ

Copyright © 2010 Open Source Solution Technology - 31 - OpenAM デモ環境

LAN インターネット (ノートPC内に仮想環境を構築) OpenAM (SAML IdP) (SAML SP)

Google Apps

ログイン Salesforce アサーション (認証情報)

ユーザー

※Google Apps の SAML は HTTP Redirect Binding/HTTP POST Binding を採用しています。

Copyright © 2010 Open Source Solution Technology - 32 - OpenAM デモ内容

 (1)SAMLによるシングルサインオン – Google Apps と Salesforce にシングルサインオンでアクセ スする

 (2)認証連鎖 – ワンタイムパスワード認証を追加して二要素認証を行なう

Copyright © 2010 Open Source Solution Technology - 33 - まとめ

 OpenAM(OpenSSO)はシングルサインオンを実現す るための基盤となるソフトウェアです

 ユーザーの Web アプリへのアクセス時の利便性の向 上・セキュリティの強化に役立ちます

 OpenAMは長い期間をかけて着実に進化してきました。 今後も開発は継続し、最新の機能が取り込まれていきま す(クラウド対応など)

Copyright © 2010 Open Source Solution Technology - 34 - ご清聴ありがとうございました

Copyright © 2010 Open Source Solution Technology - 35 -