オープンソース技術解説セミナー
クラウドとイントラネットのログインを統合する
シングルサインオン・ハブ をオープンソースで構築しよう

2011 年 10 月 21 日
オープンソース・ソリューション・テクノロジ株式会社
小田切 耕司
http://www.osstech.co.jp/
Copyright © 2011 Open Source Solution Technology, Corp.

1

目次

●

会社紹介

●

シングルサインオンとは●OpenAMのご紹介●

シングルサインオン方式●

OpenAMで実現するシングルサインオン・ハブ●

ID管理との組み合わせで導入効果倍増

2

Copyright © 2011 Open Source Solution Technology, Corp.

2

会社紹介

Copyright © 2011 Open Source Solution Technology, Corp.

3

会社紹介

オープンソース・ソリューション・テクノロジ株式会社●

OSに依存しないOSSのソリューションを中心に提供➢●

Linuxだけでなく、Windows/Solaris/FreeBSDなどへも対応！

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

Windows Active Directory, CLUSTERPROなどの商用ソフ
4トのソリューションも提供➢

商用製品とOSSの柔軟な組み合わせに対応
Copyright © 2011 Open Source Solution Technology, Corp.

4

OSSTechのソリューション領域
システム管理者

ID管理

ID管理

ID管理

Active Directory

Google Apps
Salesforce
ファイル
サーバー

LDAP

Windows
ドメインログオン

クラウド

Webアプリ

ログイン

ログイン

5

ユーザー
Copyright © 2011 Open Source Solution Technology, Corp.

5

OSSTechのソリューション導入効果
Unicorn IDM

ID管理
システム管理者

ID連携
Active Directory

Google Apps
Salesforce
Web アプリ
ファイル
サーバー

LDAP

クラウド

SSO

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

ユーザー
Copyright © 2011 Open Source Solution Technology, Corp.

6社員著作紹介●●2005年10月, 日経BP社 「セキュアなSambaサーバの作り方」
2006年5月, 技術評論社 「LDAP Super Expert」➢●

2010年9月, 技術評論社 「Software Design」➢●

クラウド対策もこれでOK！ 統合認証システム構築術2011 年 9 月～ , 日経 BP 社 「日経 Linux 」➢●

巻頭企画［新規/移行］LDAPディレクトリサービス導入計
画

連載中！「 Linux 認証のすべて」

その他➢

http://www.osstech.co.jp/company

7

Copyright © 2011 Open Source Solution Technology, Corp.

7

シングルサインオンとはCopyright © 2011 Open Source Solution Technology, Corp.

8

システムには必ず必要な「認証」

企業・組織内ActiveDirectory

クラウド
Google Apps
Salesforce

ファイルサーバ
ファイル
LDAP
サーバー

メールサーバー
Client/Server

Windowsログオン/
LDAP 認証

ログイン

Webアプリログイン

ログイン

システムの数だけ9「認証」が必要ユーザー
Copyright © 2011 Open Source Solution Technology, Corp.

9シングルサインオンとは一度のログイン操作さえ完了すれば、複数のWebアプリケーションに認証操作することなくアクセスすることが可能になる。
（以後、SSO と略すことも）ActiveDirectory

Google Apps
Salesforce

ファイルサーバ

ファイル
サーバー

LDAP

メールサーバー/クラサバ

クラウド

Webアプリ

SSO
Windowsログオン/
LDAP 認証

ログイン
ログイン
10

ユーザー
Copyright © 2011 Open Source Solution Technology, Corp.

今日はこの部分のお話
10

今こそシングルサインオン！
なぜ今シングルサインオンが必要なのか

Copyright © 2011 Open Source Solution Technology, Corp.

11

SSO（ID管理）の需要推移
さらなる需要が見込まれる

需要

J-SOX法対応（内部統制）

クラウドの普及

12

2008年

2009年

2010年

Copyright © 2011 Open Source Solution Technology, Corp.

2011年

時期
12

今後の需要●●クラウド（外部のWebサービスの業務利用）が普及したことで、ID管理・シングルサインオンの需要が急上昇
よくある問い合わせ➢➢➢社内にある多数のWebアプリ（オンプレミス）へのアクセスをシングルサインオンで管理し、利便性を向上させたい
社内のWebアプリと外部のWebサービス（GoogleApps、Salesforceなど）をシングルサインオン連携したい（クラウドサービス利用者）
学術認証フェデレーション（Shibboleth）に参加したい13（文教系）
Copyright © 2011 Open Source Solution Technology, Corp.

13

OpenAM （旧 OpenSSO ）の紹介

