gpt4 book ai didi

asp.net - 使用 Thinktecture Identity Server 2 进行单点注销

转载 作者:行者123 更新时间:2023-12-05 01:04:25 25 4
gpt4 key购买 nike

我对 Thinktecture 的 Identity Server 2 的理解是没有实现单点注销。换句话说,当您退出一个依赖方时,Identity Server 不会自动让用户退出任何其他 RP。我知道已经有关于此的帖子,但我无法找到有关如何扩展 Identity Server 以执行此操作的任何信息。我看到一些帖子说 Identity Server 已经开箱即用了……如果是这样,我一直无法找到方法。

我的 SSO 在 Asp.NET Web Forms、WIF 和 Identity Server 2 上工作得很好,我可以很好地退出 RP,但据我所知,Identity Server 中需要一些额外的代码才能将用户从他可能登录的任何其他 RP 中完全注销。

有没有人扩展身份服务器来实现单点注销?

这是可以在 Identity Server 中配置的东西还是需要一些编码?

如果你有一些见解,我真的很感激。

谢谢你。

最佳答案

IdentityServer 支持通过 WS-Federation 进行单点注销。您的 RP 需要向 IdentityServer 发出注销请求,以使用户从 IdentityServer 和任何其他通过 WS-Fed 向 IdentityServer 进行身份验证的 RP 注销。以下是您的 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);

关于asp.net - 使用 Thinktecture Identity Server 2 进行单点注销,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23230486/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com