在 CIM 实例中设置 PolicyStore
set PolicyStore in CIM instance
Get-NetFirewallProfile
cmdlet 具有选项 -PolicyStore ActiveStore
,它是该计算机上所有策略的总和。当我 运行 它时,我得到了考虑 GPO 的防火墙配置文件状态。
或者我可以使用 Get-CimInstance -Namespace Root\StandardCimv2 -ClassName MSFT_NetFirewallProfile
或 Get-WmiObject -Namespace "Root\StandardCimv2" -Query "SELECT * FROM MSFT_NetFirewallProfile"
获取 CIM 实例,但 GPO 值被丢弃。
如何在 Get-WmiObject -Namespace "Root\StandardCimv2" -Query "SELECT * FROM MSFT_NetFirewallProfile"
中设置策略存储?
最后,我将使用 wbemcli api
在 C++ 中实现查询
您可以使用 IWbemContext 指定 PolicyStore 参数。以下是说明其用法的代码示例:
PowerShell:
$CimSession = New-CimSession
$options = New-Object Microsoft.Management.Infrastructure.Options.CimOperationOptions
$options.SetCustomOption("PolicyStore", "ActiveStore", $true)
$CimSession.EnumerateInstances("Root\StandardCimv2", "MSFT_NetFirewallProfile", $options)
VB:
strComputer = "."
Set objSWbemServices = GetObject("winmgmts:\" & strComputer & "\root\StandardCimv2")
Set objCtx = CreateObject("WbemScripting.SWbemNamedValueSet")
objCtx.Add "PolicyStore", "ActiveStore"
Set colSWbemObjectSet = objSWbemServices.InstancesOf("MSFT_NetFirewallProfile",,objCtx)
For Each objSWbemObject In colSWbemObjectSet
Wscript.Echo "Enabled: " & objSWbemObject.Enabled
Next
Get-NetFirewallProfile
cmdlet 具有选项 -PolicyStore ActiveStore
,它是该计算机上所有策略的总和。当我 运行 它时,我得到了考虑 GPO 的防火墙配置文件状态。
或者我可以使用 Get-CimInstance -Namespace Root\StandardCimv2 -ClassName MSFT_NetFirewallProfile
或 Get-WmiObject -Namespace "Root\StandardCimv2" -Query "SELECT * FROM MSFT_NetFirewallProfile"
获取 CIM 实例,但 GPO 值被丢弃。
如何在 Get-WmiObject -Namespace "Root\StandardCimv2" -Query "SELECT * FROM MSFT_NetFirewallProfile"
中设置策略存储?
最后,我将使用 wbemcli api
在 C++ 中实现查询
您可以使用 IWbemContext 指定 PolicyStore 参数。以下是说明其用法的代码示例:
PowerShell:
$CimSession = New-CimSession
$options = New-Object Microsoft.Management.Infrastructure.Options.CimOperationOptions
$options.SetCustomOption("PolicyStore", "ActiveStore", $true)
$CimSession.EnumerateInstances("Root\StandardCimv2", "MSFT_NetFirewallProfile", $options)
VB:
strComputer = "."
Set objSWbemServices = GetObject("winmgmts:\" & strComputer & "\root\StandardCimv2")
Set objCtx = CreateObject("WbemScripting.SWbemNamedValueSet")
objCtx.Add "PolicyStore", "ActiveStore"
Set colSWbemObjectSet = objSWbemServices.InstancesOf("MSFT_NetFirewallProfile",,objCtx)
For Each objSWbemObject In colSWbemObjectSet
Wscript.Echo "Enabled: " & objSWbemObject.Enabled
Next