获取特定的防火墙规则选项

本文关键字:规则 选项 防火墙 获取 | 更新日期: 2023-09-27 18:17:20

我想按名称获得一个特定的防火墙规则,并查看它使用的选项(特别是IP范围),并将其与其他内容进行比较。这是可能的吗?我在网上搜索了,但是什么也没找到。

我是这样添加规则的:

INetFwPolicy2 firewallPolicy = (INetFwPolicy2)Activator.CreateInstance(Type.GetTypeFromProgID("HNetCfg.FwPolicy2"));
INetFwRule firewallRule = firewallPolicy.Rules.OfType<INetFwRule>().Where(x => x.Name == RULE_NAME).FirstOrDefault();
if (firewallRule == null)
{
    firewallRule = (INetFwRule)Activator.CreateInstance(Type.GetTypeFromProgID("HNetCfg.FWRule"));
    firewallRule.Name = RULE_NAME;
    /* More stuff */
    firewallPolicy.Rules.Add(firewallRule);
}

获取特定的防火墙规则选项

在对象firewallPolicy中。规则中,您可以访问并使用foreach循环去执行防火墙内的每条规则。如果你需要特定的规则,使用linq在集合中搜索:像这样:

var rule = firewallPolicy.Rules。Where(n=> n. name == "your name");