Open Source Solution Technology
第1回 OpenSSO&OpenAMコンソーシアム 技術セミナー

OpenAM入門
オープンソース・ソリューション・テクノロジ（株）
2010/11/18
小田切 耕司、岩片 靖、野村 健太郎
Copyright © 2010 Open Source Solution Technology

- 1 -

目次
 OpenSSO/OpenAMの歴史
 OpenAMになって変わったこと 基本的な機能 デモ

Copyright © 2010 Open Source Solution Technology- 2 -OpenSSO/OpenAMの歴史

Copyright © 2010 Open Source Solution Technology- 3 -OpenSSO/OpenAMの歴史 (Part 1)
認証連携
機能の強化

AOLによる買収
AOLからの分離

世界各地で独自に開発

Netscape

iPlanet

Sun・Netscape Alliance

iPlanet

dsame

オープン
ソース化決定！

Sun Microsystems
Liberty Alliance

Sun Java System
Sun ONE(Federated)

Identity ServerAccess Manager

Copyright © 2010 Open Source Solution Technology

SunOpenSSO- 4 -OpenSSO/OpenAMの歴史 (Part 2)
ForgeRock社
設立
Oracleによる買収

Oracleからの分離

OSSTechとの協業

ForgeRock
OracleSun

新プロジェクトの開始!
OpenSSO

OpenAM

Oracle OpenSSO

非戦略的な製品という位置づけ
Copyright © 2010 Open Source Solution Technology- 5 -OpenAMになって変わったこと

Copyright © 2010 Open Source Solution Technology- 6 -正常な進化形
 作っている人が同じ–OpenSSOを担当していたエンジニアが中心になり
Forgerockを設立

 ベースにするソースコードが同じ–

最新のVer. 9.5では多量のバグフィックスを適用

 ユーザも同じ場合がほとんど–

既存ユーザからの移行促進（米国、ヨーロッパ）–

日本では多くが新規ユーザ

