我有一个标准的ASP.NET网站,部署到我们的开发机器(我们服务器机房的内部机器)。
现在,INTERNAL和EXTERNAL用户都可以访问此开发站点。现在,在IIS6中我们曾经拥有它,以便匿名身份验证被关闭并打开了其他内容..为用户提供了一个用户名和密码的弹出模型框。我认为他们必须输入web.config文件中定义的一些用户名或密码? (不是他们的网站帐户用户名/密码)/
现在,使用IIS7,当我关闭匿名身份验证,并打开基本或 Windows身份验证时,我可以访问该网站但是它试图用这些凭证登录我...而不是用户注册的帐户(使用一些股票标准的asp.net webform页面)。
所以...是否可以“锁定”整个网站并让测试人员获得对网站的一般访问权限......这与他们的网站用户名和密码不同。这些用户名和密码将在网站中使用。
这有意义吗?
喝彩!
<authentication mode="Forms">
<forms loginUrl="~/Pages/Login.aspx" protection="Validation" timeout="1000000000" requireSSL="false" slidingExpiration="true" defaultUrl="Default.aspx">
</forms>
</authentication>
没有授权部分。
另外,当我向iis7添加'Digest Auth'并启用它(并禁用其他所有其他)时,我会弹出窗口(kewl!)但我不确定我需要传递哪些凭据。哪里可以我手动定义这些凭证(因此它们与网站的用户分开)??
答案 0 :(得分:6)
IIS7集成模式不支持IIS6执行的两阶段身份验证。基本上,IIS6将执行其身份验证(窗口),然后asp.net执行其身份验证(窗体)。但是对于IIS7,在集成模式下一切都是相同的,因此您只能使用一种或另一种身份验证方法。
您可以将应用程序池转换为使用经典模式,也可以按照this workaround使其使用集成模式。