stackoverflow 上有类似的问题,我也在那里发布了几乎相同的问题,但没有回复。
我的场景是这样的:当用户访问内部站点(ASP Classic、IIS 6、Windows Server 2003)时,我希望它能够自动登录并根据他们的 Active Directory 记录确定他们的身份,而无需弹出要求他们输入用户名和密码的窗口。在 IIS 中使用匿名身份验证意味着 ASP 中的 LOGON_USER 会输出管理员用户。关闭匿名意味着我会收到弹出窗口。
因为他们已经登录了 Windows,有没有办法让它知道他们是谁,而不需要他们再次输入用户名和密码。
我已经破解了 ASP 中的 AD 集成。所以我可以读取他们的记录以及我想要做的一切。只需阻止它要求输入用户名和密码即可。
提前致谢,詹姆斯
编辑根据 CJM 的要求:
我在 IIS 中尝试了以下组合:设置匿名访问在集成 Windows 身份验证在我得到(正如预期):没有登录框(用户字符串:CN = IUSR_WIN2K3R2EE,CN = Users ...等)
设置匿名访问离开集成 Windows 身份验证在我得到(正如预期):一个登录框,我以用户身份登录:jameshaley(用户字符串:CN=James Haley,CN=Users...etc)
设置匿名访问离开集成 Windows 身份验证在以及 Win 域服务器的 Digest Auth在我还得到了(正如预期的那样):一个登录框,我以用户身份登录:jameshaley(用户字符串:CN = James Haley,CN = Users ...等)
设置匿名访问离开集成 Windows 身份验证在以及 Win 域服务器的 Digest Auth在我还得到了(正如预期的那样):一个登录框,我以用户身份登录:jameshaley(用户字符串:CN = James Haley,CN = Users ...等)
设置匿名访问离开集成 Windows 身份验证在, Win 域服务器的 Digest Auth在和基本身份验证在我再次得到(正如预期的那样):一个登录框,我以用户身份登录:jameshaley(用户字符串:CN=James Haley,CN=Users...etc)
我尝试了所有可能的组合,但就是不起作用 :(
答案1
您应该启用 Windows 身份验证并禁用匿名访问。出现登录弹出窗口是因为您的浏览器中的站点不受 Windows 身份验证的信任。请参阅本文以在 FF 中启用 Windows 身份验证 http://www.1stbyte.com/2008/03/15/automatic-windows-authentication-with-firefox-networkautomatic-ntlm-authtrusted-uris/ 以及这篇文章如何在 IE 中启用它 http://www.1stbyte.com/2008/03/15/ie7-fails-to-automatically-authenticate-with-enable-integrated-windows-authentication-checked/