IIS7身份验证问题

时间:2009-03-30 20:13:19

标签: iis iis-7 windows-authentication

我已将网站部署到带有IIS7的Win 2008 Web服务器。该站点在带有IIS6的Win 2003 Standard服务器上运行良好。在2008年的盒子上,每当我从名为Reports的文件夹中请求页面(htm或aspx)时,我都会遇到Windows身份验证对话框的挑战。

我在网站上启用了匿名身份验证和表单身份验证。我对NETWORK SERVICE和IIS_IUSRS的站点根目录应用了完全控制权限,但这没有什么区别。

7 个答案:

答案 0 :(得分:2)

与之前提到的帖子类似,以下是解决此问题的详细步骤:)

如果名为“Reports”的应用程序中有一个文件夹,并且服务器上安装了SQL Server Reporting Services,则名为“Reports”的Reporting Services Virtual Directory文件夹将与应用程序“Reports”文件夹冲突。 要修复此打开的Reporting Services配置管理器(开始 - >所有程序 - > MS SQL Server->配置工具)并更改左侧菜单中“报表管理器URL”下的虚拟目录。

答案 1 :(得分:1)

您是否在新计算机上安装了MSSQL Reporting Services?它将使用报告工具包的Reports文件夹(默认设置)和MSSQL 2008下you can't enable anonymous Access out of the box.

答案 2 :(得分:0)

什么是web.config中的身份验证模式,验证它不在Windows

<authentication mode="Windows" />

还要确保在iis中禁用集成的Windows身份验证

答案 3 :(得分:0)

您可以尝试从SysInternals运行FileMon,看看它是否是发送回“拒绝访问”的文件系统。

答案 4 :(得分:0)

引用另一个为我解决此问题的论坛: “如果在IIS上安装SQL Server Reporting Services,则默认情况下会创建名为Reports的文件夹。如果安装SQL 2008,则Reporting Services不需要使用IIS,而是尝试使用HTTP.Sys服务保留URL。” / p>

我相信这是你所看到的冲突的原因。您可以尝试通过SQL Server Reporting Services配置管理器更改Reporting Services使用的URL。“

答案 5 :(得分:0)

在这里谈到同一主题,昨天我在Windows Server 2008上部署了运行IIS7 w / MSSQL 2008的应用程序。在我网站的树形结构中,我有一个名为Reports的文件夹,其中包含一个子文件夹,然后是实际的页面。它看起来像是“Reports / SalaryReports / SalaryReport.aspx”。有趣的是,当我点击超链接转到“Reports / SalaryReports / SalaryReport.aspx”时,我从服务器获得了用户名/密码提示。当我在开发机器上运行应用程序时,VS开发服务器上没有发生这种情况。所以我就像嗯?我查看了SalaryReport.aspx中的代码隐藏,但没有发现任何异常。然后我将Default.aspx直接放在Reports文件夹中(想想可能是从根目录下来两个节点到SalaryReport.aspx的身份验证有问题)但服务器仍然请求用户名/密码,即使没有应用于此新Default.aspx的安全设置。所以我认为必须将文件夹命名为“Reports”,所以我将其重命名为“Reports1”和bigno!一切正常!....今天我仍然会在这个问题上看得更远,但似乎IIS 7 HttpModule(我的不是其中之一)试图“保留”名为“Reports”的文件夹本身或其他东西否则......我将查看上面提到的SQL Server Reporting服务... 无论如何,只是想分享:)

答案 6 :(得分:0)

我假设你没有在同一台服务器上运行SQL Reporting Services:

1 - 授予用户“IUSR”和运行应用程序池的用户权限。 2 - 覆盖子文件夹权限和所有权。 2 - 检查该文件夹上是否有web.config文件设置不同的访问规则。