【问题标题】:IIS7 folder permissions for web applicationWeb 应用程序的 IIS7 文件夹权限
【发布时间】:2011-02-01 16:33:31
【问题描述】:

我正在使用 IIS7 在我公司的 Intranet 网站上使用 Windows 身份验证,而无需模拟。

在 IIS7 下,使用这些设置访问包含我的 Web 应用程序的文件夹是什么帐户?

是 IIS_IUSRS 吗?还是网络服务?还是其他我不知道的?

【问题讨论】:

标签: asp.net iis-7 windows-server-2008 windows-authentication


【解决方案1】:

在 IIS 7(不是 IIS 7.5)中,站点根据在站点的应用程序池上设置的帐户访问文件和文件夹。默认情况下,在 IIS7 中,此帐户为 NETWORK SERVICE

Specify an Identity for an Application Pool (IIS 7)

在 IIS 7.5(Windows 2008 R2 和 Windows 7)中,应用程序池在应用程序池启动时创建的 ApplicationPoolIdentity 下运行。如果你想为这个账号设置ACLS,你需要选择IIS AppPool\ApplicationPoolName而不是NT Authority\Network Service

【讨论】:

  • 请注意,它不是字面上的 IIS AppPool\ApplicationPoolName ,而是 IIS AppPool\<yourpoolname>
  • 在 IIS 7.5 中,应用程序池的默认标识是 ApplicationPoolIdentity。 ApplicationPoolIdentity 表示一个名为“IIS APPPOOL\AppPoolName”的 Windows 用户帐户,它是在创建应用程序池时创建的,其中 AppPoolName 是应用程序池的名称。默认情况下,“IIS APPPOOL\[AppPoolName]”用户是 IIS_IUSRS 组的成员。所以你需要授予对 IIS_IUSRS 组的写访问权限
  • 使用较新版本的 Windows 的人可能会发现这篇文章对配置“AppPool\DefaultAppPool”帐户很有用,如果他们有类似的问题:iis.net/learn/manage/configuring-security/…。这也有助于避免我从 Windows 8 更新到 8.1 后出现的错误,其中显示:“加载配置文件时发生错误:无法开始监视对 [完整文件路径] 的更改,因为访问被拒绝。”。跨度>
  • 我已授予应用程序池的完全权限..但仍然获得拒绝访问。
【解决方案2】:

http://forums.iis.net/t/1187650.aspx 有答案。将 iis 身份验证设置为应用程序池身份将解决此问题。

在 IIS 身份验证中,匿名身份验证设置为“特定用户”。当我将其更改为应用程序池时,我可以访问该站点。

要设置,请在 IIS 中单击您的网站,然后双击“身份验证”。右键单击“匿名身​​份验证”,然后单击“编辑...”选项。从“特定用户”切换到“应用程序池标识”。现在您应该可以使用 IIS AppPool\{Your App Pool Name} 设置文件和文件夹权限了。

【讨论】:

  • 这帮助很大。如果您不将匿名身份验证从“特定用户”更改为“应用程序池标识”,则您的权限更改不会在设置 IIS AppPool\{Your App Pool Name} 权限时反映出来。
  • 天哪。似乎没有人注意到这一点。这刚刚解决了几个小时的挖掘问题。
  • +1 教我如何钓鱼。找出用户 IIS 使用什么比在特定版本的 IIS 中说明用户当前使用什么更有价值。
【解决方案3】:

如果对任何人有任何帮助,请授予“IIS_IUSRS”组权限。

请注意,如果您找不到“IIS_IUSRS”,请尝试在其前面加上您的服务器名称,例如“MySexyServer\IIS_IUSRS”。

【讨论】:

  • 这是为我做的。我错过了服务器名称,还没有看到有人提到过。
  • 为此,您始终可以使用本地表示法“.\IIS_IUSRS”
【解决方案4】:

运行 IIS 7.5,我很幸运地为本地计算机用户 IUSR 添加了权限。应用程序池用户不起作用。

【讨论】:

    【解决方案5】:

    在 30 秒内为我工作,简短而甜蜜:

    1. 在 IIS 管理器中(运行 inetmgr)
    2. 转到应用程序池 -> 高级设置
    3. 将 ApplicationPoolIdentity 设置为 NetworkService
    4. 转到文件,右键单击属性,转到安全,单击编辑,单击添加,输入网络服务(带空格,然后单击“检查名称”),并授予完全控制权(或您需要的任何权限)

    【讨论】:

    • 做到了!谢谢
    【解决方案6】:
    1. 在 IIS 7.5 和 Windows 7 上工作我无法授予权限 APPPOOL/Mypool
    2. IUSR 和 IIS_IUSRS 权限对我不起作用
    3. 我遇到了这样的问题:

      -使用 C# 创建控制台应用程序
      - 这个应用程序使用 createeventsource 像这样

      if(!System.Diagnostics.EventLog.SourceExists(sourceName)) System.Diagnostics.EventLog.CreateEventSource(sourceName,logName);

      -构建解决方案并获取.exe文件

      -以管理员身份运行exe。这将创建日志文件。

    注意:不要记住必须刷新事件查看器才能查看日志。

    我希望这个解决方案可以帮助某人:)

    【讨论】:

      【解决方案7】:

      使用 IIS 的 Web 主机应用程序的读/写权限遵循以下步骤:-

      1) 检查站点的应用程序池

      2) 转到应用程序池并检查站点的身份。

      3) 浏览站点并转到主文件夹并右键单击该文件夹。

      4)转到安全选项卡并单击编辑按钮,然后单击用户身份,您可以在下面看到多个复选框选项选中复选框点击保存后,您要为经过身份验证的用户提供权限。

      【讨论】:

      • “2)”的图像应显示图像中引用的条目“1)”的应用程序池名称,目前它显示其他池并应显示“测试”。条目“4)”的图像应包括所需的用户/组。我看不出编辑“CREATOR OWNER”会如何影响应用程序池、IUSR 或 IIS_IUSRS 使用的访问权限。
      猜你喜欢
      • 2011-12-30
      • 1970-01-01
      • 1970-01-01
      • 2016-11-06
      • 2011-08-19
      • 2011-05-09
      • 2011-02-15
      • 2016-10-07
      • 1970-01-01
      相关资源
      最近更新 更多