0

PingFederateのドキュメントには、 SPまたはIDPシングルログアウト(別名SLO)のいずれかを構成できることが記載されています。

ユーザーがブラウザから「Start-SLO」エンドポイントを要求すると、ユーザーはSLOを開始します(つまり、またはのいずれhttp://<PingFederate Base URL>/sp/startSSO.pinghttp://<PingFederate Base URL>/idp/startSSO.ping)。

私の質問:

  • これは名前だけの違いではありませんか?
  • 結局のところ、とにかくエンドポイントをターゲットにしているだけではありませんか?
  • この選択は、SLOプロセスに重大な影響を及ぼしますか?

@Scott T.はここで次のように言っています:

ユーザーがIdPでSLOプロセスを開始した場合、はい-ユーザーは最後のステップとして/idp/SLO.saml2にリダイレクトされます。実際、ログアウトのためにリダイレクトする各SPは、次のSPからログアウトするためにIdPにリダイレクトされます。SPからSLOプロセスを開始する場合、ユーザーが最終的に到達する最後の場所は、そのSPのSLOエンドポイントです。

確かに、PingFederateが最後のステップとしてSLOを開始したSPにリダイレクトされればいいのですが、これは私の経験ではありません。

おそらく私も尋ねるべきです:

  • SLOを開始したSPをどのように指定しますか?

編集: @Scott T.の回答による

ここでは、IdPおよびSPとしてPingFederateがあると想定しています(2つの別々のインストールの可能性があります)。

IdPとSPの定義を理解しているので:

  • PingFederateは私のIdPでもSPの1つでもありません。**
  • 私の構成では、PingFederateはIdPとSP間のオープントークン転送を容易にするだけです。
  • ごく最近まで、これは完全に有効な構成であると私は信じていました。
  • しかし今では、この構成はSLOを促進しないようです。または、少なくともPingFederateが私のIdPとして機能していた場合と同じくらいうまくいきます。
    • これは正しいです?

**私がこれを言うとき、私は私が持っていると言うことを意味します:

  • ユーザーを認証し、ユーザー名とパスワードを含むバッキングストア(つまりデータベース)を持つスタンドアロンのWebアプリケーション-これは私のIdPとして機能します。
  • IdPにリンクされ、データを表示してユーザーに機能を提供する複数のスタンドアロンWebアプリケーション-これらはSPとして機能します。
4

1 に答える 1

3

ここでは、IdPおよびSPとしてPingFederateがあると想定しています(2つの別々のインストールの可能性があります)。IdPからSLOプロセスを開始する場合は、http://pingfed-idp/idp/startSSO.pingでリクエストします。SPからSLOプロセスを開始する場合は、http://pingfed-sp/sp/startSSO.pingでリクエストします。

どちらのモデルともフローにわずかな違いがあります。

IdPで開始すると、IdPはSSOセッションがある各SPに(一度に1つずつ)SAML2.0LogoutRequestメッセージを送信します。各SPは、ローカルセッションからユーザーをログアウトし、SAMLLogoutResponseで成功/失敗を通知してSPにリダイレクトします。最終的なSPが完了すると、プロセスはIdPで終了します。

SPで開始すると、そのSPはSAML 2.0 LogoutRequestをIdPに送信し、IdPはSSOセッションがある他のすべてのSPに(一度に1つずつ)LogoutRequestを送信します。各SPは、ローカルセッションからユーザーを再度ログアウトし、SAMLLogoutResponseで成功/失敗を通知してSPにリダイレクトします。IdPがすべてのセッションの終了を完了すると、SLOを開始した元のSPに最終的なLogoutResponseを送信します。

于 2011-11-26T04:47:37.657 に答える