Single sign on 如何使用ADFS联合为所有应用程序实现单次注销
我将使用带联合服务的本地ADFS 4.0实现SSO。我已经为登录和它的工作做了很好的代码,但我想开发单一的注销功能 当我从一个网站注销时,用户必须自动从ADFS服务器中配置的所有应用程序注销 以下是我的代码: StartUp.Auth文件Single sign on 如何使用ADFS联合为所有应用程序实现单次注销,single-sign-on,adfs,federation,Single Sign On,Adfs,Federation,我将使用带联合服务的本地ADFS 4.0实现SSO。我已经为登录和它的工作做了很好的代码,但我想开发单一的注销功能 当我从一个网站注销时,用户必须自动从ADFS服务器中配置的所有应用程序注销 以下是我的代码: StartUp.Auth文件 string adfs = ConfigurationManager.AppSettings["AdfsMetadataEndPoint"]; string realm = ConfigurationManage
string adfs = ConfigurationManager.AppSettings["AdfsMetadataEndPoint"];
string realm = ConfigurationManager.AppSettings["Wtrealm"];
string reply = ConfigurationManager.AppSettings["Wreply"];
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = CookieAuthenticationDefaults.AuthenticationType,
CookieManager = new SystemWebCookieManager()
});
app.UseWsFederationAuthentication(new WsFederationAuthenticationOptions
{
MetadataAddress = adfs,
Wtrealm = realm,
Wreply = reply,
AuthenticationMode = AuthenticationMode.Passive
});
app.SetDefaultSignInAsAuthenticationType(CookieAuthenticationDefaults.AuthenticationType);
注销操作:
public void LogOff()
{
var owinContext = this.Request.GetOwinContext();
var authProperties = new AuthenticationProperties();
authProperties.RedirectUri = new Uri(this.HttpContext.Request.Url, new UrlHelper(this.ControllerContext.RequestContext).Action("Login")).AbsoluteUri;
owinContext.Authentication.SignOut(authProperties);
WSFederationAuthenticationModule.FederatedSignOut(
new Uri("https://xxxxxxx/adfs/ls/?wa=wsignoutcleanup1.0"),
new Uri("https://localhost:44320/Home/Index"));
//AuthenticationManager.SignOut(DefaultAuthenticationTypes.ApplicationCookie);
//return RedirectToAction("Index", "Home");
}
问题是什么?此外,SLO通常是SAML特性。我使用的是联合而不是SAML