2013-02-25 95 views
3

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

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成功登出。

回答

0

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