使用 VBScript 執行特殊許可權作業

如果您使用適用于 WMI 的腳本 API,您可以設定特定的安全性許可權。 例如,您可以設定安全性許可權來要求作業系統關機,或檢查安全性事件記錄檔。 如需詳細資訊,請參閱 使用特殊許可權執行

您只需要在電腦上存取 WMI 時設定許可權。 當您存取遠端主機時,COM RPC 會自動設定許可權。 若要判斷所有必要的許可權,請參閱您想要存取之特定 WMI 類別的檔,例如 Win32_OperatingSystem。 如需詳細資訊,請參閱 WbemPrivilegeEnum

本主題將討論下列各節:

從 Security_ 物件設定 Privilege

使用下列程式在 Visual Basic 中設定安全性許可權。

在 Visual Basic 中設定許可權

  1. 建立 SWbemLocator類型的物件。

  2. 將新許可權新增至 SWbemLocator.Security_ 物件。

    Security_物件包含SWbemObjectSet集合。 集合中的物件為 SWbemSecurity 物件。 如需詳細資訊,請參閱 存取集合

  3. 登入 WMI 並擷取 SWbemServices 物件。

    SWbemServices物件會繼承上一個步驟中設定的許可權。

您也可以使用 SWbemPrivilegeSet.AddAsString 方法來設定許可權。

將許可權設定為 Moniker 的一部分

您可以將許可權設定為 Moniker 的一部分。

下列範例示範如何將偵錯許可權新增至 Moniker。

Set Service = GetObject("winmgmts:{impersonationLevel=impersonate, (Debug)}")

撤銷和重設許可權

下列範例示範如何設定 SeDebugPrivilege 許可權,並撤銷 SeRemoteShutdownPrivilege 許可權。

Set Service = GetObject("winmgmts:{impersonate,(Debug,!RemoteShutdown)}")

許可權常數

執行特殊許可權作業