Possible Interoperability Use Cases on SAML / Liberty Standpoint

Post on 31-May-2015

3,389 views 0 download

Tags:

description

第 3 回 Liberty Alliance 技術セミナー 「パネル: アイデンティティ管理標準の相互運用の可能性を探る (SAML/Liberty, OpenID, CardSpace)」のために制作。

transcript

第 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