維護 WMI 安全性

WMI 安全性著重于保護命名空間資料的存取。 WMI 會先授與 WMI 控制項 和 DCOM 設定所指定使用者群組的存取權,然後提供者會判斷使用者是否應該具有命名空間資料的存取權。

本主題將討論下列各節:

命名空間安全性

命名空間安全性取決於標準 Windows 使用者 安全性識別碼 (SID) ,以及 WMI 命名空間 的安全性描述元

您可以執行下列動作來設定命名空間安全性:

分散式元件物件模型 (DCOM) 安全性設定。

DCOM 安全性需要驗證設定和模擬設定。 驗證表示一個進程會自行識別到另一個進程。 模擬可識別用戶端授與伺服器呼叫不同進程的授權單位。 在安全性檢查期間,伺服器會模擬用戶端。 如需詳細資訊,請參閱 保護 C++ 用戶端和提供者保護腳本用戶端

腳本和 C/C++/C# 應用程式會在連線到 WMI 命名空間或使用預設設定時建立驗證和模擬層級。 遠端電腦的連線需要與本機電腦上的 WMI 命名空間不同的設定。 如需詳細資訊,請參閱 連線到遠端電腦上的 WMI

WMI、共用服務主機和驗證

WMI 位於共用服務主機中,且有數個其他服務是在 NetworkService 帳戶下執行。 在 Svchost 進程中,WMI 會與主機中的其他進程共用相同的驗證。

提供者 DLL 會從 WMI 載入個別的服務主機進程。 __Win32Provider系統類別中的HostingModel屬性,代表提供者用來指定提供者執行所在的系統帳戶。 設定此屬性會導致提供者載入具有指定許可權層級的共用主機進程。 如需詳細資訊,請參閱 提供者裝載和安全性

WMI 用戶端腳本和應用程式的安全性

腳本和應用程式必須建立正確的安全性,才能連線到本機和遠端電腦上的 WMI 命名空間。 如需詳細資訊,請參閱 保護 C++ 用戶端和提供者保護腳本用戶端,以及 保護 WMI 事件

下表列出維護 WMI 安全性的主題。

主題 描述
保護 WMI 命名空間 您可以透過 WMI 控制項來限制已授權使用者的命名空間資料存取。
保護您的提供者 撰寫安全提供者的相關資訊。
保護 C++ 用戶端和提供者 C++ 提供者和用戶端應用程式都必須執行許多相同的作業,才能維護 WMI 安全性。
保護腳本用戶端 腳本和 Visual Basic 應用程式 (自動化用戶端) 必須設定適當的安全性,才能存取 WMI 資料和事件。
保護 WMI 事件 WMI 事件是由事件提供者傳遞至暫時或永久取用者。 事件會以事件類別的實例形式傳遞。
變更安全性實體物件的存取安全性 您可以使用適當的許可權,在代表安全性實體物件上讀取或變更安全性描述元的安全性實體物件,在 WMI 物件上呼叫方法。

 

使用 WMI