Copyright © 2011 Open Source Solution Technology, Corp.

14

OpenAMとは●

●

●

●

Webアプリケーションにおけるシングルサインオンを実現するためのプラットフォームとなるオープンソースソフトウェア
SAML 、 OpenID 、 OAuth 、 ID-WSFなどの認
ID-WSF
証・認可に関連した複数のプロトコルをサポート
ユーザー情報を格納するためのユーザーリポジトリ（ユーザーデータストア）として様々な LDAP サー
バー、RDBに対応充実した管理 GUI
15

Copyright © 2011 Open Source Solution Technology, Corp.

15

OpenAMの歴史 - その1

AOLによる買収

AOLからの分離

開発
主体

Netscape

iPlanet

製品名dsame

Identity Server

認証連携
機能の強化

オープンソース化！

Sun Microsystems

Access ManagerOpenSSO

16

Copyright © 2011 Open Source Solution Technology, Corp.

16

OpenAMの歴史 - その2
Oracleによる買収

OpenSSO は非戦略的な製品という位置づけ

Sun

OracleOpenSSO

Oracle OpenSSO

ForgeRock社
Oracleから分離

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

17

OSSTechとの協業

Copyright © 2011 Open Source Solution Technology, Corp.

17

OpenAMのこれから（技術面）● OpenAM は OpenSSO の正常進化形

●

●

●

➢

OpenSSO を担当していたエンジニアが中心になりForgerock社を設立➢OpenSSOと完全互換(ベースにするソースコードが同じ)

クラウド対応強化➢Google Apps, Salesforce とのシングルサインオン（SAML）連携機能を強化➢ＧＵＩ による操作でシングルサインオン設定が可能

機能拡充➢ワンタイムパスワード機能の追加➢

ユーザーリポジトリしてRDBをサポート

次期バージョン（OpenAM 10）では更なる認証機能の強化を検討中➢

リスクベース認証：ID/PW認証に加え、ユーザーのアクセス元IPアドレス、ブラウザ（デバイス）情報などから不正アクセスのリスクを判定し、必要に応じて多要素
18認証などをユーザーに要求する。

Copyright © 2011 Open Source Solution Technology, Corp.

18

OpenAMのこれから（ビジネス面）●

ベンダ独自のパッケージングも可能➢

生体認証などの独自認証方式を組み合わせる➢

ID管理システムと組み合わせる➢

OSSTech 版 OpenAM の特徴
OpenLDAP 用拡張スキーマを提供

ID管理製品（Unicorn IDM）との組合わせ
Google Apps/Salesforce/学認などと連携するシングルサインオンソ
リューションを提供●需要➢

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

企業・大学などの認証基盤として OpenAM を利用➢

クラウドにおける認証基盤・認証強化ツールとして OpenAM を利用➢➢

既存ユーザー（Sun Access Manager、OpenSSO）からの移行（米国、ヨー
19
ロッパ）
複数のシングルサインオン環境を統合する”ハブ”システムとして利用
Copyright © 2011 Open Source Solution Technology, Corp.

19

シングルサインオン方式

Copyright © 2011 Open Source Solution Technology, Corp.

20何が違う？「認証」と「認可」●●

認証（Authentication）➢

本人性を確認する➢

ID/パスワード認証、生体認証、ワンタイムパスワード認証など

認可（Authorization）➢

あるリソースへアクセスするための権限を与える（認証後のアクセス制御）

21

Copyright © 2011 Open Source Solution Technology, Corp.

21

シングルサインオンの方式（1）
SAML
Identity Provider (IdP)
・認証基盤
・ID管理
Service Provider (SP)（１）ログインアサーション（認証情報）

ユーザー（２）サービスへアクセス（ログイン操作なし）

SAML

Web
Application

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

22※この図は、HTTP Redirect Binding/HTTP POST Binding の場合の例です。
Copyright © 2011 Open Source Solution Technology, Corp.

22

シングルサインオンの方式（2）エージェント方式
OpenAM（認証サーバ）（3）Cookieの正当性を確認（１）ログイン

Cookie

ユーザー

Agent

Webサーバー
ユーザ
情報

Web
Application（2）Webアプリへアクセス

リバースプロキシ方式
リバースプロキシ
HTTPヘッダー

ユーザー（1）ログイン

Web
Application（3）Webアプリへアクセス（2）ユーザー認証

OpenAM（認証サーバ）
Copyright © 2011 Open Source Solution Technology, Corp.

23

23

シングルサインオン方式の比較
方式

用途

SAML

認証
（認可）

