繁体   English   中英

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

[英]Get specific firewall rule options

我希望按名称获取特定的防火墙规则,并查看它使用的选项(具体是IP Scope)并将其与某些内容进行比较。 这是可能的,我在网上搜索但找不到任何东西。

这是我添加规则的方式:

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.Rules中,您可以访问并使用foreach循环来获取防火墙内的每个规则。 如果你想要一些特定的规则,使用linq来搜索该集合:这样的事情:

var rule = firewallPolicy.Rules.Where(n => n.Name ==“your name”);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM