尽管“IIS APPPOOL\PoolName”设置正确,网站仍无法获取在 Windows 2012R2 中使用 IIS 8.5 写入文件夹的适当权限

尽管“IIS APPPOOL\PoolName”设置正确,网站仍无法获取在 Windows 2012R2 中使用 IIS 8.5 写入文件夹的适当权限

我在 IIS 8.5、权限和审核方面遇到了特定问题。我有一个在 KanboardPool 身份下运行的 PHP 应用程序,并且我已正确将应用程序“数据”文件夹的权限设置为“IIS APPPOOL\KanboardPool”以进行完全控制。

此外,我已将 IIS_IUSRS 设置为读取、执行和列出同一文件夹(包括父文件夹)。无论如何,我仍然会遇到权限被拒绝的失败。

我尝试审计文件访问失败,但没有成功:首先通过 GPO 域策略 -> 计算机配置 -> Windows 设置 -> 安全设置 -> 高级审计 -> 审计文件访问成功和失败。这没有记录任何审计失败。通过域控制器策略执行相同的程序,最后出于某种原因通过本地策略执行相同的程序。审计策略更改被添加,然后陆续被删除。

通过 ACL,我对选定的主体“IIS APPPOOL\KanboardPool”运行了有效访问测试,结果非常顺利。现在我被难住了?

答案1

这个问题特别难以诊断,因为它无法在默认网站。当我在身份C:\inetpub\wwwroot\subfoldeer\phpapplication下放置相同的应用程序时。DefaultAppPool

我只需添加即可完全控制并且它简单地C:\inetpub\wwwroot\subfolder\phpapplication\data起作用DefaultAppPool了。

看完之后http://www.iis.net/learn/get-started/planning-for-security/secure-content-in-iis-through-file-system-acls;fcgi.impersonate启用php.ini; 它将自动模拟经过身份验证的用户。Viola,关闭此功能后,PHP 进程将采用 AppPoolIdentity 并按预期工作。

这解释了为什么我没有收到 KanboardPool 的文件访问失败。但是它没有解释为什么fcgi.impersonate默认网站最初并没有重现相同的行为。

相关内容