アプリケーションにマルチテナント SAML SSO を実装しました。AngularJS の UI、Web API (アサーション URL 用)、および SAML 要求を作成および処理するためのマイクロサービスを備えたシングル ページ アプリケーション アプリケーションを使用しています。マイクロサービスで Itfoxtech ライブラリを使用しています。
SAML SSO ログインを正常に実装し、正常に動作しています。ただし、SAML シングル ログアウトの実装中に問題に直面しています。SAML アサーションでは、いくつかのクレームを抽出して Web API に返しています。ログアウト時に、ClaimsIdentity と HttpContext が必要なようです。SAML アサーション中に ClaimsIdentity を永続化し、ログアウト中にそれを再利用しましたが、HttpContext にアクセスできません。DefaultHttpContext からカスタム httpContext を作成し、次のコード行を実行しようとしました。
var saml2LogoutRequest = await new Saml2LogoutRequest(config, User).DeleteSession(HttpContext);
しかし、それはエラーを与えます、
No sign-out authentication handlers are registered. Did you forget to call AddAuthentication().AddCookies
私の質問は、HttpContext を使用せずに単一のログアウトを実行する方法、または必要な場合は手動で作成する方法ですか?