【发布时间】:2014-09-30 18:00:51
【问题描述】:
这是我的场景:
我有一个 Intranet 应用程序。我想让网络用户使用 Windows 身份验证功能自动登录到应用程序。如果用户没有进入我的网络,我会向他们弹出一个登录屏幕。
所以,我把认证模式改成web.config文件为Windows。然后我使用HttpContext.User.Identity 对象来让登录的用户进入网络。所以我将应用程序运行到我的本地主机中,它运行良好。
当我将应用程序发布到服务器时,当我尝试自动登录时,Identity 对象始终为空。
所以,我尝试了以下步骤:
拒绝匿名用户。
<deny users="?"/>,不允许任何匿名用户进入应用程序,但我在这里遇到了一个问题:当用户没有进入我们的网络时,服务器会从 Window Servers 弹出默认身份验证窗口,而不是我的个人登录屏幕.让匿名用户进入。如果我摆脱了
<deny users="?"/>,任何用户都可以访问该页面,但它总是进入登录屏幕,即使我进入我的本地网络。
所以,我需要的是:当用户进入本地网络时,无需登录直接进入。如果不是,请向他们弹出一个登录屏幕。
有人可以帮我弄清楚发生了什么吗?
谢谢大家!
【问题讨论】:
-
这是一个常见问题,你需要根据wiktorzychla.com/2012/06/…检查你的配置
标签: c# asp.net authentication active-directory