DSCResources/DSC_Firewall/DSC_Firewall.schema.mof

[ClassVersion("1.0.0"), FriendlyName("Firewall")]
class DSC_Firewall : OMI_BaseResource
{
    [Key, Description("Name of the Firewall Rule.")] String Name;
    [Write, Description("Localized, user-facing name of the Firewall Rule being created.")] String DisplayName;
    [Write, Description("Name of the Firewall Group where we want to put the Firewall Rule.")] string Group;
    [Write, Description("Ensure the presence/absence of the resource."), ValueMap{"Present", "Absent"},Values{"Present", "Absent"}] String Ensure;
    [Write, Description("Enable or disable the supplied configuration."), ValueMap{"True", "False"},Values{"True", "False"}] string Enabled;
    [Write, Description("Allow or Block the supplied configuration."), ValueMap{"NotConfigured", "Allow", "Block"}, Values{"NotConfigured", "Allow", "Block"}] String Action;
    [Write, Description("Specifies one or more profiles to which the rule is assigned.")] String Profile[];
    [Write, Description("Direction of the connection."), ValueMap{"Inbound","Outbound"}, Values{"Inbound","Outbound"}] String Direction;
    [Write, Description("Specific Port used for filter. Specified by port number, range, or keyword")] String RemotePort[];
    [Write, Description("Local Port used for the filter.")] String LocalPort[];
    [Write, Description("Specific Protocol for filter. Specified by name, number, or range.")] String Protocol;
    [Write, Description("Documentation for the Rule.")] String Description;
    [Write, Description("Path and file name of the program for which the rule is applied.")] String Program;
    [Write, Description("Specifies the short name of a Windows service to which the firewall rule applies.")] String Service;
    [Write, Description("Specifies that authentication is required on firewall rules."), ValueMap{"NotRequired", "Required", "NoEncap"}, Values{"NotRequired", "Required", "NoEncap"}] String Authentication;
    [Write, Description("Specifies that encryption in authentication is required on firewall rules."), ValueMap{"NotRequired", "Required", "Dynamic"}, Values{"NotRequired", "Required", "Dynamic"}] String Encryption;
    [Write, Description("Specifies the alias of the interface that applies to the traffic.")] String InterfaceAlias[];
    [Write, Description("Specifies that only network connections made through the indicated interface types are subject to the requirements of this rule."), ValueMap{"Any", "Wired", "Wireless", "RemoteAccess"}, Values{"Any", "Wired", "Wireless", "RemoteAccess"}] String InterfaceType;
    [Write, Description("Specifies that network packets with matching IP addresses match this rule.")] String LocalAddress[];
    [Write, Description("Specifies the principals to which network traffic this firewall rule applies.")] String LocalUser;
    [Write, Description("Specifies the Windows Store application to which the firewall rule applies.")] String Package;
    [Write, Description("Specifies which version of Windows the associated rule applies.")] String Platform[];
    [Write, Description("Specifies that network packets with matching IP addresses match this rule.")] String RemoteAddress[];
    [Write, Description("Specifies that matching IPsec rules of the indicated computer accounts are created.")] String RemoteMachine;
    [Write, Description("Specifies that matching IPsec rules of the indicated user accounts are created.")] String RemoteUser;
    [Write, Description("Specifies a dynamic transport."), ValueMap{"Any","ProximityApps","ProximitySharing","WifiDirectPrinting","WifiDirectDisplay","WifiDirectDevices"},Values{"Any","ProximityApps","ProximitySharing","WifiDirectPrinting","WifiDirectDisplay","WifiDirectDevices"}] String DynamicTransport;
    [Write, Description("Specifies that matching firewall rules of the indicated edge traversal policy are created."), ValueMap{"Block","Allow","DeferToUser","DeferToApp"},Values{"Block","Allow","DeferToUser","DeferToApp"}] String EdgeTraversalPolicy;
    [Write, Description("Specifies the ICMP type codes.")] String IcmpType[];
    [Write, Description("Indicates that matching firewall rules of the indicated value are created.")] Boolean LocalOnlyMapping;
    [Write, Description("Indicates that matching firewall rules of the indicated value are created.")] Boolean LooseSourceMapping;
    [Write, Description("Indicates that matching network traffic that would otherwise be blocked are allowed.")] Boolean OverrideBlockRules;
    [Write, Description("Specifies that matching firewall rules of the indicated owner are created.")] String Owner;
    [Read, Description("The current value of the Display Group of the Firewall Rule.")] string DisplayGroup;
};