即使「IIS APPPOOL\PoolName」設定正確,網站仍無法獲得正確的權限來寫入帶有 IIS 8.5 的 Windows 2012R2 下的資料夾

即使「IIS APPPOOL\PoolName」設定正確,網站仍無法獲得正確的權限來寫入帶有 IIS 8.5 的 Windows 2012R2 下的資料夾

我遇到了有關 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\dataforDefaultAppPool並且它很有效。

看完之後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打開時的情況預設網站最初並沒有重現相同的行為。

相關內容