【发布时间】:2012-04-06 14:56:45
【问题描述】:
对于 ASP.NET MVC 2 应用程序,我们使用 HttpContext.User.Identity.Name 获取用户名以进行身份验证。这在测试时工作正常。数据库中的用户能够访问他们有权访问的区域,否则会被重定向到 401 页面。 401 页面显示他们的用户名,说明此用户无权访问此内容。
但是,在已部署的环境中,所有访问应用程序任何部分的尝试都会重定向到 401 页面,并且显示的用户名是空白的!
我们如何让部署的应用程序访问请求的用户名?
根据我的研究,我应该转到以下屏幕并启用 Windows 身份验证,但它不在列表中!
【问题讨论】:
-
您使用什么身份验证方案? Windows 集成?表格?
-
您要部署到服务器场吗?在服务器场上使用会话变量时遇到了问题。
-
我们目前正在测试本地机器的部署。
-
你是如何执行授权的?您可能需要在 IIS 应用程序中禁用匿名身份验证,以强制来自浏览器的身份验证响应。
-
@DavidNelson 试过了,得到了 IIS 401。
HTTP Error 401.2 - Unauthorized You are not authorized to view this page due to invalid authentication headers.
标签: c# asp.net iis asp.net-mvc-2 authentication