Copyright © 2010 Open Source Solution Technology- 7 -提供形態の変化 (予想も含む） 他のＯＳＳとの整合性強化–

リポジトリとしてのOpenLDAP, OpenDS, MySQL–

動作プラットフォームとしての CentOS, Tomcat

 ベンダ独自のパッケージング–

弊社ではOpenLDAP用拡張スキーマを提供

 得意分野と組合わせた統合ソリューション
–生体認証等の認証方式との組み合わせ–

プロビジョニングシステムとの組み合わせ–

人事管理システムとの組み合わせ–

弊社ではUnicorn IDマネージャと組合わせてGoogle Appsとのシング
ルサインオン ソリューションを提供
Copyright © 2010 Open Source Solution Technology- 8 -最新版における機能強化ポイント
 クラウド対応–

Google Apps, SalesforceとのSAML連携を強化–

ＧＵＩによる操作で連携設定が可能

 OpenDSの最新版を内蔵–

Version 2.3 安定版–

標準ツールの添付

 多量のバグフィックス–

OpenSSO Expressで開発してきたユーザへの対応–

OpenAMへの移行促進

Copyright © 2010 Open Source Solution Technology- 9 -OpenAMの基本機能（その１）認証方式と多要素認証

Copyright © 2010 Open Source Solution Technology- 10 -

多要素認証
複数の認証方式を組合わせて認証を行うことにより個々の認証方式の欠点を補完 厳密なユーザ認証– 異なるタイプの認証方式を組合わせることが重要
 使い勝手の向上– いつも同じ認証方式が使えるとは限らない– 状況により要求される認証の精度が異なる
 認証方式間での連携– 組合わせて使うことを前提にしている認証方式もある

Copyright © 2010 Open Source Solution Technology- 11 -

OpenAM の認証連鎖
認証方式を組合わせる方法を指定する
 認証方式にはそれぞれ適用条件を指定する

十分：成功したらそこで終了– 必要：成功しても失敗しても次に継続– 必須：失敗したらそこで終了– 任意：認証結果には関係しない付随的な処理– 認証成功時には認証方式に応じて認証レベルが設定される
認証方式１（十分）認証方式２（必要）評価

認証方式３（任意）評価

Copyright © 2010 Open Source Solution Technology- 12 -

認証連鎖の例１．Windows Desktop SSO
Windows Server
2000/2003/2008
ActiveDirectory

①

ドメ
イン
ログオン

チケット発行

自動チケット送付②

OpenAM③

認証、認可、属性情報

利用④
Copyright © 2010 Open Source Solution Technology- 13 -

認証連鎖の例１．Windows Desktop SSO
WindowsドメインログオンするだけでＷｅｂアプリケーションにもＳＳＯが可能になる便利な方式
 いつも、全てのユーザがドメインログオン可能であるとは限らない– リモート・アクセスの場合– 非常勤社員の場合
 通常のユーザＩＤ・パスワードによる認証と組み合わせて以下のように認証連鎖構成する– Windows Desktop SSO: 十分– ユーザＩＤ・パスワードによる認証：必須

Copyright © 2010 Open Source Solution Technology- 14 -

認証連鎖の例２．ワンタイムパスワード
通常のユーザＩＤ・パスワードによる認証
ユーザＩＤ・パスワード
認証成功

ワンタイム・パスワード要求
ユーザの携帯電話ワンタイム
パスワードの入力画面+HMAC

OpenAM
同時に携帯電話へワンタイム・パスワードを送付

ワンタイム・パスワード+HMAC返送
認証成功

ワンタイム・パスワード認証

Copyright © 2010 Open Source Solution Technology- 15 -

認証連鎖の例２．ワンタイムパスワード
 所持物認証と知識認証の組合わせによる厳密なユーザ認証が可能
 携帯電話を使うことによる利点–

導入コストの低減–

所持品の軽減 フィッシングへの対応–

HMACを利用–両方のパスワードが盗まれた場合は問題l

Copyright © 2010 Open Source Solution Technology- 16 -

認証連鎖の応用例●●

Windows Desktop SSOによる認証は便利なのでぜひ使いたいが全てのユーザがドメインログオン可能とは限らない
ワンタイム・パスワードは厳密な認証が出来る点は良いが、いつも携帯電話を開いてパスワードを確認するのは面倒だ ２つを組合わせることにより便利かつ厳密な認証を行うことが可能– Windows Desktop SSO: 十分– ユーザＩＤ・パスワードによる認証： 必須– ワンタイム・パスワードによる認証： 必須
Copyright © 2010 Open Source Solution Technology- 17 -

OpenAMの基本機能（その２）
レルムと委任によるユーザ管理

Copyright © 2010 Open Source Solution Technology- 18 -

レルムの基本
 レルム：設定を管理するための単位

ユーザリポジトリ（OpenLDAP, OpenDS, AD, RDB...)– アクセス制御ポリシー– 認証方式 ユーザは複数のレルムの所属することが可能
 ひとつのレルムに複数のリポジトリを設定可能
 レルム毎に管理者を置き管理を委任することが可能–OpenAMLDAPで認証するレルム

ADで認証するレルム

同一ユーザのエントリも可OpenDS

OpenLDAP

Active Directory

Copyright © 2010 Open Source Solution Technology- 19 -

レルム使用の具体例
 社員は組織別に分けられてLDAPサーバに保存されている
 社内Projectでは組織を横断してメンバーが参加する
 管理は組織単位で行う他にProject単位でも行いたい

組織単位のレルム：ベースＤＮを指定– プロジェクト単位のレルム：ユーザ属性をフィルタに指定– 管理を各レルムの管理者に委任–

経理部レルムou = 経理部

o = OSSTech

Project Ａ レルム

ou = 企画部

ou = 技術部

技術部レルム•経理 一郎•企画 一郎- ProjectA 参加•技術 一郎•経理 次郎•企画 次郎•技術 次郎- ProjectA 参加- ProjectB 参加