エージェント

リバース
プロキシ

（認証）
認可

（認証）
認可

改修

長所・短所

必要

■他のWebサービス・SSO製品との互換性が高い■細かなアクセス制御をするには実装が大変■異なるネットワーク/ドメイン構成でも対応可能

必要■細かなアクセス制御（認可）が可能■Webサーバー/APサーバーに対応したエージェントが必要■できれば同じネットワーク/ドメインがよい

必要or不要■細かなアクセス制御（認可）が可能■ユーザー情報をHTTPヘッダーで渡す場合は改修が必要な場合あり■ID/PWを代理でHTTP POSTする場合は改修不要■リバースプロキシがボトルネックになる可能性もある■できれば同じネットワーク/ドメインがよい 24

Copyright © 2011 Open Source Solution Technology, Corp.

24

シングルサイオン方式の採用基準
WebアプリケーションがSAMLに対応しているか

Yes

SAMLを採用

No
Webアプリケーションの改修が可能かNo

リバースプロキシ方式(ID/PWの代理POST)を採用

Yes
Yes

WebアプリケーションをSAMLに対応させることができるか

SAML を実装

No
エージェントがWebサーバ/APサーバに対応しているかYes

エージェント方式を採用
25

No

リバースプロキシ方式(ユーザー情報のヘッダー渡し)を採用

Copyright © 2011 Open Source Solution Technology, Corp.

25

OpenAM で実現する
シングルサインオン・ハブCopyright © 2011 Open Source Solution Technology, Corp.

26

これからのSSO - 混在する複数のSSO環境
Shibboleth IdP で SSO を実現(Shibboleth は SAML を利用しているが、仕様上 OpenAM では代替不可能)

SAML IdP を導入してSSO を実現

Google Apps

SAML

Shibboleth
SPSAML
Shibboleth
IdP

Salesforce

クラウドSSOセグメント

学認（Shibboleth）
SSOセグメント

リバースプロキシ/
エージェント

大幅な改修はしたくな
ため、エージェント型/リバースプロキシ型でSSO を実現

27

社内SSOセグメント

Copyright © 2011 Open Source Solution Technology, Corp.

27

これからのSSO - 混在する複数のSSO環境●●

今後は複数のシングルサインオン環境（仮に”シングルサインオンセグメント”と表現）が混在するようなシステムの需要が予想される発生する課題
1つのシングルサインオンソフトウェアでは全てのアプリケーションの認証を行えない場合がある➢ 同じプロトコル（SAMLなど）を実装しているソフトウェアでも、代替不可能な場合がある➢

●

例：Shibboleth（学認）は SAML を実装しているが、Shibboleth は独自の仕組みも実装しているため、他の SAML を実装したソフトウェアでは代替できない

シングルサインオンセグメントを統合管理する必要がある➢

複数のインタフェースを装備し、プロトコルや仕様の違いを吸収できる柔軟なシングルサインオンソフトウェアが必要
28

OpenAM
OpenAM なら実現可能！
Copyright © 2011 Open Source Solution Technology, Corp.

28

OpenAMで実現するシングルサインオン・ハブ
Google Apps
Salesforce

SA

クラウドSSOセグメント

ST
E
R PI
A

ML

OpenAM（認証サーバー）

Shibboleth
IdP

Shibboleth
SP

学認（Shibboleth）
SSOセグメント

リバース
プロキシ/
エージェント社内SSOセグメント

SSO セグメントを結合するOpenAM
ハブ
セグメントを結合するハブとしてハブとしてOpenAM を利用。
を利用。
ハブ29
ユーザーは OpenAM
OpenAM へのログインさえ完了していれば、へのログインさえ完了していれば、全てのアプリに全てのアプリに SSO
SSO 可能可能
Copyright © 2011 Open Source Solution Technology, Corp.

29

シングルサインオン・ハブを実現する ための機能
●

認証機能
➢

●

ユーザー情報保存機能➢●

ユーザーの本人性を確認する。セキュリティ強化のために、多要素認証が望ましい。

認証情報や他システムに連携するユーザー情報を保存する

外部システムと連携可能なインタフェース
フェデレーション（SAML、OpenID、OAuthなど）➢ REST API➢ SDK➢Copyright © 2011 Open Source Solution Technology, Corp.

30

30

OpenAM の機能
認証機能
ユーザー情報保存機能

Copyright © 2011 Open Source Solution Technology, Corp.

31

OpenAMの機能-データストアと認証方式
認証方式□ワンタイムパスワード□Windows Desktop SSO□クライアント証明書
□外部DB
□認証連鎖

