SAML2 に関する基本的な質問があります。一般的なフローは、ユーザーが保護されている SP からリソースを要求することです。SP は、ユーザーがセキュリティ コンテキスト (Cookie など) を持っているかどうかを確認し、セキュリティ コンテキストが見つからない場合は、AuthRequest を構築してから、ブラウザーを IdP にリダイレクトします。IdP は同様に、ユーザーが既存のセキュリティ コンテキストを持っているかどうかを最初に確認します。IdP はどのようにこれを行いますか? IdP もこの目的で Cookie を使用しますか?
2 に答える
はい。SAML Web SSO プロファイルの場合、ほとんどの場合、セッションは IDP および SP のブラウザーで Cookie として保持されます。ただし、これを管理する方法に関するルールはありません。IDP は、アクティブなセッションを維持しないことを選択し、SSO トランザクションごとにユーザーにログインを求めることができます。
イアン
@イアン - 素晴らしい答え。ただし、IDP がセッション Cookie [B/W Browser and Identity Provider (IDP)] を維持しない場合は、シングル サインオン (SSO) の大きなメリットを逃してしまいます。失われる SSO ユーザー エクスペリエンス (UX) 機能については、次のシナリオで説明します。
0) IDP が Google Apps と Salesforce に登録されていると仮定します。
1) ブラウザを開きます。注: SAML はブラウザ ベースです。SAML が機能するにはブラウザが必要です。
2) Google Apps にアクセスしてみてください。(既存のセッション Cookie [B/W Browser and Google Apps] はありません) は、IDP にリダイレクトします。
3) 有効な IDP 資格情報でサインオンします。
4) IDP はセッション Cookie [B/W Browser and IDP] をブラウザに保存します。(これは、@Ian が言及したステップであり、IDP はスキップできます) 5) IDP は、POST に埋め込まれた SAML トークンを使用して (HTTP POST 経由で) Google Apps にリダイレクトします。現在、Google Apps にいます。(これでセッション Cookie [B/W Browser and Google Apps] がブラウザに保存されました) 5) Salesforce にアクセスしてみます。
6) Salesforce は、アクティブなセッション cookie [B/W Browser と Salesforce] がないことを認識し、IDP にリダイレクトします。
* 追加されたユーザー エクスペリエンス (UX) のポイントは次のとおりです *
7) IDP はセッション Cookie [B/W Browser and IDP] を探します。 (SSO) 別名 IDP Credentials AGAIN。
ステップ 7 に関する説明: 個別のサービスごとに SSO 資格情報を入力すると、使用しているサービスの数を 1 倍します。実装の主な魅力は、資格情報を 1 回入力するだけですべてにアクセスできることだと思います (セキュリティのトピックは別として)。ただし、IDP がセッション cookie [B/W Browser and IDP] を保存しない場合でも、(サービスごとに個別の資格情報を使用するのではなく) 1 セットの資格情報のみを使用しているため、作業はより簡単になります。
@Ajava - Cookie の使用方法について混乱しているようです。上記の手順に従って、Cookie が SAML でどのように使用されるかを理解していただければ幸いです。
また、Cookie を説明する良いリンクを見つけました: http://lifehacker.com/5461114/fact-and-fiction-the-truth-about-browser-cookies