我找到了相关的东西,但不是一回事。
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 添加读取权限来解决此问题。这似乎只是服务器环境的一个问题,并不确定是否与任何组策略或类似的相关。希望这可能在将来帮助某人。
答案 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)
通过转到高级设置来设置应用程序池的标识:
记住要编辑匿名身份验证,并使用应用程序池标识,或者指定有权访问要访问的资源的用户帐户