Copyright © 2010 Open Source Solution Technology- ProjectB 参加- 20 -

OpenAMの基本機能（その３）多様なシングルサインオン方式

Copyright © 2010 Open Source Solution Technology- 21 -

様々なシングルサインオン方式
 エージェント方式

保護対象のアプリが動作するサーバ上にアクセス制御用のモジュールを配置する方式– APIレベルでの細かな連携が可能– 保護対象のアプリやサーバのバージョンや設定変更に影響されやすい– リバースプロキシ方式

リバースプロキシを使ってアクセス制御を行う方式– データの受け渡し方法がHTTPヘッダに限定– 保護対象のバージョンや設定変更の影響が少ない– 性能のボトルネックになる可能性も–

Copyright © 2010 Open Source Solution Technology- 22 -

SAMLを使ったシングルサインオン
 ＳＡＭＬ

Secure Assertion Markup Lauguage– 認証、認可、ユーザ属性情報などをXMLで送受信するためのフレームワーク– 標準化団体OASISにより策定– 通常はサイト間連携で使用–

Copyright © 2010 Open Source Solution Technology- 23 -

エージェント方式

認証サーバ(OpenAM)

Cookieの正当性を確認

ログイン

ユーザ

CookieWebアプリケーション

Agent

ユーザ
情報

Webアプリへアクセス

Copyright © 2010 Open Source Solution Technology

Web
Application- 24 -

リバースプロキシ方式

リバースプロキシ

Webサーバ/Appサーバ

ユーザ
アクセス

ログイン

リクエストのフォワード

Web
Application

認証、認可、ユーザ属性

認証サーバ(OpenAM)

Copyright © 2010 Open Source Solution Technology- 25 -

SAMLによるシングルサインオンIdP(Identity Provider）
OpenAM
SP(Service Provider)

ログイン

ユーザ

アサーション

SPへアクセス

SAML Web
Application

Copyright © 2010 Open Source Solution Technology- 26 -

OpenAMの基本機能（その４）
アクセス制御ポリシー

Copyright © 2010 Open Source Solution Technology- 27 -

OpenAMのアクセス制御
アクセス制御ポリシー

誰が＋• 所属組織、グループ• ロール• 認証方式（認証レベル）• 個人• アクセス方法

何に対してURLを正規表現で指定＋

どのような操作ができるか
POST & GET…を定めたルールの集まり

Copyright © 2010 Open Source Solution Technology- 28 -

本日のまとめ OpenAMは長い期間をかけて着実に進化してきました OpenAMの最新版はクラウド対応と安定稼動を目標としています コミュニティ・ベースの開発になることによって、様々な提供形態が出現することが予想されます OpenAMはユーザ管理、シングルサインオン、アクセス制

御に関して様々なオプションを提供しています OpenAMはGoogle Appsとの連携に使いたいというユーザから、本格的なクラウドサービスを構築したいというユーザまで幅広く対応可能です
Copyright © 2010 Open Source Solution Technology- 29 -

OpenAM デモ

Copyright © 2010 Open Source Solution Technology- 30 -

OpenAM デモ内容
 （１）SAMLによるシングルサインオン–

Google Apps と Salesforce にシングルサインオンでアクセスする （2）認証連鎖–

ワンタイムパスワード認証を追加して二要素認証を行なう

Copyright © 2010 Open Source Solution Technology- 31 -

OpenAM デモ環境
LAN
（ノートPC内に仮想環境を構築）
OpenAM

インターネット（SAML SP）

（SAML IdP）

Google Apps
ログイン

アサーション（認証情報）

Salesforce

ユーザー※この図は SAML におけるHTTP Redirect Binding/HTTP POST Binding の場合の例です
Copyright © 2010 Open Source Solution Technology- 32 -

参考情報
 SAML 仕様–

http://www.oasis-open.org/specs/index.php#saml

 弊社の OpenSSO 社内勉強会の資料–

http://www.osstech.co.jp/techinfo/opensso

Copyright © 2010 Open Source Solution Technology- 33 -