3

在我的依赖方应用程序 (ASP.NET MVC4) 中,我有一个注销链接,可以让我退出 IdentityServer。我登陆它的“成功注销”页面,并带有返回我的应用程序的链接。我想要做的是单击 IdentityServer 的链接“注销”,然后只登陆我的本地视图“LoggedOut”。我怎样才能做到这一点?我确定这很常见,但我找不到任何编码示例。非常感谢您的帮助。这是我的注销代码...

public class LogoutHandler
{
    public string Signout()
    {
        FederationConfiguration cfg = FederatedAuthentication.FederationConfiguration;
        var fam = FederatedAuthentication.WSFederationAuthenticationModule;
        fam.SignOut(false);
        var signOutRequestMessage = new SignOutRequestMessage(new Uri(fam.Issuer), fam.Realm);

        return signOutRequestMessage.WriteQueryString();
    }
}

然后在控制器动作中,

public ActionResult Logout()
{
string signoutUrl = new LogoutHandler().Signout();
return new RedirectResult(signoutUrl);
}

这只是让我退出,但我登陆 IdentityServer 成功退出。

4

1 回答 1

0

AFAIK 您只需要在 thinktecture 管理区域中指定重定向 URL。此外,您必须确保您的注销页面不安全。如果没有这最后一部分,您将返回注销页面,但会立即重定向回 STS。

于 2013-02-26T16:39:48.170 回答