単発サインアウト

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

認証クッキーを除去することで、Sitecore Identityサーバー(SIサーバー)からユーザーをサインアウトします。しかし、完全なフェデレーテッドサインアウトの場合、クライアントアプリケーション(場合によっては上流のアイデンティティプロバイダー)からもユーザーをサインアウトすることを考慮する必要があります。

ユーザーがサインアウトした際のクライアントへの通知

SIサーバーはサーバーサイドクライアント(例えばMVCアプリケーション)向けのフロントチャネル仕様をサポートしています。これを使って、クライアントアプリケーションにユーザーがログアウトしたことを通知できるようにします。

フロントチャネル仕様を通じてサーバーサイドクライアントアプリケーションからユーザーをサインアウトするには、SIサーバーの サインアウト ページがユーザーがサインアウトしたことをクライアントに通知する

この構成はサインアウトエンドポイントのURIを定義します。複数のサブノードを使って複数のURIを定義することも、| 記号を使ってノード内のURIを分離することもできます。また、{AllowedCorsOrigin} テンプレートを使って設定を簡素化することもできます。そのテンプレートを使うと、すべての発信元(ホスト)にサインアウトの通知が届きます。

FrontChannelLogoutSessionRequired設定を使ってサインアウトエンドポイントのオン・オフを切り替えます。

以下は構成の例です:

{AllowedCorsOrigin}/sitecore/shell/FrontChannelLogout|https://service/extraLogoutEndpoint true

SIサーバーはユーザーがサインインしたクライアントを追跡し、IIdentityServerInteractionServiceサービスに関するAPI GetLogoutContextAsyncを提供します。このAPIは、サインインアウトページが

クライアントサインアウトエンドポイント

サインアウトプロセスを実行するためには、クライアントがSIサーバーからのリクエストを処理するエンドポイントを実装しなければなりません。Sitecoreインスタンスは /sitecore/shell/FrontChannelLogoutエンドポイントで実装を持っています。

Sitecoreホストアプリケーションのサインアウトエンドポイント

Sitecore.Plugin.Authentication.OpenIdConnectプラグインにはサインアウトエンドポイントが含まれています。デフォルトでは/sitecore/shell/FrontChannelLogoutですが、設定で別のアドレスを指定することもできます:

/sitecore/shell/FrontChannelLogout
この記事を改善するための提案がある場合は、 お知らせください!