[WMI][VB2005]遠端啟動網頁服務的驗證模式

Key word: WMI, remote, IIS, web server, Access Denied
 
一般直接呼叫 WMI 的方法在 IIS 服務下並不能正常通過驗證,這個在網路上很多人問,沒看到解答,最終還是得搬出 MSDN 慢慢看,在下面的往只有個備註就是解答:
Note:

There has been a change in the IIS WMI provider for Windows Server 2003 Service Pack 1 and Windows XP with Service Pack 2 that requires customers to update WMI-based scripts that operate over a remote connection. WMI-based scripts that do not encrypt the connection when administering IIS remotely fail with an Access Denied error (WBEM_E_ACCESS_DENIED, 0x80041003). You must use the AuthenticationLevel property.

 
點進去看AuthenticationLevel,所以:
VBScript / VB6 是調整連線字串:
Set objinst = GetObject("WinMgmts:{impersonationLevel=impersonate,authenticationLevel=pktPrivacy}!root/cimv2:Win32_LogicalDisk=’c:’")
 
VB2005 是調整 ConnectionOptions 屬性:

Dim connection As New Management.ConnectionOptions

With connection

     .Username = strUserName

     .Password = strPassword

     .Impersonation = Management.ImpersonationLevel.Impersonate

     .Authentication = Management.AuthenticationLevel.PacketPrivacy

     .Authority = "ntlmdomain:DOMAIN"

End With

scope = New Management.ManagementScope("\" & strComputerName & strRoot, connection)

 
若是沒改驗證方式的話,會碰上拒絕存取 (Access Denied) 的錯誤訊息。
廣告
Categories: 技術分享 | 發表留言

文章分頁導航

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s

在WordPress.com寫網誌.

%d 位部落客按了讚: