0
我在哪里,我们让SharePoint 2013由ADFS服务器进行身份验证的环境。当我退出ADF的,我留在共享点登录。的SharePoint 2013 FederatedAuthentication为空
看来我的解决方案是使用FederatedAuthentication.SessionAuthenticationModule.SignOut();
然而,当我尝试这个,我得到对象引用不设置到对象的实例。
我在哪里,我们让SharePoint 2013由ADFS服务器进行身份验证的环境。当我退出ADF的,我留在共享点登录。的SharePoint 2013 FederatedAuthentication为空
看来我的解决方案是使用FederatedAuthentication.SessionAuthenticationModule.SignOut();
然而,当我尝试这个,我得到对象引用不设置到对象的实例。
我希望有人能指出我正确的方向。我试图让签出两个ADFS和SharePoint工作。下面是我使用
private void RemoveCookiesAndRedirect()
{
string ipUrl = GetIPUrl();
//if (ipUrl != string.Empty)
//{
string replyUrl = HttpUtility.UrlEncode(SPContext.Current.Site.RootWeb.Url);
string redirect = ipUrl + "?wa=wsignout1.0&wreply=" + replyUrl;
try
{
FederatedAuthentication.SessionAuthenticationModule.SignOut();
if (Context.Session != null) Context.Session.Abandon();
Context.Response.Redirect(redirect);
//}
}
catch (Exception ex)
{
LoggingService.LogError("LoginRedirect", ex.Message + " " + ex.InnerException + " " + ex.Data + " ipUrl:" + ipUrl + " redirect:" + redirect);
}
}
private string GetIPUrl()
{
IClaimsPrincipal user = Page.User as IClaimsPrincipal;
if (user == null) return string.Empty;
string ipUrl = string.Empty;
try
{
string providerName = (user.Identity.Name).Split('|')[1];
ipUrl = SPSecurityTokenServiceManager.Local.TrustedLoginProviders[providerName].ProviderUri.AbsoluteUri;
}
catch
{
//TODO:Log it
}
return ipUrl;
}
一旦进入FederatedAuthentication.SessionAuthenticationModule.SignOut()的代码;它错误了。
你准确的问题是什么? – nils 2015-03-31 20:23:31