2012-03-23 5 views
-2

方法1
ブラウザはサービスプロバイダーに向けられています。サービスプロバイダはクッキーセットがあるかどうかをチェックし、そうでない場合はブラウザをアイデンティティプロバイダにリダイレクトし、アイデンティティプロバイダ(IdP)がユーザを検証してIDをサービスプロバイダ(SP)にリダイレクトします。 SPはそのIDをブラウザのセッションクッキーとして設定し、ユーザーをサービスにリダイレクトします。次回は、ユーザが同じセッションで再度サービスを要求すると、SPはクッキーをチェックし、直接サービスにリダイレクトします。

方法2
ブラウザはサービスプロバイダーに向けられています。サービスプロバイダはIdPにリダイレクトします。 IdPはCookieをチェックし、Cookieが存在しない場合、IdPはブラウザでユーザーとセッションCookieを認証します。肯定応答をSPにリダイレクトします。 SPはユーザーをサービスにリダイレクトします。次回ユーザがセッション内でサービスを要求すると、ブラウザはサービスプロバイダに転送されます。サービスプロバイダはIdP.IdPにリダイレクトしてCookieをチェックし、存在する場合はSPに肯定応答を送信します。これらの2つの方法のどちらがSAMLアーキテクチャに適していますか

答えて

-1

いずれかが有効なSAML実装であるとは思われません。通常、SAML ID情報はHTTP POSTまたはSOAP Webサービス(http://en.wikipedia.org/wiki/Security_Assertion_Markup_Language#SAML_2.0_bindings参照)で通信されます。 Cookieは、ユーザーの認証には使用されません。

私たちには、HTTP POSTで通信されたSAML 2.0 XMLを使用してユーザーを認証するWebアプリケーションがあります。当社の顧客の従業員は、アプリケーションにアクセスするためにファイアウォールの側面にあるアイデンティティプロバイダを経由します。

+0

:Cookieが使用されていない場合は、ユーザーを認証するために何が使用されますか? HTTPはステートレスなプロトコルの権利ですか?誰がユーザー認証トークンを追跡しますか? – suraj

+0

あなたのアプリは認証されたユーザーを思い出すためにCookieを使用できますが、SAMLの仕組みとは異なります。アイデンティティプロバイダ(実際に誰が誰かを知っている他のサーバ)は、SAML XMLをPOSTまたはSOAPを通じて送信します。あなたのアプリケーション(ソースプロバイダ)は、Cookieを使ってユーザのセッションを維持することができます。 –

0

Guanxi Shibboleth(SAML2プロファイル)を実装し、Shibboleth itselfを「方法1」に簡略化することができると確信しています。

既存のSAML2プロファイルの実装を確認する方がよいでしょう。

関連する問題