Asp.net Azure网站使用ADF进行SSO

Asp.net Azure网站使用ADF进行SSO,asp.net,azure,azure-web-roles,azure-web-app-service,adfs,Asp.net,Azure,Azure Web Roles,Azure Web App Service,Adfs,有一个在ASP.NET中开发并部署在Azure网站上的Web应用程序。SSO登录是使用ADFS身份验证提供的。登录用户名需要存储在数据库表中的一个审核列中。 首先,我尝试了以下代码: using System.Security.Claims; ClaimsPrincipal cp = ClaimsPrincipal.Current; string fullname = cp.FindFirst(ClaimTypes.Name).Value; 当部署在本地IIS上时,它可以正常工作,但当部署在

有一个在ASP.NET中开发并部署在Azure网站上的Web应用程序。SSO登录是使用ADFS身份验证提供的。登录用户名需要存储在数据库表中的一个审核列中。 首先,我尝试了以下代码:

using System.Security.Claims;

ClaimsPrincipal cp = ClaimsPrincipal.Current;
string fullname = cp.FindFirst(ClaimTypes.Name).Value;
当部署在本地IIS上时,它可以正常工作,但当部署在Azure网站上时,会引发null异常

我还尝试:

WindowsIdentity.GetCurrent().Name;

它在本地也可以正常工作,但在Azure网站上部署时会显示IIS APPPOOL\我认为你的问题不是很清楚,你能编辑你的问题使其更清楚吗?后者不起作用,它旨在显示进程的身份,而不是登录的用户。假设已正确设置sso,则前者应该可以工作。