WMI 安全性著重於保護命名空間數據的存取。 WMI 會先授與使用者群組的存取權,如 WMI 控件 和 DCOM 設定所指定,然後提供者會判斷使用者是否應該有權存取命名空間數據。
本主題將討論下列各節:
命名空間安全性
命名空間安全性取決於標準 Windows 使用者 安全性識別碼 (SID),以及 WMI 命名空間安全性描述元。
您可以執行下列動作來設定命名空間安全性:
- 使用 WMI 控制件或建立命名空間時,為使用者授與或拒絕命名空間的訪問許可權。 如需詳細資訊,請參閱 使用 WMI 控制件設定命名空間安全性 和 在建立命名空間時設定命名空間安全性。
- 使用 [WMI 控制件安全性] 索引標籤來建立安全性稽核。 當使用者在受稽核行為中失敗或成功時,安全性稽核會在事件記錄中創建條目,例如將數據寫入 WMI 物件或讀取安全描述符。 如需詳細資訊,請參閱 存取 WMI 命名空間。
- 使用定義命名空間的MOF檔案,要求使用者建立加密的連線。 如需詳細資訊,請參閱 要求對命名空間進行加密連線。
分散式元件物件模型 (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 物件上呼叫方法,以讀取或更改這些物件的安全性描述符。 |
相關主題