Open Source Solution Technology hbstudy#22 クラウド 時 代 の シングルサインオン オープンソース ソリューション テクノロジ 株 式 会 社 野 村 健 太 郎 2011/4/16-1 -
目 次 自 己 紹 介 シングルサインオンとは? なぜ 今 シングルサイン オン? OpenAMの 紹 介 シングルサインオンの 方 式 SAMLによるシングルサインオン ID 管 理 との 組 み 合 わせで 導 入 効 果 倍 増! プロトコル(SAML)の 話 が 大 半 なので 眠 くなるかも 適 宜 デモをはさんでいきます - 2 -
自 己 紹 介 野 村 健 太 郎 http://d.hatena.ne.jp/nomtech/ @nomnux あまり 更 新 してない オープンソース ソリューション テクノロジ( 株 )に 勤 務 http://www.osstech.co.jp/ オープンソースや 認 証 が 得 意 な 人 が 集 まってま OpenLDAP OpenAM(SSO) Samba 主 に SSO を 担 当 Software Design 2010 年 9 月 号 に 統 合 認 証 シングル サインオンの 記 事 を 執 筆 しました - 3 -
最 初 に 教 えてください シングルサインオンシステムを 日 常 的 に 何 かしら 使 っている シングルサインオンシステムを 開 発 構 築 している OpenAM(OpenSSO)を 使 ったことが ある - 4 -
シングルサインオンとは? - 5 -
システムには 必 ず 必 要 な 認 証 Active Directory 企 業 組 織 内 クラウド Google Apps Salesforce ファイル サーバー ファイルサーバ LDAP メールサーバー Client/Server Webアプリ Windowsログオン/ LDAP 認 証 ログイン ログイン ログイン ユーザー - 6 -
シングルサインオンとは 一 度 のログイン 操 作 さえ 完 了 すれば 複 数 のWebアプ リケーションに 認 証 操 作 することなくアクセスすることが 可 能 になる ( 以 後 SSO と 略 すことも) Active Directory Google Apps Salesforce ファイル サーバー ファイルサーバ LDAP Windowsログオン/ LDAP 認 証 メールサーバー/ クラサバ ログイン ユーザー Webアプリ ログイン SSO クラウド 今 日 は この 部 分 のお 話 - 7 -
なぜ 今 シングルサインオン? - 8 -
SSO(ID 管 理 )の 需 要 推 移 需 要 さらなる 需 要 が 見 込 まれる J-SOX 法 対 応 ( 内 部 統 制 ) クラウドの 普 及 2008 年 2009 年 2010 年 2011 年 時 期 - 9 -
今 後 の 需 要 クラウド( 外 部 のWebサービスの 業 務 利 用 )が 普 及 した ことで ID 管 理 シングルサインオンの 需 要 が 急 上 昇 よくある 問 い 合 わせ 社 内 にある 多 数 ありWebアプリ(オンプレミス)へのアクセスを シングルサインオンで 管 理 し 利 便 性 を 向 上 させたい 社 内 のWebアプリと 外 部 のWebサービス(Google Apps Salesforceなど)をシングルサインオン 連 携 した い(クラウドサービス 利 用 者 ) クラウド 基 盤 の 構 成 コンポーネントの 一 つとして シングル サインオンサービスを 提 供 したい(クラウドサービス 提 供 者 ) - 10 -
OpenAM( 旧 OpenSSO) の 紹 介 - 11 -
OpenAMとは Webアプリケーションにおけるシングルサインオンを 実 現 するためのプラットフォームとなるソフトウェア SAML OpenID OAuth ID-WSFなどの 認 証 認 可 に 関 連 した 複 数 のプロトコルをサポート 機 能 豊 富 で 管 理 インタフェースも 充 実 ( 悪 く 言 えば 複 雑 ) - 12 -
OpenAMの 歴 史 - その1 AOLによる 買 収 AOLからの 分 離 認 証 連 携 機 能 の 強 化 オープン ソース 化! 開 発 主 体 Netscape iplanet Sun Microsystems 製 品 名 dsame Identity Server Access Manager OpenSSO - 13 -
OpenAMの 歴 史 - その2 Oracle による 買 収 OpenSSO は 非 戦 略 的 な 製 品 という 位 置 づけ Sun Oracle OpenSSO Oracle OpenSSO ForgeRock 社 Oracleから 分 離 新 プロジェクト の 開 始! OpenAM - 14 -
シングルサインオンの 方 式 OpenAM を 前 提 とした 説 明 ですが 他 の SSO ソフトウェア SSO 製 品 でも だいたい 同 じような 感 じのはずです - 15 -
シングルサインオンの 方 式 (1) SAML Identity Provider (IdP) 認 証 基 盤 ID 管 理 (1)ログイン Service Provider (SP) ユーザー アサーション ( 認 証 情 報 ) (2)サービスへアクセス (ログイン 操 作 なし) SAML Web Application WebアプリがSAMLに 対 応 している 必 要 がある この 図 は HTTP Redirect Binding/HTTP POST Binding の 場 合 の 例 です - 16 -
シングルサインオンの 方 式 (2) 認 証 サーバ エージェント 方 式 (1)ログイン (3)Cookieの 正 当 性 を 確 認 Webサーバー ユーザー Cookie (2)Webアプリへアクセス Agent ユーザ 情 報 Web Application リバースプロキシ 方 式 リバースプロキシ HTTPヘッダー ID/PWを 代 理 POST ユーザー(1)ログイン (3)Webアプリへアクセス (2)ユーザー 認 証 Web Application 認 証 サーバ - 17 -
シングルサインオン 方 式 の 比 較 方 式 SAML Webアプリケー ションの 改 修 SAMLに 対 応 してい れば 不 要 長 所 短 所 標 準 的 な 仕 様 に 準 拠 したSSOシステムを 構 築 可 能 他 製 品 サービスとの 互 換 性 が 高 い WebアプリケーションがSAMLに 対 応 している 必 要 がある エージェント 方 式 必 要 Webアプリケーションへの 全 ての 通 信 をエー ジェントがフックする 細 かなアクセス 制 御 が 可 能 Webサーバー/APサーバーに 対 応 したエージェ ントが 必 要 リバース プロキシ 方 式 必 要 / 不 要 Webアプリケーションへのアクセスは 必 ずリバー スプロキシを 経 由 する 細 かなアクセス 制 御 が 可 能 ユーザー 情 報 をHTTPヘッダーで 渡 す 場 合 は 改 修 が 必 要 な 場 合 あり ID/PWを 代 理 でHTTP POSTする 場 合 は 改 修 不 要 リバースプロキシがボトルネックになる 可 能 性 も ある OpenAM を 前 提 とした 比 較 内 容 です - 18 -
シングルサイオン 方 式 の 採 用 基 準 Webアプリケーションが SAMLに 対 応 しているか Yes SAMLを 採 用 No Webアプリケーションの 改 修 が 可 能 か Yes WebアプリケーションをSAMLに 対 応 させることができるか No エージェントが Webサーバ/APサーバ に 対 応 しているか No Yes Yes リバースプロキシ 方 式 (ID/PWの 代 理 POST) を 採 用 SAMLを 実 装 エージェント 方 式 を 採 用 No リバースプロキシ 方 式 (ユーザー 情 報 のヘッダー 渡 し)を 採 用 - 19 -
設 計 上 のポイント ドメインやホスト 名 は 充 分 吟 味 して 決 定 する Webアプリの SSO においては ドメインやホスト 名 は 非 常 に 重 要 (Cookie SSLなどに 影 響 ) 一 度 SSO 環 境 を 構 築 すると 変 更 するのが 大 変 Cookie ドメインの 範 囲 は 可 能 な 限 り 限 定 する SSOの 方 式 によっては Cookieを 複 数 Webアプリ 間 で 共 有 することもある Cookie ドメインの 範 囲 が 広 すぎると やたらブラウザから Cookie が 送 出 されて 気 持 ち 悪 い.example.com とか.example.co.jp とか かといって ホスト Cookie ではSSO 環 境 の 構 築 が 困 難 理 想 は シングルサインオン 対 象 のWebアプリ 間 でのみ 有 効 なドメインとす るのがよいかも.sso.example.com.sso.example.co.jp など SAML に 関 してはこの 限 りではない( 異 なるドメイン 間 におけるSSOを 想 定 している) - 20 -
SAMLによるシングルサインオン - 概 要 - - 21 -
SAMLとは SAMLとは Secure Assertion Markup Lauguage 認 証 認 可 ユーザ 属 性 情 報 などをXMLで 送 受 信 するための 仕 様 標 準 的 な 仕 様 にしたがって 複 数 のWebサイト 間 におけるシン グルサインオンを 実 現 することが 可 能 Google Apps(SAML SP) Salesforce(SAML SP/SAML IdP) 学 術 認 証 フェデレーションなどが 採 用 公 式 サイト:http://saml.xml.org/ 仕 様 原 文 :http://www.oasisopen.org/specs/index.php#saml - 22 -
SAMLとは 抽 象 的 でよくわからん 独 断 と 偏 見 により 要 約 すると Webアプリにおける 認 証 処 理 を 外 部 のWebアプリで 代 わりに やってもらうための 仕 組 み とひとまず 覚 えてくださいm( )m - 23 -
何 が 違 う? 認 証 と 認 可 認 証 (Authentication) 本 人 性 を 確 認 する ID/パスワード 認 証 生 体 認 証 ワンタイムパスワード 認 証 認 可 (Authorization) あるリソースへアクセスするための 権 限 を 与 える( 認 証 後 のアクセス 制 御 ) SAMLでは 認 可 に 関 連 した 仕 様 も 定 められている 今 日 は 認 証 関 連 のお 話 - 24 -
SAMLキーワード Identity Provider(IdP): 認 証 認 可 の 情 報 を 提 供 する 役 割 を 担 う IdP で 認 証 されたユーザーは SP のサービスにアクセスできるようになる Service Provider(SP):シングルサインオン 対 象 の Web アプリケーショ ンなどを 意 味 する IdP が 発 行 した 認 証 認 可 の 情 報 に 応 じてクライアントに サービスを 提 供 する アサーション: IdPが 発 行 する 認 証 認 可 の 情 報 トラストサークル(Circle Of Trust):IdP と SP の 間 で 結 ばれた 信 頼 関 係 を 意 味 する シングルサインオンを 実 現 するためには IdP と SP との 間 で 事 前 に 信 頼 関 係 を 結 んでおく 必 要 がある アカウント 連 携 :IdP と SP の 間 でユーザーアカウントを 紐 付 けることを 意 味 する IdP と SP は 信 頼 関 係 を 結 んだ 後 アカウント 連 携 を 行 う 必 要 がある Federation: 連 携 の 意 味 SAML OpenIDなどの 認 証 認 可 に 関 わるプ ロトコルやその 仕 組 みの 総 称 として 使 われることがある 同 じ 言 葉 でも 他 のプロトコルでは 意 味 が 違 うことがあるので 注 意 - 25 -
SAMLによるシングルサインオン 認 証 基 盤 ID 管 理 (1)ログイン Identity Provider (IdP) Service Provider (SP) ユーザー アサーション ( 認 証 情 報 ) (2)サービスへアクセス (ログイン 操 作 なし) SAML Web Application WebアプリがSAMLに 対 応 している 必 要 がある 基 本 的 に セッションはユーザーとIdP 間 ユーザーとSP 間 それぞれで 管 理 この 図 は HTTP Redirect Binding/HTTP POST Binding の 場 合 の 例 です - 26 -
どこで SAML を 使 うか? 通 常 のWebアプリの ログイン 処 理 SAMLの 場 合 のWebアプリの ログイン 処 理 ユーザーがアクセス セッション 確 認 セッション 無 し 認 証 処 理 ( 本 人 性 の 確 認 ) セッション 有 り ユーザーがアクセス セッション 有 り セッション 確 認 セッション 無 し SAMLによる 認 証 セッション 生 成 セッション 生 成 サービス 提 供 サービス 提 供 Cookie を 利 用 したセッション 管 理 を 行 なう Web アプリの 場 合 の 例 - 27 -
WebアプリのSAML 対 応 (SAML SP 化 ) 自 力 でゼロから 実 装 Yes 神 マンドクセ 各 プログラミング 言 語 の SAMLサイブラリを 活 用 マンドクセ Yes 認 証 処 理 部 分 の 改 修 必 要 フレームワークの 場 合 は 改 修 が 大 変 かも SAMLを 話 すリバースプロキシ/ アプライアンス 的 なものを 導 入 Yes 既 存 アプリの 改 修 不 要 お 値 段 は 安 くはないでしょう - 28 -
参 考 - その 他 の 認 証 認 可 のプロトコル 認 証 (Authentication): 本 人 性 を 確 認 する 認 可 (Authorization):あるリソースへアクセスするための 権 限 を 与 える プロトコル 役 割 特 徴 SAML OpenID 認 証 認 可 認 証 B to B での 採 用 が 多 い Google Apps Salesforce 学 術 認 証 フェデレーション (Shibboleth) 属 性 情 報 の 提 供 方 法 なども 定 義 されている 実 際 のWebサービスなどでは ほとんどが 認 証 用 途 で 使 われている B to C での 採 用 が 多 い Google Yahoo! mixi はてな livedoor ATND 属 性 情 報 の 提 供 方 法 なども 定 義 されている OAuth 認 可 Twitter Facebook Google Webアプリ 間 でユーザー 情 報 を 共 有 する 際 に ユーザー 自 身 が 情 報 が 共 有 されることを 認 可 する WebAPI(REST)へのアクセス 制 御 などに 利 用 - 29 -
デモ 実 際 にSAMLでシングルサインオン してみる LAN (ノートPC 内 に 環 境 を 構 築 ) SAML IdP OpenAM インターネット SAML SP Google Apps ログイン アサーション Salesforce ユーザー - 30 -
SAMLによるシングルサインオン - シングルサインオン 環 境 の 構 築 - - 31 -
SAMLによるシングルサインオン 環 境 の 構 築 (1)IdPの 構 築 (3)IdPとSP 間 で 信 頼 関 係 を 結 ぶ (トラストサークルの 構 成 ) トラストサークル (2)SPの 構 築 IdP アカウント 連 携 アカウント 連 携 SP アカウント 連 携 ID/パスワードなど (4)アカウント 連 携 ユーザー 情 報 - 32 -
SAML - トラストサークル SP2 SP1 IdP SP2 SP2 トラストサークル 信 頼 の 輪 を 意 味 する(Circle Of Trust - CoT) トラストサークル 内 の SP に 対 してのみ SSO 可 能 IdP-SP 間 でお 互 いを 事 前 に 登 録 し トラストサークルを 構 成 し ておく 必 要 がある お 互 いの 証 明 書 を 交 換 する 一 つのトラストサークル 内 に 複 数 の IdP が 存 在 することもある - 33 -
SAML - アカウント 連 携 (1) アカウント 連 携 :IdP のアカウントと SP のアカウント を 紐 付 ける NameID というユーザー 識 別 子 を IdP と SP 間 で 共 有 することで 実 現 する NameID には 以 下 のものが 使 用 される メールアドレス ユーザー 属 性 情 報 (ユーザー 名 など Google Apps はユー ザー 名 を Name ID として 使 用 する) 仮 名 :ランダムな 文 字 列 によるユーザー 識 別 X.509 の Subject - 34 -
SAML - アカウント 連 携 (2) IdP ユーザーA IdP ユーザーA uid attr abc 仮 名 仮 名 による 連 携 SP ユーザーB ユーザー 属 性 情 報 による 連 携 SP ユーザーA IdP のアカウントと SP のアカウント を 仮 名 ( 仮 ID のようなもの)で 紐 付 ける 基 本 的 にユーザー 毎 に 設 定 する 初 回 のみ IdP と SP にそれぞれ のID/パスワードでログインする 必 要 がある IdP/SP 内 のアカウント 情 報 (ユー ザー ID など)を 隠 蔽 したままアカウ ント 連 携 可 能 IdP のアカウントと SP のアカウント をユーザー 属 性 で 直 接 連 携 Google Apps はこの 方 式 (トラスト サークルに 入 ることで 自 動 的 に 全 ユーザーのアカウント 連 携 が 有 効 化 ) 自 システム 内 のユーザー 属 性 情 報 の 一 部 を 相 手 に 知 られる - 35 -
SAMLにおけるアカウントライフサイクル SAML を 利 用 したシングルサインオン 環 境 における [アカウント 作 成 SSO アカウント 削 除 ] のサイクル アカウントの 作 成 アカウント 連 携 各 ユーザーがIdPとSP の 間 でアカウントを 連 携 することを 許 諾 する シングルサインオン サービス 利 用 ログアウト アカウント 連 携 の 解 除 アカウント 削 除 アカウント 連 携 完 了 後 にシングルサインオン 可 能 となる - 36 -
デモ 実 際 にSAMLのシングルサインオン 設 定 をやってみる IdP の 設 定 SAML IdP OpenAM SP の 設 定 SAML SP Google Apps ログイン アサーション Salesforce ユーザー - 37 -
SAMLによるシングルサインオン - シーケンス - - 38 -
2 通 りの 認 証 シーケンス SP-initiated SSO ユーザーは 最 初 にSPにアクセスし IdPでの 認 証 に 成 功 した 後 に 再 びSPにアクセスする IdP-initiated SSO ユーザーは 最 初 にIdPにアクセスし IdPでの 認 証 に 成 功 した 後 にSPにアクセスする - 39 -
SAMLにおけるSSO(SP-initiated SSO) IdP(OpenAM) SP 4 3 アサーション ( 認 証 情 報 ) 2 1 5 ユーザー 1.ユーザーが 未 認 証 の 状 態 で SP にアクセスする 2.SP は SAML 認 証 要 求 を IdP に 送 信 する 3.IdP はユーザーを 認 証 する 4.IdP での 認 証 に 成 功 すると IdP は SP に SAML 認 証 応 答 (ア サーションを 含 む)を 送 信 する 5.SP は 認 証 応 答 を 受 け 取 るとユーザーにコンテンツを 提 供 する この 図 は HTTP Redirect Binding/HTTP POST Binding の 場 合 の 例 です - 40 -
SAML 認 証 のシーケンス(SP-initiated SSO) ユーザー (ブラウザ) (1)SPへアクセス SP 認 証 要 求 生 成 (2)SAML 認 証 要 求 メッセージ(AuthnRequest) HTTP Redirect / HTTP POST IdP (OpenAM) (3-a)ユーザー 認 証 (ログイン 画 面 の 表 示 ) (3-b)ユーザー 認 証 (ログインID/PWの 送 付 ) (4)SAML 認 証 応 答 メッセージ(Response アサーションを 含 む) (5)コンテンツ HTTP Redirect / HTTP POST アサーション 生 成 この 図 は HTTP Redirect Binding/HTTP POST Binding の 場 合 の 例 です - 41 -
SAMLにおけるSSO(IdP-initiated SSO) IdP(OpenAM) SP 2 1 3 アサーション ( 認 証 情 報 ) 4 ユーザー 1.ユーザーが 未 認 証 の 状 態 で IdP にアクセスする 2.IdP はユーザーを 認 証 する 3.IdP での 認 証 に 成 功 すると IdP は SP に SAML 認 証 応 答 (ア サーションを 含 む)を 送 信 する 4.SP は 認 証 応 答 を 受 け 取 るとユーザーにコンテンツを 提 供 する この 図 は HTTP Redirect Binding/HTTP POST Binding の 場 合 の 例 です - 42 -
SAML 認 証 のシーケンス(IdP-initiated SSO) User Agent (ブラウザ) (1)IdPへアクセス SP IdP (OpenAM) (2-a)ユーザー 認 証 (ログイン 画 面 の 表 示 ) (2-b)ユーザー 認 証 (ログインID/PWの 送 付 ) (3)SAML 認 証 応 答 メッセージ(Response アサーションを 含 む) (4)コンテンツ HTTP Redirect / HTTP POST アサーション 生 成 この 図 は HTTP Redirect Binding/HTTP POST Binding の 場 合 の 例 です - 43 -
SAML メッセージの 送 受 信 方 法 HTTP Redirect/HTTP POST Binding ブラウザが 通 信 を 中 継 する(HTTP Redirect/HTTP POST を 利 用 ) IdP-SP 間 の 直 接 的 な 通 信 が 発 生 しない 方 式 説 明 特 徴 HTTP Redirect HTTP POST SAML メッセージを Base64 エンコードし URL パラ メータに 埋 め 込 んで GET メソッドで 送 信 (HTTP ス テータスコード 302/303 を 利 用 ) Google Apps は SAML 認 証 要 求 で 使 用 Base64 エンコードした SAML メッセージを HTMLフ Form に 埋 め 込 んで POST メソッドで 送 信 Google Apps Salesforce が 採 用 Google Apps はSAML 認 証 応 答 で 使 用 HTTP Artifact Binding IdP-SP 間 の 直 接 的 な 通 信 が 発 生 する アサーションへのリファレンスである Artifact をブラウザを 介 してIdPとSP の 間 で 送 受 信 する IdPと SP は Artifact を 利 用 して 直 接 相 手 に SAML 認 証 要 求 / 認 証 応 答 メッセージを 問 い 合 わせる Artifact のデータサイズは 小 さい URL が 長 すぎると ブラウザの URL の 長 さ 制 限 に 抵 触 する 可 能 性 がある 古 い 携 帯 ブ ラウザでは 使 えないことも IdP へのログイン SP への 遷 移 を 自 動 化 するには JavaScript を 利 用 して 自 動 的 に POST リクエストを 送 信 させる 必 要 がある HTTP POST Binding で Javascript が 使 われている 場 合 は セキュリティ 系 のツールに 引 っかかるかも - 44 -
SAML RelayState IdPで 認 証 が 完 了 した 後 に SPの 特 定 のURLに 遷 移 させる User Agent (ブラウザ) (1)SPへアクセス SP 認 証 後 に 最 初 にアクセス しようとしたコンテンツを 表 示 させたい (2)SAML 認 証 要 求 メッセージ(AuthnRequest) IdP (OpenAM) RelayStateというパラメーター に 遷 移 先 情 報 を 埋 め 込 む (3-a)ユーザー 認 証 (ログイン 画 面 )の 表 示 (3-b)ユーザー 認 証 (ログインID/PWの 送 付 ) (4)SAML 認 証 応 答 メッセージ(アサーションを 含 む) (5)コンテンツ RelayStateで 指 定 された 遷 移 先 へリダイレクトさせる この 図 は HTTP Redirect Binding/HTTP POST Binding の 場 合 の 例 です - 45 -
SAMLによるシングルサインオン - アサーション - - 46 -
SAML - アサーション IdP が 発 行 する ユーザーに 関 する 認 証 情 報 の XML アサーションの 改 竄 によるユーザーなりすましなどを 防 ぐために XML デジタル 署 名 を 付 加 する 事 前 に IdP の 証 明 書 を SP に 登 録 しておく 必 要 がある <saml:assertion xmlns:saml="urn:oasis:names:tc:saml:2.0:assertion" Version="2.0" ID="s2907181983bc6f588aeb045fca183d671224506ec" IssueInstant="2009-11- 18T08:28:09Z"> アサーション 発 行 者 アサーションのデジタル 署 名 ユーザー 識 別 子 (NameID) </saml:assertion> - 47 -
SAML - 認 証 要 求 認 証 応 答 認 証 要 求 (AuthnRequest) SPがIdPに 対 して ユーザーの 認 証 情 報 (アサーション)を 要 求 するメッセージ <samlp:authnrequest ID= xxx Version= 2.0 Destination= http://idp.osstech.co.jp/idp/sso > 認 証 要 求 情 報 </samlp:authnrequest> 認 証 応 答 (Response) IdPがSPにユーザーの 認 証 情 報 (アサーション)を 送 付 する メッセージ <samlp:response ID= xxx Version= 2.0 Destination http://sp.osstech.co.jp/sp/sso > < saml:assertion...> アサーション </saml:assertion> </samlp:authnrequest> - 48 -
デモ 実 際 にSAMLメッセージを 覗 いてみる ユーザー SP (ブラウザ) (1)SPへアクセス ここ (2)SAML 認 証 要 求 メッセージ(AuthnRequest) IdP (OpenAM) (3-a)ユーザー 認 証 (ログイン 画 面 )の 表 示 ここ (3-b)ユーザー 認 証 (ログインID/PWの 送 付 ) (4)SAML 認 証 応 答 メッセージ(Response アサーションを 含 む) (5)コンテンツ - 49 -
SAML 製 品 /サービス 選 定 のポイント SAML 仕 様 をフルスペックで 実 装 している 製 品 /サービスは 少 な いと 思 われる 特 に SAML SP 側 ではその(SPが 提 供 する)サービスに 必 要 な SAML 仕 様 しか 実 装 されていないことも IdP-initiated SSO には 対 応 しているが SP-initiated SSO には 対 応 していない RelayState に 対 応 していない SAML 対 応 製 品 /サービスを 選 定 する 際 は SAML 仕 様 がどこまで 実 装 されているか 確 認 することが 大 切 ( イケてない SSO 環 境 になってしまうことも ) - 50 -
SAMLによるシングルサインオン - ネットワーク 構 成 - - 51 -
SAML IdP のネットワーク 上 の 配 置 - その1 認 証 を 行 なうSAML IdP(OpenAM)を 社 内 LANに 設 置 すること で SAML SP(Google Apps Salesforceなど) へのアクセスを 社 内 のみからに 制 限 することが 可 能 俺 専 用 IdP を 作 ることも 可 能 ( 実 用 性 はあまり 無 い ) 社 内 LAN IdP(OpenAM) インターネット SP HTTP(HTTPS) HTTP/HTTPS HTTP/HTTPS ログイン 認 証 情 報 ユーザー ユーザー - 52 -
SAML IdP のネットワーク 上 の 配 置 - その2 社 外 からも SAML SP(Google Apps Salesforceなど) にアク セスする 場 合 は SAML IdP(OpenAM)を 社 外 からアクセス 可 能 な 場 所 に 設 置 する(DMZなど) 社 内 LAN ユーザー ログイン 認 証 情 報 DMZ IdP HTTP/HTTPS ログイン インターネット 認 証 情 報 SP HTTP/HTTPS ユーザー - 53 -
ID 管 理 との 組 み 合 わせで 効 果 倍 増! - 54 -
ID 管 理 & SSO ID 管 理 ツール ID 連 携 ID 管 理 システム 管 理 者 Active Directory Google Apps Salesforce ファイルサーバ ファイル サーバー LDAP メールサーバー/ クラサバ Webアプリ SSO クラウド Windowsログオン/ LDAP 認 証 ログイン ログイン ユーザー - 55 -
ID 管 理 との 連 携 シングルサインオンとID 管 理 は 一 緒 に 使 うことで 最 大 の 効 果 を 発 揮 する ユーザーID/パスワードはシングルサインオンシステムで 一 元 管 理 可 能 でも 各 アプリケーション/サービスに 必 要 なユー ザー 情 報 は 基 本 的 には 個 々に 管 理 される ID 管 理 ツールなどを 利 用 したID 一 元 管 理 をしなければ シン グルサインオンは 破 綻 することも クラウドサービスにおいてもID 管 理 は 必 要 クラウドサービス 側 にもユーザー 情 報 を 保 存 することから ID 管 理 の 対 象 となる ID 管 理 用 のAPI(プログラムインタフェース)を 備 えているもの も 多 い(Google Apps Yahoo! など) - 56 -
参 考 情 報 LIBERTY ALLIANCE のセミナー 資 料 (SAML) http://wiki.projectliberty.org/images/9/94/080215_japansig_techni cal_seminar.pdf SAML を 調 べるのであれば まず 最 初 に 読 むのがおすすめ SAML 公 式 サイト http://saml.xml.org/ オープンソースの SAML 実 装 :http://saml.xml.org/wiki/saml-opensource-implementations SAML 仕 様 の 原 文 http://www.oasis-open.org/specs/index.php#saml Google Apps の SAML シングルサインオンの 解 説 http://code.google.com/intl/ja/apis/apps/sso/saml_reference_imple mentation.html Salesforce の SAML SSO 設 定 (IdPとしてOpenSSOを 想 定 ) http://wiki.developerforce.com/index.php/single_sign- On_with_SAML_on_Force.com OSSTechのOpenSSO 勉 強 会 資 料 http://www.osstech.co.jp/techinfo/opensso - 57 -
ご 清 聴 ありがとうございました - 58 -