如何让NT AUTHORITY \ IUSR访问共享文件夹内容?

时间:2010-08-17 16:00:18

标签: asp.net iis .net-4.0 iis-7.5

我找到了相关的东西,但不是一回事。

The error "Login failed for user 'NT AUTHORITY\IUSR'" in ASP.NET and SQL Server 2008

我的问题是文件在网络上共享,我想从本地IIS调试,我发现所有静态文件似乎都被拒绝访问(401.3)

我使用了跟踪系统,发现IIS正在使用“NT AUTHORITY \ IUSR”访问源

Url http://localhost:8451/umbraco_client/panel/images/panel_boxhead_h2_bg.gif 
App Pool Debug451 
Authentication anonymous 
User from token NT AUTHORITY\IUSR 
Activity ID 

我已将共享文件夹设置为每个人都可以访问,并将应用程序池的标识更改为域管理员。

我还尝试使用'网络服务'作为身份,并将Domain \ MachineName $完全访问权限分配给共享文件夹......

在我看来,我总是使用“NT AUTHORITY \ IUSR”来访问静态资源?如果是这样,我如何将共享文件夹的访问权限授予本地帐户?或者我如何强制IIS使用其他身份?


更新: 因为当时我放弃了这个老问题的新答案。我最近在运行Windows 2008 R2的服务器上最近再次遇到过类似的问题,我已经解决了,我想提供一些更新。

我这次通过向$ ComputerName / Users 添加读取权限来解决此问题。这似乎只是服务器环境的一个问题,并不确定是否与任何组策略或类似的相关。希望这可能在将来帮助某人。

5 个答案:

答案 0 :(得分:2)

一旦您将应用程序池的用户配置为具有对共享文件夹的访问权限(在Windows中创建新用户并将其添加到IUSER组,并为该用户的共享文件夹添加特定访问权限),您必须在IIS中更改身份验证设置:IIS->需要访问的网站 - >身份验证设置 - >匿名身份验证 - >编辑 - >选择应用程序池身份(而不是IUSER)。

答案 1 :(得分:0)

确保已启用IIS以提供静态内容。我也有这个问题,它让我疯了,直到我想出来。

在“打开或关闭Windows功能”中,转到“Internet信息服务>万维网服务>常见HTTP功能>静态内容”(对于Windows 7;您必须找到类似选项) XP)。

我不知道这会有多大帮助,但也see Microsoft's documentation

答案 2 :(得分:0)

这对我有用,谢谢。 转到共享文件夹 - >右键单击 - >属性 - >安全性 - >编辑 - >添加(通常) - >选择对象类型 - >检查计算机 - >现在输入您的应用程序所在的计算机名称,您发布应用程序的位置

答案 3 :(得分:0)

您可以尝试$ [computername] \ IUSR>你会想要使用高级搜索来查看Windows权限。

或者......您可以将共享文件夹设置为IIS本地的驱动器并以此方式访问它。所以[serverb] \ share映射到服务器A上的一个字母,IIS以这种方式访问​​它。

答案 4 :(得分:0)

通过转到高级设置来设置应用程序池的标识:

记住要编辑匿名身份验证,并使用应用程序池标识,或者指定有权访问要访问的资源的用户帐户