这是我的场景:ASP.NET Windows身份验证+服务器总是获取匿名用户
我有一个Intranet应用程序。我想让网络用户使用Windows身份验证功能自动登录到应用程序。如果用户不在我的网络中,我会弹出一个登录屏幕。
因此,我将身份验证模式更改为web.config文件至Windows
。然后,我使用HttpContext.User.Identity
对象来获取登录的用户进入网络。所以我运行该应用程序到我的本地主机,它的效果很好。
当我将应用程序发布到服务器中时,当我尝试自动登录时,Identity
对象始终为空。
所以,我尝试以下步骤:
拒绝匿名用户。
<deny users="?"/>
,它不允许任何匿名用户在应用程序中输入,但我在这里遇到了一个问题:当用户不在我们的网络中时,服务器从Window Server弹出默认的认证窗口,而不是我的个人登录屏幕。让匿名用户。如果我与
<deny users="?"/>
摆脱,任何用户都可以访问该页面,但它总是去的登录屏幕,即使我到我的本地网络。
所以,我需要的是:当用户进入本地网络时,不用登录就直奔。如果不是,则弹出一个登录屏幕给他们。
有人能帮我弄清楚发生了什么事吗?
谢谢大家!
这是一个常见问题,您需要根据http://www.wiktorzychla.com/2012/06/iis-75-integrated-security-with-no.html – 2014-09-30 18:22:13