我有一個C#應用程序,它通過WMI連接到許多遠程系統,無論是在域中還是獨立的。該方案向wmi提供憑證並使用模擬。當手動運行(從控制檯)時,它連接良好,一切正常。但是,當從服務(作爲本地用戶運行)調用相同的.exe時,它在調用ManagementScope上的Connect()時總是獲得0x80070005(E_ACCESSDENIED)。嘗試從服務進行遠程WMI調用時訪問被拒絕
我已經搜索了很多,發現了許多類似主題上看似有用的文章,但都沒有奏效。 This one和他在MS網站上的[後續文章] [2]非常相似,除了我的連接失敗,而不是嘗試運行查詢時,所以感覺就像是本地系統權限問題。
我已經搞砸了DCOM權限,WMI遠程處理權限,模擬選項,策略選項,Windows防火牆等等,都沒有結果。有沒有人可以幫忙?
編輯:多一點挖掘我發現從MS的this small page,這真的指向我的錯誤(0x80070005)是連接期間發生的DCOM問題,而不是特定的WMI錯誤。他們給出的原因是1.證書失敗,或者2. DCOM啓動/遠程激活權限。由於我的程序在使用相同憑證手動運行時運行,因此我必須假定它存在DCOM問題。我已經設置啓動Remote/Local Activation &以允許SYSTEM,LOCAL SERVICE,INTERACTIVE和Administrators,但仍然失敗。由於該服務以本地系統運行,因此我認爲這些設置應該足夠了。
你解決了這個問題嗎?這裏的問題類似。 – dalvarezmartinez1 2015-03-30 09:52:55