Date post: | 31-May-2015 |
Category: |
Documents |
Upload: | tatsuo-kudo |
View: | 3,389 times |
Download: | 0 times |
第 3回 Liberty Alliance技術セミナー
SAML / Libertyから見た相互運用の可能性
工藤達雄 http://blogs.sun.com/tkudoサン・マイクロシステムズ株式会社
ソフトウェア・ビジネス統括本部
アイデンティティ・マネージメント・ビジネス担当
July 18, 2008
Copyright © 2008 Sun Microsystems K.K.
アプリケーション
企業アイデンティティ管理システムの従来の役割
アイデンティティ・プロビジョニング
ロール・ライフサイクル管理
ディレクトリ・サービス
アクセス管理 / SSO /フェデレーション
アイデンティティ管理システム
ユーザ
Copyright © 2008 Sun Microsystems K.K.
アプリケーション
企業アイデンティティ管理システムの従来の役割
アイデンティティ・プロビジョニング
ロール・ライフサイクル管理
ディレクトリ・サービス
アクセス管理 / SSO /フェデレーション
アイデンティティ管理システム
ユーザ
Copyright © 2008 Sun Microsystems K.K.
アプリケーション
企業アイデンティティ管理システムの従来の役割
アイデンティティ・プロビジョニング
ロール・ライフサイクル管理
ディレクトリ・サービス
アクセス管理 / SSO /フェデレーション
アイデンティティ管理システム
独自連携䶡䶒䵽䶵
ユーザ
Copyright © 2008 Sun Microsystems K.K.
アプリケーション
社外のサービスと連携し、社外のユーザを取り込む
アイデンティティ・プロビジョニング
ロール・ライフサイクル管理
ディレクトリ・サービス
アクセス管理 / SSO /フェデレーション
アイデンティティ管理システム
ユーザ
Copyright © 2008 Sun Microsystems K.K.
アプリケーション
社外のサービスと連携し、社外のユーザを取り込む
アイデンティティ・プロビジョニング
ロール・ライフサイクル管理
ディレクトリ・サービス
アクセス管理 / SSO /フェデレーション
アイデンティティ管理システム
ユーザ
サービス
社外サービスの利用
Copyright © 2008 Sun Microsystems K.K.
アプリケーション
社外のサービスと連携し、社外のユーザを取り込む
アイデンティティ・プロビジョニング
ロール・ライフサイクル管理
ディレクトリ・サービス
アクセス管理 / SSO /フェデレーション
アイデンティティ管理システム
ユーザ
パートナーサービス
社外サービスの利用 社外ユーザへのサービス提供
Copyright © 2008 Sun Microsystems K.K.
アプリケーション
アイデンティティ・フレームワークは必然的に混在する
アイデンティティ・プロビジョニング
ロール・ライフサイクル管理
ディレクトリ・サービス
アクセス管理 / SSO /フェデレーション
アイデンティティ管理システム
ユーザ
パートナーサービス
SAML 2.0 SAML 1.1 OpenIDWS-Federation
InfoCard LibertyID-WSF
Copyright © 2008 Sun Microsystems K.K.
アプリケーション
アイデンティティ・フレームワークは必然的に混在する
アイデンティティ・プロビジョニング
ロール・ライフサイクル管理
ディレクトリ・サービス
アクセス管理 / SSO /フェデレーション
アイデンティティ管理システム
ユーザ
パートナーサービス
SAML 2.0 SAML 1.1 OpenIDWS-Federation
InfoCard LibertyID-WSF
フレームフレーム
ワーク間のワーク間の
相互運用が相互運用が
求められる求められる
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証とSAML / WS-Federation SSOとの連携http://projectconcordia.org/index.php/Infocard_Authentication_Scenario_Details
リライング・パーティ / サービス・プロバイダ
アイデンティティ・プロバイダ
ブラウザアイデンティティ・セレクタ
ユーザユーザ
SAML2 / WS-Federation InfoCard
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
認証コンテクスト情報の維持
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携1.サービス・プロバイダへアクセス
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
ブラウザアイデンティティ・セレクタ
ユーザユーザ
SAML2 InfoCard
1
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携2. SAML IdPへリダイレクト
ブラウザアイデンティティ・セレクタ
ユーザユーザ
SAML2 InfoCard
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
2
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携2. SAML IdPへリダイレクト
ブラウザアイデンティティ・セレクタ
ユーザユーザ
SAML2 InfoCard
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
2
<samlp:AuthnRequest> <samlp:RequestedAuthnContext Comparison="exact"> <samlp:AuthnContextClassRef>
http://projectconcordia.org/ rsainterop/authnmech/ managed/x509 (*) </samlp:AuthnContextClassRef> </samlp:RequestedAuthnContext></samlp:AuthnRequest>
(*) マネージド・カード、かつ X.509証明書認証を要求
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携3.アイデンティティ・セレクタを起動
ブラウザアイデンティティ・セレクタ
ユーザユーザ
SAML2 InfoCard
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
3
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携3.アイデンティティ・セレクタを起動
ブラウザアイデンティティ・セレクタ
ユーザユーザ
SAML2 InfoCard
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
3
<OBJECT type="application/x-informationCard" name="xmlToken"> <PARAM Name="RequiredClaims" value="http://projectconcordia.org/rsainterop/ authnmech/managed/x509 http://schemas.xmlsoap.org/ws/2005/05/ identity/claims/givenname http://schemas.xmlsoap.org/ws/2005/05/ identity/claims/surname"/> </OBJECT>
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携4.条件を満たすカードを選択し、セキュリティ・トークンをリクエスト
ブラウザアイデンティティ・セレクタ
ユーザユーザ
SAML2 InfoCard
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携4.条件を満たすカードを選択し、セキュリティ・トークンをリクエスト
ブラウザアイデンティティ・セレクタ
ユーザユーザ
SAML2 InfoCard
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
4
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携4.条件を満たすカードを選択し、セキュリティ・トークンをリクエスト
ブラウザアイデンティティ・セレクタ
ユーザユーザ
SAML2 InfoCard
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
4
<wst:RequestSecurityToken> ...</wst:RequestSecurityToken>
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携5.最初にリクエストされた認証コンテクストによってユーザを認証
ブラウザアイデンティティ・セレクタ
ユーザ
SAML2 InfoCard
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
5
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携5.最初にリクエストされた認証コンテクストによってユーザを認証
ブラウザアイデンティティ・セレクタ ユーザ
ユーザ
SAML2 InfoCard
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
5X.509証明書を呈示
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携6.セキュリティ・トークンを発行
ブラウザアイデンティティ・セレクタ
ユーザユーザ
SAML2 InfoCard
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
6
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携6.セキュリティ・トークンを発行
ブラウザアイデンティティ・セレクタ
ユーザユーザ
SAML2 InfoCard
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
6
<wst:RequestSecurityTokenResponse> <saml:Assertion ID="foo"> <saml:Subject/> <saml:Conditions> <saml:AudienceRestriction> <saml:Audience>http://www.inforcardrp.com</saml:Audience> </saml:AudienceRestriction> </saml:Conditions> <saml:AuthnStatement>
<saml:AuthnContext> <saml:AuthnContextClassRef> http://projectconcordia.org/rsainterop/authnmech/ managed/x509 </saml:AuthnContextClassRef> <saml:AuthnContext> </saml:AuthnStatement> <saml:AttributeStatement> <!-- this duplicates authn context above --> <saml:Attribute NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri" Name="http://projectconcordia.org/rsainterop/authnmech/managed/x509"> <saml:AttributeValue> http://projectconcordia.org/rsainterop/authnmech/managed/x509 </saml:AttributeValue> </saml:Attribute>
<saml:Attribute NameFormat="http://schemas.xmlsoap.org/ws/2005/05/identity/claims" Name="givenname"> <saml:AttributeValue>John</saml:AttributeValue> </saml:Attribute> <saml:Attribute NameFormat="http://schemas.xmlsoap.org/ws/2005/05/identity/claims" Name="surname"> <saml:AttributeValue>Doe</saml:AttributeValue> </saml:Attribute> </saml:AttributeStatement>
</saml:Assertion></wst:RequestSecurityTokenResponse>
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携7.セキュリティ・トークンを転送
ブラウザアイデンティティ・セレクタ
ユーザユーザ
SAML2 InfoCard
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
7
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携7.セキュリティ・トークンを転送
ブラウザアイデンティティ・セレクタ
ユーザユーザ
SAML2 InfoCard
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
7
<wst:RequestSecurityTokenResponse> <saml:Assertion ID="foo"> <saml:Subject/> <saml:Conditions> <saml:AudienceRestriction> <saml:Audience>http://www.inforcardrp.com</saml:Audience> </saml:AudienceRestriction> </saml:Conditions> <saml:AuthnStatement>
<saml:AuthnContext> <saml:AuthnContextClassRef> http://projectconcordia.org/rsainterop/authnmech/ managed/x509 </saml:AuthnContextClassRef> <saml:AuthnContext> </saml:AuthnStatement> <saml:AttributeStatement> <!-- this duplicates authn context above --> <saml:Attribute NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri" Name="http://projectconcordia.org/rsainterop/authnmech/managed/x509"> <saml:AttributeValue> http://projectconcordia.org/rsainterop/authnmech/managed/x509 </saml:AttributeValue> </saml:Attribute>
<saml:Attribute NameFormat="http://schemas.xmlsoap.org/ws/2005/05/identity/claims" Name="givenname"> <saml:AttributeValue>John</saml:AttributeValue> </saml:Attribute> <saml:Attribute NameFormat="http://schemas.xmlsoap.org/ws/2005/05/identity/claims" Name="surname"> <saml:AttributeValue>Doe</saml:AttributeValue> </saml:Attribute> </saml:AttributeStatement>
</saml:Assertion></wst:RequestSecurityTokenResponse>
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携8.アサーションを発行
ブラウザアイデンティティ・セレクタ
ユーザユーザ
SAML2 InfoCard
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
8
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携8.アサーションを発行
ブラウザアイデンティティ・セレクタ
ユーザユーザ
SAML2 InfoCard
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
8
<samlp:Response> <saml:Assertion ID="bar"> <saml:Subject/> <saml:Conditions> <saml:AudienceRestriction> <saml:Audience>http://www.samlrp.com</saml:Audience> </saml:AudienceRestriction> </saml:Conditions> <saml:AuthnStatement>
<saml:AuthnContext> <saml:AuthnContextClassRef> http://projectconcordia.org/rsainterop/ authnmech/managed/x509 </saml:AuthnContextClassRef> <saml:AuthnContext> </saml:AuthnStatement> <saml:AttributeStatement> <!-- this duplicates authn context above --> <saml:Attribute NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:uri" Name="http://projectconcordia.org/rsainterop/authnmech/managed/x509"> <saml:AttributeValue> http://projectconcordia.org/rsainterop/authnmech/managed/x509 </saml:AttributeValue>
</saml:Attribute> <saml:Attribute NameFormat="http://schemas.xmlsoap.org/ws/2005/05/identity/claims" Name="givenname"> <saml:AttributeValue>John</saml:AttributeValue> </saml:Attribute> <saml:Attribute NameFormat="http://schemas.xmlsoap.org/ws/2005/05/identity/claims" Name="surname"> <saml:AttributeValue>Doe</saml:AttributeValue> </saml:Attribute> </saml:AttributeStatement>
</saml:Assertion></samlp:Response>
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携9.サービスへのアクセスを許可
ブラウザアイデンティティ・セレクタ
ユーザ
SAML2 InfoCard
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
9
Copyright © 2008 Sun Microsystems K.K.
InfoCard認証と SAML SSO との連携9.サービスへのアクセスを許可
ブラウザアイデンティティ・セレクタ
ユーザ
SAML2 InfoCard
サービス・プロバイダ
(SP)
アイデンティティ・プロバイダ
(IdP)
リライング・パーティ
(RP)
アイデンティティ・プロバイダ
(IdP)
9
こんにちは、Johnさん !
Copyright © 2008 Sun Microsystems K.K.
SAML 2 SSO とWS-Federation SSO との連鎖http://projectconcordia.org/index.php/Inter-Federation_Scenario_Details
• WS-Fed RPへのアクセスにSAML2 IdPを利用
• SAML2 IdPへのアクセスにWS-Fed IdPを利用
Copyright © 2008 Sun Microsystems K.K.
OpenID と Liberty ID-WSFとの連携http://iiw.idcommons.net/index.php/OpenID_Bootstrapping_ID-WSF_2.0
OpenIDプロバイダ
個人情報管理サービスWeb認証サービス
ID-WSFパーソナル・プロファイル・サービス
プロファイル情報
OpenIDリライング・パーティ
Webサービス・クライアント
Webサービス・クライアント
個人情報管理サービスへアクセス
Copyright © 2008 Sun Microsystems K.K.
OpenID と Liberty ID-WSFとの連携http://iiw.idcommons.net/index.php/OpenID_Bootstrapping_ID-WSF_2.0
OpenIDプロバイダ
個人情報管理サービスWeb認証サービス
ID-WSFパーソナル・プロファイル・サービス
プロファイル情報
ログイン
OpenIDリライング・パーティ
Webサービス・クライアント
Webサービス・クライアント
Copyright © 2008 Sun Microsystems K.K.
OpenID と Liberty ID-WSFとの連携http://iiw.idcommons.net/index.php/OpenID_Bootstrapping_ID-WSF_2.0
OpenIDプロバイダ
個人情報管理サービスWeb認証サービス
ID-WSFパーソナル・プロファイル・サービス
プロファイル情報
OpenIDリライング・パーティ
Webサービス・クライアント
Webサービス・クライアント
プロファイル・サービスへのエンドポイント参照を Attribute Exchangeで提供
Copyright © 2008 Sun Microsystems K.K.
OpenID と Liberty ID-WSFとの連携http://iiw.idcommons.net/index.php/OpenID_Bootstrapping_ID-WSF_2.0
OpenIDプロバイダ
個人情報管理サービスWeb認証サービス
ID-WSFパーソナル・プロファイル・サービス
プロファイル情報
エンドポイント参照をもとに、プロファイル情報管理サービスにアクセス
OpenIDリライング・パーティ
Webサービス・クライアント
Webサービス・クライアント
Copyright © 2008 Sun Microsystems K.K.
OpenID と Liberty ID-WSFとの連携http://iiw.idcommons.net/index.php/OpenID_Bootstrapping_ID-WSF_2.0
OpenIDプロバイダOpenIDリライング・パーティ
電話会社個人情報管理サービスWeb認証サービスミニブログ
ID-WSFパーソナル・プロファイル・サービス
プロファイル情報
顔写真を取得
住所や顔写真を変更
住所情報が変更されたときに通知を受け取り
OpenIDによるログイン時に、RED-IDが、プロファイル・サービスへの
エンドポイント参照を Attribute Exchangeで提供
OpenIDによるログイン時に、RED-IDが、プロファイルから取得した顔写真情報を Attribute Exchangeで提供
ログイン
OpenIDリライング・パーティ
OpenIDリライング・パーティ
Webサービス・クライアント
Webサービス・クライアント
Webサービス・クライアント
3rd Liberty Alliance Technical Seminar
Possible Interoperability Use Caseson SAML / Liberty Standpoint
Tatsuo Kudo http://blogs.sun.com/tkudo
Identity Management Business DevelopmentSoftware PracticeSun Microsystems K.K.
July 18, 2008