15.7.7. IDP-initiated SSO の設定

通常、PicketLink では SP が最初に認証リクエストを IDP へ送信し、その後 IDP が有効なアサーションとともに SAML 応答を SP へ送信します。このフローは SP-initiated SSO (SP が起点となる SSO) と呼ばれます。また、SAML 2.0 の仕様は IDP-initiated SSO (IDP が起点となる SSO) または Unsoliciated Response SSO (非要請応答 SSO) と呼ばれる別のフローも定義します。この場合、SP が認証フローを開始せず、IDP から SAML 応答を受信します。この認証フローは IDP 側で開始され、ユーザーは認証後にリストから特定の SP を選択し、その URL へリダイレクトされます。

順序

  1. ユーザーが IDP にアクセスします。
  2. IDP は SAML リクエストや応答がないことを確認し、IDP が初めて SAML を使用することを想定します。
  3. IDP がユーザーに認証を要求します。
  4. 認証後、すべての SP アプリケーションへリンクするページをユーザーが取得する、ホストされたセクションを IDP が表示します。
  5. ユーザーが SP アプリケーションを選択します。
  6. クエリーパラメーターの SAML 応答に SAML アサーションを持つサービスプロバイダーへ IDP がユーザーをリダイレクトします。
  7. SP は SAML アサーションをチェックし、アクセスを提供します。
設定

非要請応答をサポートするには特別な設定は必要ありません。IDP と SP を通常どおり設定できます。IDP と SP の設定方法に関する詳細は以下を参照してください。

使用方法

ユーザーの認証後、IDP はすべてのサービスプロバイダーアプリケーションへのリンクが含まれるページを表示します。通常、リンクは以下のようになります。

<a href="http://localhost:8080/idp?SAML_VERSION=2.0&TARGET=http://localhost:8080/sales-post/">Sales</a>
上記のリンクは、ターゲット SP アプリケーションへの URL が値である TARGET クエリーパラメーターを渡す IDP へユーザーをリダイレクトします。ユーザーが上記のリンクをクリックすると、IDP はリクエストから TARGET パラメーターを抽出して SAML v2.0 応答をビルドし、ユーザーをターゲット URL へリダイレクトします。ユーザーが SP にヒットすると、自動的に認証されます。
SAML_VERSION クエリーパラメーターを使用すると、 IDP が SAML 応答の作成に使用しなければならない SAML バージョンを指定できます。 SAML_VERSION パラメーターの可能な値は 2.0 と 1.1 です。