4

Thinktecture の Identity Server 2 に関する私の理解では、シングル サインアウトは実装されていません。つまり、1 つの依拠当事者からサインアウトしても、Identity Server はそのユーザーを他の RP から自動的にサインアウトしません。これに関する投稿があったことは知っていますが、これを行うために Identity Server を拡張する方法について何も見つけることができませんでした。私は、Identity Server がすぐに使用できると言っている投稿を見たことがあります。

Asp.NET Web フォーム、WIF、および Identity Server 2 で SSO が正常に動作しており、RP から正常にサインアウトできますが、Identity Server で追加のコードが必要であることがわかります。ユーザーがサインインしている可能性のある他のすべての RP からユーザーを完全にサインアウトします。

シングル サインアウトを実装するために Identity Server を拡張した人はいますか?

これは Identity Server で構成できるものですか、それともコーディングが必要ですか?

もしお分かりでしたら、ご教示いただければ幸いです。

ありがとうございました。

4

1 に答える 1

5

IdentityServer は、WS-Federation を介したシングル サインアウトをサポートしています。RP は、ユーザーが IdentityServer および WS-Fed を介して IdentityServer で認証されたその他の RP からログアウトするように、IdentityServer にサインアウト要求を行う必要があります。RP がそのようなリクエストを行う方法のスニペットを次に示します。

var sam = FederatedAuthentication.SessionAuthenticationModule;
sam.SignOut();

var fam = FederatedAuthentication.WSFederationAuthenticationModule;
var signOutRequest = new SignOutRequestMessage(new Uri(fam.Issuer));
// optional -- put your RP's URL here
// signOutRequest.Reply = "https://localhost:44321/";
var url = signOutRequest.WriteQueryString();
Response.Redirect(url);
于 2014-04-22T22:10:27.387 に答える