5

我有一个标准的 ASP.NET 网站,部署到我们的开发机器(我们服务器机房的内部机器)。

现在,内部和外部用户都可以访问这个开发站点。现在,在 IIS6 中,我们曾经拥有它,因此关闭了匿名身份验证并打开其他东西.. 为用户提供了一个用于用户名和密码的弹出模型框。我认为他们必须输入一些在 web.config 文件中定义的用户名或密码?(不是他们的网站帐户用户名/密码)/

现在,使用 IIS7,当我关闭Anon Auth并打开BasicWindows Auth时,我可以访问该站点但它试图使用这些凭据登录我..而不是用户注册的帐户(使用一些库存标准 asp.net 网络表单页面)。

那么......是否可以“锁定”整个网站并让测试人员获得对该网站的一般访问权限......这与他们的网站用户名和密码不同。这些用户名和密码是在网站中使用的。

那有意义吗?

干杯!


<authentication mode="Forms">
    <forms loginUrl="~/Pages/Login.aspx" protection="Validation" timeout="1000000000" requireSSL="false" slidingExpiration="true" defaultUrl="Default.aspx">
    </forms>
</authentication>

没有授权部分。

另外,当我将“摘要身份验证”添加到 iis7 并启用它(并禁用其他所有内容)时,我得到弹出窗口(kewl!)但我不确定我需要传递什么凭据。我在哪里可以定义那些手动凭据(因此它们与网站的用户分开)??

4

1 回答 1

6

IIS7 集成模式不支持 IIS6 所做的两阶段身份验证。基本上,IIS6 将执行其身份验证(Windows),然后由 asp.net 执行其身份验证(表单)。但是对于 IIS7,在集成模式下一切都是平等的,因此您只能使用一种或另一种身份验证方法。

您可以将应用程序池转换为使用经典模式,也可以按照此解决方法使其在集成模式下工作。

于 2009-01-13T02:32:59.107 回答