ASP.NET中User.Identity.Name为空吗?如何判断用户身份信息是否缺失?
- 内容介绍
- 文章标签
- 相关推荐
本文共计327个文字,预计阅读时间需要2分钟。
我使用Visual Studio 2015在我的办公室PC上创建了一个简单的Web API项目。Windows登录公用域(AD)。我修改了web.config文件以集成身份验证 - system.web.authentication.mode=Windows / url=http://lo。
我使用visual studio 2015在我的办公室PC上创建了一个简单的web api项目, Windows登录公司Domain(AD).我更改了web.config文件以进行集成身份验证 – < system.web>< authentication mode =“Windows”/>. url localhost:23151/api/Model1从数据库返回有效的xml数据.我在IIS Express(开发服务器)设置的项目属性中将匿名身份验证更改为已禁用,并将Windows身份验证更改为已启用.
我在公共IQuerybal< Model1>中设置了一个断点. GetModel1()并检查User.Identity.Name的值,它返回null?
更新:
奇怪的是我在另一台PC上创建了一个新项目(仍在Visual Studio 2015中),我可以从属性User.Identity.Name获取我的Windows登录信息.
更新2:
我试图将项目文件复制到新PC,它仍然有同样的问题.所以它应该是项目中的一些设置.很奇怪.
如果您需要允许匿名访问相同的操作,您还可以添加[AllowAnonymous]属性,但如果您至少没有[授权],则不会填充任何用户信息.
本文共计327个文字,预计阅读时间需要2分钟。
我使用Visual Studio 2015在我的办公室PC上创建了一个简单的Web API项目。Windows登录公用域(AD)。我修改了web.config文件以集成身份验证 - system.web.authentication.mode=Windows / url=http://lo。
我使用visual studio 2015在我的办公室PC上创建了一个简单的web api项目, Windows登录公司Domain(AD).我更改了web.config文件以进行集成身份验证 – < system.web>< authentication mode =“Windows”/>. url localhost:23151/api/Model1从数据库返回有效的xml数据.我在IIS Express(开发服务器)设置的项目属性中将匿名身份验证更改为已禁用,并将Windows身份验证更改为已启用.
我在公共IQuerybal< Model1>中设置了一个断点. GetModel1()并检查User.Identity.Name的值,它返回null?
更新:
奇怪的是我在另一台PC上创建了一个新项目(仍在Visual Studio 2015中),我可以从属性User.Identity.Name获取我的Windows登录信息.
更新2:
我试图将项目文件复制到新PC,它仍然有同样的问题.所以它应该是项目中的一些设置.很奇怪.
如果您需要允许匿名访问相同的操作,您还可以添加[AllowAnonymous]属性,但如果您至少没有[授权],则不会填充任何用户信息.

