這裏的情景:遙控和自動化的IIS 7的管理 - 權限問題
- Win2003的構建服務器(CCNET)
- IIS7目標部署服務器
的各種MSBuild任務(SDC .Tasks,MSBuild的社區,MSBuild擴展包)執行此操作(創建VDirs,設置程序池屬性)不適合用於至少一個或多個下面的原因:
- 爲IIS 7.
- 無可能性不支持通過域用戶名/密碼來執行該操作。
- Microsoft.Web.Management.dll在構建服務器上不可用。
- '訪問被拒絕'錯誤。
有沒有問題,在IIS 6創建Vdirs - 儘管我們實際上炮擊了以Iisvdir.vbs將,因爲使用任何上述的MSBuild任務似乎要麼不支持域用戶名/密碼身份驗證時執行該操作或將簡單地引發一個基本的「訪問被拒絕」消息(儘管在IIS 6元數據庫上具有適當的權限)。
另外 - 請記住,如果沒有指定特定域user/pw,只要當前認證環境具有正確的權限,各種方法就可以在IIS 7上完美地工作,但出於顯而易見的原因,我們不希望全部我們的CCNET構建在這種情況下運行。
我甚至用psexec.exe來遠程執行appcmd.exe,如果當前的安全上下文有適當的權限,這也可以正常工作,但只要您在psexec上指定用戶名/密碼,就會得到一個錯誤消息說「由於權限不足,無法讀取配置文件」。指定的用戶是域帳戶,並且是2008服務器上本地管理員組的一部分。
而且 - 我已經結束了我自己的滾動運行方式MSBuild任務,從Exec任務繼承和使用可編程的模擬。然後,我使用它調用psexec,但沒有在psexec中指定用戶名和密碼,而是通過模擬psexec的shelling模擬,但我只是得到1的退出碼 - 沒有任何更多細節。
正如你所看到的,我已經用盡了所有的選擇,或者我認爲。
如果你能想到的任何東西,或者已經實現管理IIS7遠程,從自動化的過程在非IIS7盒(使用特定的非本地管理員用戶),請讓我知道。