Iis
為什麼將讀取和執行權限分配給 IIS_IUSRS 會授予對 NETWORK SERVICE 的訪問權限?
我有一個經典的 ASP 站點,我正在嘗試使用匿名身份驗證進行設置。以下是我目前的設置:
- 應用程序池標識:NetworkService
- 匿名認證使用者:IUSR
將讀取和執行權限分配給
IUSR
帳戶和NETWORK SERVICE
站點目錄上的帳戶允許匿名訪問。但是,由於某種原因,NETWORK SERVICE
可以分配權限IIS_IUSRS
並達到相同的效果。這對我來說似乎很奇怪,因為應用程序池執行時選擇了 NetworkService 身份,而不是 ApplicationPoolIdentity 身份。並且使用net localgroup IIS_IUSRS
顯示NETWORK SERVICE
不是IIS_IUSRS
機器上的組的成員。那麼,為什麼要分配權限以
IIS_IUSRS
授予對NETWORK SERVICE
帳戶的訪問權限呢?我想也許有一些奇怪的回退邏輯,如果它無法
NETWORK SERVICE
使用NT Authority\NETWORK SERVICE
. 有任何想法嗎?如果有幫助,這裡是一些伺服器資訊:
- 作業系統:Windows Server 2008 R2 標準服務包 1
- IIS:7.5.7600.16385
- 應用程序池:.NET Framework v2.0、經典託管管道、NetworkService Identity
執行 IIS 應用程序池的任何帳戶都會
IIS_IUSRS
在執行時自動添加到組中。或者更準確地說,該
IIS_IUSRS
組的安全令牌被添加到執行任何應用程序池的程序的安全令牌中。查看
IIS_IUSRS
組的靜態成員資格會讓您對正在發生的事情產生錯誤的認識。如果您查看 Process Explorer 中的安全選項卡,您應該將
BUILTIN\IIS_IUSRS
其視為流程組之一w3wp.exe
。