ログインID

ユーザーログインPWUserDataStore

ユーザー データストア（ユーザー情報DB）□Active Directory32□OpenLDAP□RDB

Copyright © 2011 Open Source Solution Technology, Corp.

32

OpenAMの機能 - 認証方式●●

基本的には OpenAM のユーザーデータストアに保存されたID/パスワードにより認証を行なう
ユーザー認証時に外部のデータベースを参照することも可能➢●

LDAP、Active Directory、RADIUS、RDB（JDBC）

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

複数の認証方式を組み合わせて使用可能：認証連鎖
Copyright © 2011 Open Source Solution Technology, Corp.

33

33

OpenAMの機能 - ユーザーデータストア●

OpenAMのユーザー情報を格納するLDAPサーバー/データベースサーバー
Active Directory➢ Open LDAP （弊社は独自にサポート）➢ Sun Directory Server➢ OpenDS（Sun Directory Server のオープンソース版。OpenAMに標準で組み込まれている）➢ RDB（Oracle、MySQL）➢

34

Copyright © 2011 Open Source Solution Technology, Corp.

34

OpenAMの機能 - 認証連鎖●

多様素認証の必要性➢●

複数の認証方式を組合わせて認証を行うことでセキュリ
ティを強化

認証連鎖
➢

複数の認証方式を任意に組み合わせて利用可能

認証方式１（必須）
ID/PW認証

認証方式２（必須）
ワンタイムパスワード

ログイン完了35

Copyright © 2011 Open Source Solution Technology, Corp.

35

OpenAMの機能 - レルム●●「レルム」：OpenAMの設定を管理するための単位以下の設定をレルム単位で管理
ユーザーデータストア（LDAPベースDN、検索フィルタなども指定可能）➢ アクセス制御ポリシー➢ 認証方式➢●

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

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

Copyright © 2011 Open Source Solution Technology, Corp.

36

OpenAMの機能 - レルム使用の具体例●●●

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

レルムC
37
レルムA

レルムB
Copyright © 2011 Open Source Solution Technology, Corp.

37

OpenAM の機能
外部システムと連携可能なインタフェース

Copyright © 2011 Open Source Solution Technology, Corp.

38

シングルサインオン・ハブを実現する ための機能●

OpenAM が持つインタフェース➢

フェデレーション機能
➢

エージェント➢

様々な Web サーバー/アプリケーションサーバーに対応したエージェントを準備。アプリケーションの開発工数を最小限に抑えながら、OpenAM で管理可能とする。

REST API➢

SAML、OpenID、OAuth、ID-WSFなどの標準プロトコルを利用してSSO を実現。

認証情報の検証などを行う API を装備。HTTP でアクセス可能であり、システム間通信に利用可能。他の認証サーバーが受け取った ID/PWや Cookie を OpenAM に送信し、認証を行うなどする。

ClientSDK（Java）
39
OpenAMの認証部分のコア機能を利用するアプリの開発が可能。
OpenAM の現在の OpenID、OAuth の機能は ClientSDK を利用。
Copyright © 2011 Open Source Solution Technology, Corp.

39

ID 管理との組み合わせで効果倍増！

Copyright © 2011 Open Source Solution Technology, Corp.

40

ID管理との連携●

シングルサインオンとID管理は一緒に使うことで最大の効果を発揮する
ユーザーID/パスワードはシングルサインオンシステムで一元管理可能でも、各アプリケーション・サービス毎に必要なユーザー情報は、基本的には個々に管理される➢ ID管理ツールなどを利用したID一元管理をしなければ、シングルサインオンシステムの運用は破綻する➢●

クラウドサービスにおいても、ID管理は必要
クラウドサービス側にもユーザー情報を保存することから、ID管理の対象となる➢ ID管理用のAPI（プログラムインタフェース）を備えているものが多41
い（Google Apps、Yahoo! など）➢Copyright © 2011 Open Source Solution Technology, Corp.

41

ID 管理 & SSO
ID 管理ツール

ID管理
システム管理者

ID 連携
ActiveDirectory

Google Apps
Salesforce
ファイルサーバ

ファイル
サーバー

LDAP

メールサーバー/
クラサバ

クラウド

Webアプリ

SSO
Windowsログオン/
LDAP 認証

ログイン
ログイン
42

ユーザー
Copyright © 2011 Open Source Solution Technology, Corp.

42

オープンソース・ソリューション・テクノロジ株式会社
http://www.osstech.co.jp/
Copyright © 2011 Open Source Solution Technology, Corp.

43