原創地址:http://www.cnblogs.com/jfzhu/p/4067297.html
轉載請注明出處
從IIS 7.5開始,Application Pool Identity的Built-in Account除了LocalService,LocalSystem,NetWorkService又多了一個ApplicationPoolIdentity。關於Built-in Account參見《Windows服務使用的登陸帳號》。
ApplicationPoolIdentity是IIS默認選擇的Application Pool Identity。在啟動應用池時會動態創建和應用池同名的虛擬帳號。說它是“虛擬”的,是因為在用戶管理中看不到該用戶或用戶組,但該帳號又是確實存在的,比如上圖中的應用池名字是WCFDemo,在任務管理器中可以看到w3wp.exe進程(即IIS進程)運行在WCFDemo帳號下。
一個ASP.NET web application可能需要對certificates store中的一個certificate的private key有讀權限,下面演示如何對application pool identity賦予讀權限。
點擊Add
添加 IIS AppPool\AppPoolName帳號,替換AppPoolName為應用池的名稱,這里為WCFDemo。
總結:ApplicationPoolIdentity是從IIS 7.5之后新添加的Built-in account,是IIS創建新application pool時默認選擇的運行帳號。該帳號在啟動Application Pool是啟動一個虛擬帳號,虛擬帳號名與Application Pool同名,在用戶管理中找不到虛擬帳號,但在Task Manager中可以看到w3wp.exe運行在該虛擬帳號下。最后如果想給該虛擬帳號賦予權限,需要賦給IIS AppPool\AppPoolName,取代AppPoolName為Application Pool名稱。