UNPKG

@bdzscaler/pulumi-zia

Version:

A Pulumi package for creating and managing zia cloud resources.

475 lines (474 loc) 18.6 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * ## Example Usage * * ## Import * * Zscaler offers a dedicated tool called Zscaler-Terraformer to allow the automated import of ZIA configurations into Terraform-compliant HashiCorp Configuration Language. * * Visit * * **zia_firewall_filtering_rule** can be imported by using `<RULE ID>` or `<RULE NAME>` as the import ID. * * For example: * * ```sh * $ pulumi import zia:index/firewallFilteringRule:FirewallFilteringRule example <rule_id> * ``` * * or * * ```sh * $ pulumi import zia:index/firewallFilteringRule:FirewallFilteringRule example <rule_name> * ``` */ export declare class FirewallFilteringRule extends pulumi.CustomResource { /** * Get an existing FirewallFilteringRule resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: FirewallFilteringRuleState, opts?: pulumi.CustomResourceOptions): FirewallFilteringRule; /** * Returns true if the given object is an instance of FirewallFilteringRule. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is FirewallFilteringRule; /** * The action the Firewall Filtering policy rule takes when packets match the rule */ readonly action: pulumi.Output<string | undefined>; /** * list of application service groups */ readonly appServiceGroups: pulumi.Output<outputs.FirewallFilteringRuleAppServiceGroups | undefined>; /** * list of application services */ readonly appServices: pulumi.Output<outputs.FirewallFilteringRuleAppServices | undefined>; /** * If set to true, the default rule is applied */ readonly defaultRule: pulumi.Output<boolean | undefined>; /** * list of departments for which rule must be applied */ readonly departments: pulumi.Output<outputs.FirewallFilteringRuleDepartments | undefined>; /** * Additional information about the rule */ readonly description: pulumi.Output<string | undefined>; /** * Destination addresses. Supports IPv4, FQDNs, or wildcard FQDNs */ readonly destAddresses: pulumi.Output<string[] | undefined>; /** * Destination countries for which the rule is applicable. If not set, the rule is not restricted to specific destination * countries. */ readonly destCountries: pulumi.Output<string[]>; readonly destIpCategories: pulumi.Output<string[] | undefined>; /** * list of destination ip groups */ readonly destIpGroups: pulumi.Output<outputs.FirewallFilteringRuleDestIpGroups | undefined>; /** * This field is applicable for devices that are managed using Zscaler Client Connector. */ readonly deviceGroups: pulumi.Output<outputs.FirewallFilteringRuleDeviceGroups | undefined>; /** * List of device trust levels for which the rule must be applied. This field is applicable for devices that are managed * using Zscaler Client Connector. The trust levels are assigned to the devices based on your posture configurations in the * Zscaler Client Connector Portal. If no value is set, this field is ignored during the policy evaluation. */ readonly deviceTrustLevels: pulumi.Output<string[] | undefined>; /** * Name-ID pairs of devices for which rule must be applied. */ readonly devices: pulumi.Output<outputs.FirewallFilteringRuleDevices | undefined>; readonly enableFullLogging: pulumi.Output<boolean | undefined>; /** * list of groups for which rule must be applied */ readonly groups: pulumi.Output<outputs.FirewallFilteringRuleGroups | undefined>; /** * list of Labels that are applicable to the rule. */ readonly labels: pulumi.Output<outputs.FirewallFilteringRuleLabels | undefined>; /** * list of locations groups */ readonly locationGroups: pulumi.Output<outputs.FirewallFilteringRuleLocationGroups | undefined>; /** * list of locations for which rule must be applied */ readonly locations: pulumi.Output<outputs.FirewallFilteringRuleLocations | undefined>; /** * Name of the Firewall Filtering policy rule */ readonly name: pulumi.Output<string>; /** * list of nw application groups */ readonly nwApplicationGroups: pulumi.Output<outputs.FirewallFilteringRuleNwApplicationGroups | undefined>; /** * User-defined network service applications on which the rule is applied. If not set, the rule is not restricted to a * specific network service application. */ readonly nwApplications: pulumi.Output<string[]>; /** * list of nw service groups */ readonly nwServiceGroups: pulumi.Output<outputs.FirewallFilteringRuleNwServiceGroups | undefined>; /** * list of nw services */ readonly nwServices: pulumi.Output<outputs.FirewallFilteringRuleNwServices | undefined>; /** * Rule order number. If omitted, the rule will be added to the end of the rule set. */ readonly order: pulumi.Output<number>; /** * If set to true, a predefined rule is applied */ readonly predefined: pulumi.Output<boolean | undefined>; /** * Admin rank of the Firewall Filtering policy rule */ readonly rank: pulumi.Output<number | undefined>; readonly ruleId: pulumi.Output<number>; /** * Destination countries for which the rule is applicable. If not set, the rule is not restricted to specific destination * countries. */ readonly sourceCountries: pulumi.Output<string[]>; /** * list of source ip groups */ readonly srcIpGroups: pulumi.Output<outputs.FirewallFilteringRuleSrcIpGroups | undefined>; /** * User-defined source IP addresses for which the rule is applicable. If not set, the rule is not restricted to a specific * source IP address. */ readonly srcIps: pulumi.Output<string[] | undefined>; /** * Determines whether the Firewall Filtering policy rule is enabled or disabled */ readonly state: pulumi.Output<string | undefined>; /** * The time interval in which the Firewall Filtering policy rule applies */ readonly timeWindows: pulumi.Output<outputs.FirewallFilteringRuleTimeWindows | undefined>; /** * list of users for which rule must be applied */ readonly users: pulumi.Output<outputs.FirewallFilteringRuleUsers | undefined>; /** * The list of preconfigured workload groups to which the policy must be applied */ readonly workloadGroups: pulumi.Output<outputs.FirewallFilteringRuleWorkloadGroup[]>; /** * The list of ZPA Application Segments for which this rule is applicable. This field is applicable only for the ZPA * Gateway forwarding method. */ readonly zpaAppSegments: pulumi.Output<outputs.FirewallFilteringRuleZpaAppSegment[]>; /** * Create a FirewallFilteringRule resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args?: FirewallFilteringRuleArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering FirewallFilteringRule resources. */ export interface FirewallFilteringRuleState { /** * The action the Firewall Filtering policy rule takes when packets match the rule */ action?: pulumi.Input<string>; /** * list of application service groups */ appServiceGroups?: pulumi.Input<inputs.FirewallFilteringRuleAppServiceGroups>; /** * list of application services */ appServices?: pulumi.Input<inputs.FirewallFilteringRuleAppServices>; /** * If set to true, the default rule is applied */ defaultRule?: pulumi.Input<boolean>; /** * list of departments for which rule must be applied */ departments?: pulumi.Input<inputs.FirewallFilteringRuleDepartments>; /** * Additional information about the rule */ description?: pulumi.Input<string>; /** * Destination addresses. Supports IPv4, FQDNs, or wildcard FQDNs */ destAddresses?: pulumi.Input<pulumi.Input<string>[]>; /** * Destination countries for which the rule is applicable. If not set, the rule is not restricted to specific destination * countries. */ destCountries?: pulumi.Input<pulumi.Input<string>[]>; destIpCategories?: pulumi.Input<pulumi.Input<string>[]>; /** * list of destination ip groups */ destIpGroups?: pulumi.Input<inputs.FirewallFilteringRuleDestIpGroups>; /** * This field is applicable for devices that are managed using Zscaler Client Connector. */ deviceGroups?: pulumi.Input<inputs.FirewallFilteringRuleDeviceGroups>; /** * List of device trust levels for which the rule must be applied. This field is applicable for devices that are managed * using Zscaler Client Connector. The trust levels are assigned to the devices based on your posture configurations in the * Zscaler Client Connector Portal. If no value is set, this field is ignored during the policy evaluation. */ deviceTrustLevels?: pulumi.Input<pulumi.Input<string>[]>; /** * Name-ID pairs of devices for which rule must be applied. */ devices?: pulumi.Input<inputs.FirewallFilteringRuleDevices>; enableFullLogging?: pulumi.Input<boolean>; /** * list of groups for which rule must be applied */ groups?: pulumi.Input<inputs.FirewallFilteringRuleGroups>; /** * list of Labels that are applicable to the rule. */ labels?: pulumi.Input<inputs.FirewallFilteringRuleLabels>; /** * list of locations groups */ locationGroups?: pulumi.Input<inputs.FirewallFilteringRuleLocationGroups>; /** * list of locations for which rule must be applied */ locations?: pulumi.Input<inputs.FirewallFilteringRuleLocations>; /** * Name of the Firewall Filtering policy rule */ name?: pulumi.Input<string>; /** * list of nw application groups */ nwApplicationGroups?: pulumi.Input<inputs.FirewallFilteringRuleNwApplicationGroups>; /** * User-defined network service applications on which the rule is applied. If not set, the rule is not restricted to a * specific network service application. */ nwApplications?: pulumi.Input<pulumi.Input<string>[]>; /** * list of nw service groups */ nwServiceGroups?: pulumi.Input<inputs.FirewallFilteringRuleNwServiceGroups>; /** * list of nw services */ nwServices?: pulumi.Input<inputs.FirewallFilteringRuleNwServices>; /** * Rule order number. If omitted, the rule will be added to the end of the rule set. */ order?: pulumi.Input<number>; /** * If set to true, a predefined rule is applied */ predefined?: pulumi.Input<boolean>; /** * Admin rank of the Firewall Filtering policy rule */ rank?: pulumi.Input<number>; ruleId?: pulumi.Input<number>; /** * Destination countries for which the rule is applicable. If not set, the rule is not restricted to specific destination * countries. */ sourceCountries?: pulumi.Input<pulumi.Input<string>[]>; /** * list of source ip groups */ srcIpGroups?: pulumi.Input<inputs.FirewallFilteringRuleSrcIpGroups>; /** * User-defined source IP addresses for which the rule is applicable. If not set, the rule is not restricted to a specific * source IP address. */ srcIps?: pulumi.Input<pulumi.Input<string>[]>; /** * Determines whether the Firewall Filtering policy rule is enabled or disabled */ state?: pulumi.Input<string>; /** * The time interval in which the Firewall Filtering policy rule applies */ timeWindows?: pulumi.Input<inputs.FirewallFilteringRuleTimeWindows>; /** * list of users for which rule must be applied */ users?: pulumi.Input<inputs.FirewallFilteringRuleUsers>; /** * The list of preconfigured workload groups to which the policy must be applied */ workloadGroups?: pulumi.Input<pulumi.Input<inputs.FirewallFilteringRuleWorkloadGroup>[]>; /** * The list of ZPA Application Segments for which this rule is applicable. This field is applicable only for the ZPA * Gateway forwarding method. */ zpaAppSegments?: pulumi.Input<pulumi.Input<inputs.FirewallFilteringRuleZpaAppSegment>[]>; } /** * The set of arguments for constructing a FirewallFilteringRule resource. */ export interface FirewallFilteringRuleArgs { /** * The action the Firewall Filtering policy rule takes when packets match the rule */ action?: pulumi.Input<string>; /** * list of application service groups */ appServiceGroups?: pulumi.Input<inputs.FirewallFilteringRuleAppServiceGroups>; /** * list of application services */ appServices?: pulumi.Input<inputs.FirewallFilteringRuleAppServices>; /** * If set to true, the default rule is applied */ defaultRule?: pulumi.Input<boolean>; /** * list of departments for which rule must be applied */ departments?: pulumi.Input<inputs.FirewallFilteringRuleDepartments>; /** * Additional information about the rule */ description?: pulumi.Input<string>; /** * Destination addresses. Supports IPv4, FQDNs, or wildcard FQDNs */ destAddresses?: pulumi.Input<pulumi.Input<string>[]>; /** * Destination countries for which the rule is applicable. If not set, the rule is not restricted to specific destination * countries. */ destCountries?: pulumi.Input<pulumi.Input<string>[]>; destIpCategories?: pulumi.Input<pulumi.Input<string>[]>; /** * list of destination ip groups */ destIpGroups?: pulumi.Input<inputs.FirewallFilteringRuleDestIpGroups>; /** * This field is applicable for devices that are managed using Zscaler Client Connector. */ deviceGroups?: pulumi.Input<inputs.FirewallFilteringRuleDeviceGroups>; /** * List of device trust levels for which the rule must be applied. This field is applicable for devices that are managed * using Zscaler Client Connector. The trust levels are assigned to the devices based on your posture configurations in the * Zscaler Client Connector Portal. If no value is set, this field is ignored during the policy evaluation. */ deviceTrustLevels?: pulumi.Input<pulumi.Input<string>[]>; /** * Name-ID pairs of devices for which rule must be applied. */ devices?: pulumi.Input<inputs.FirewallFilteringRuleDevices>; enableFullLogging?: pulumi.Input<boolean>; /** * list of groups for which rule must be applied */ groups?: pulumi.Input<inputs.FirewallFilteringRuleGroups>; /** * list of Labels that are applicable to the rule. */ labels?: pulumi.Input<inputs.FirewallFilteringRuleLabels>; /** * list of locations groups */ locationGroups?: pulumi.Input<inputs.FirewallFilteringRuleLocationGroups>; /** * list of locations for which rule must be applied */ locations?: pulumi.Input<inputs.FirewallFilteringRuleLocations>; /** * Name of the Firewall Filtering policy rule */ name?: pulumi.Input<string>; /** * list of nw application groups */ nwApplicationGroups?: pulumi.Input<inputs.FirewallFilteringRuleNwApplicationGroups>; /** * User-defined network service applications on which the rule is applied. If not set, the rule is not restricted to a * specific network service application. */ nwApplications?: pulumi.Input<pulumi.Input<string>[]>; /** * list of nw service groups */ nwServiceGroups?: pulumi.Input<inputs.FirewallFilteringRuleNwServiceGroups>; /** * list of nw services */ nwServices?: pulumi.Input<inputs.FirewallFilteringRuleNwServices>; /** * Rule order number. If omitted, the rule will be added to the end of the rule set. */ order?: pulumi.Input<number>; /** * If set to true, a predefined rule is applied */ predefined?: pulumi.Input<boolean>; /** * Admin rank of the Firewall Filtering policy rule */ rank?: pulumi.Input<number>; /** * Destination countries for which the rule is applicable. If not set, the rule is not restricted to specific destination * countries. */ sourceCountries?: pulumi.Input<pulumi.Input<string>[]>; /** * list of source ip groups */ srcIpGroups?: pulumi.Input<inputs.FirewallFilteringRuleSrcIpGroups>; /** * User-defined source IP addresses for which the rule is applicable. If not set, the rule is not restricted to a specific * source IP address. */ srcIps?: pulumi.Input<pulumi.Input<string>[]>; /** * Determines whether the Firewall Filtering policy rule is enabled or disabled */ state?: pulumi.Input<string>; /** * The time interval in which the Firewall Filtering policy rule applies */ timeWindows?: pulumi.Input<inputs.FirewallFilteringRuleTimeWindows>; /** * list of users for which rule must be applied */ users?: pulumi.Input<inputs.FirewallFilteringRuleUsers>; /** * The list of preconfigured workload groups to which the policy must be applied */ workloadGroups?: pulumi.Input<pulumi.Input<inputs.FirewallFilteringRuleWorkloadGroup>[]>; /** * The list of ZPA Application Segments for which this rule is applicable. This field is applicable only for the ZPA * Gateway forwarding method. */ zpaAppSegments?: pulumi.Input<pulumi.Input<inputs.FirewallFilteringRuleZpaAppSegment>[]>; }