published on Friday, Mar 13, 2026 by Zscaler
published on Friday, Mar 13, 2026 by Zscaler
The zia_firewall_dns_rule resource manages firewall DNS control rules in the Zscaler Internet Access (ZIA) cloud service. DNS control rules allow you to control DNS traffic by allowing, blocking, or redirecting DNS requests based on various criteria such as source, destination, applications, and DNS request types.
For more information, see the ZIA DNS Control Policies documentation.
Example Usage
Basic Firewall DNS Rule
Example coming soon!
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
zia "github.com/zscaler/pulumi-zia/sdk/go/pulumi-zia"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := zia.NewFirewallDNSRule(ctx, "example", &zia.FirewallDNSRuleArgs{
Name: pulumi.String("Example DNS Rule"),
Description: pulumi.StringRef("Block malicious DNS requests"),
Order: pulumi.Int(1),
State: pulumi.StringRef("ENABLED"),
Action: pulumi.StringRef("BLOCK_DROP"),
})
return err
})
}
Example coming soon!
import * as zia from "@bdzscaler/pulumi-zia";
const example = new zia.FirewallDNSRule("example", {
name: "Example DNS Rule",
description: "Block malicious DNS requests",
order: 1,
state: "ENABLED",
action: "BLOCK_DROP",
});
import zscaler_pulumi_zia as zia
example = zia.FirewallDNSRule("example",
name="Example DNS Rule",
description="Block malicious DNS requests",
order=1,
state="ENABLED",
action="BLOCK_DROP",
)
resources:
example:
type: zia:FirewallDNSRule
properties:
name: Example DNS Rule
description: Block malicious DNS requests
order: 1
state: ENABLED
action: BLOCK_DROP
Create FirewallDNSRule Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new FirewallDNSRule(name: string, args: FirewallDNSRuleArgs, opts?: CustomResourceOptions);@overload
def FirewallDNSRule(resource_name: str,
args: FirewallDNSRuleArgs,
opts: Optional[ResourceOptions] = None)
@overload
def FirewallDNSRule(resource_name: str,
opts: Optional[ResourceOptions] = None,
name: Optional[str] = None,
order: Optional[int] = None,
is_web_eun_enabled: Optional[bool] = None,
labels: Optional[Sequence[int]] = None,
default_rule: Optional[bool] = None,
departments: Optional[Sequence[int]] = None,
description: Optional[str] = None,
dest_addresses: Optional[Sequence[str]] = None,
dest_countries: Optional[Sequence[str]] = None,
dest_ip_categories: Optional[Sequence[str]] = None,
dest_ip_groups: Optional[Sequence[int]] = None,
dest_ipv6_groups: Optional[Sequence[int]] = None,
device_groups: Optional[Sequence[int]] = None,
devices: Optional[Sequence[int]] = None,
dns_gateway: Optional[int] = None,
dns_rule_request_types: Optional[Sequence[str]] = None,
edns_ecs_object: Optional[int] = None,
groups: Optional[Sequence[int]] = None,
capture_pcap: Optional[bool] = None,
action: Optional[str] = None,
location_groups: Optional[Sequence[int]] = None,
locations: Optional[Sequence[int]] = None,
block_response_code: Optional[str] = None,
applications: Optional[Sequence[str]] = None,
predefined: Optional[bool] = None,
protocols: Optional[Sequence[str]] = None,
rank: Optional[int] = None,
redirect_ip: Optional[str] = None,
res_categories: Optional[Sequence[str]] = None,
source_countries: Optional[Sequence[str]] = None,
src_ip_groups: Optional[Sequence[int]] = None,
src_ips: Optional[Sequence[str]] = None,
src_ipv6_groups: Optional[Sequence[int]] = None,
state: Optional[str] = None,
time_windows: Optional[Sequence[int]] = None,
users: Optional[Sequence[int]] = None,
zpa_ip_group: Optional[int] = None)func NewFirewallDNSRule(ctx *Context, name string, args FirewallDNSRuleArgs, opts ...ResourceOption) (*FirewallDNSRule, error)public FirewallDNSRule(string name, FirewallDNSRuleArgs args, CustomResourceOptions? opts = null)
public FirewallDNSRule(String name, FirewallDNSRuleArgs args)
public FirewallDNSRule(String name, FirewallDNSRuleArgs args, CustomResourceOptions options)
type: zia:FirewallDNSRule
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args FirewallDNSRuleArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args FirewallDNSRuleArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args FirewallDNSRuleArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args FirewallDNSRuleArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args FirewallDNSRuleArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var firewallDNSRuleResource = new Zia.FirewallDNSRule("firewallDNSRuleResource", new()
{
Name = "string",
Order = 0,
IsWebEunEnabled = false,
Labels = new[]
{
0,
},
DefaultRule = false,
Departments = new[]
{
0,
},
Description = "string",
DestAddresses = new[]
{
"string",
},
DestCountries = new[]
{
"string",
},
DestIpCategories = new[]
{
"string",
},
DestIpGroups = new[]
{
0,
},
DestIpv6Groups = new[]
{
0,
},
DeviceGroups = new[]
{
0,
},
Devices = new[]
{
0,
},
DnsGateway = 0,
DnsRuleRequestTypes = new[]
{
"string",
},
EdnsEcsObject = 0,
Groups = new[]
{
0,
},
CapturePcap = false,
Action = "string",
LocationGroups = new[]
{
0,
},
Locations = new[]
{
0,
},
BlockResponseCode = "string",
Applications = new[]
{
"string",
},
Predefined = false,
Protocols = new[]
{
"string",
},
Rank = 0,
RedirectIp = "string",
ResCategories = new[]
{
"string",
},
SourceCountries = new[]
{
"string",
},
SrcIpGroups = new[]
{
0,
},
SrcIps = new[]
{
"string",
},
SrcIpv6Groups = new[]
{
0,
},
State = "string",
TimeWindows = new[]
{
0,
},
Users = new[]
{
0,
},
ZpaIpGroup = 0,
});
example, err := zia.NewFirewallDNSRule(ctx, "firewallDNSRuleResource", &zia.FirewallDNSRuleArgs{
Name: pulumi.String("string"),
Order: pulumi.Int(0),
IsWebEunEnabled: pulumi.Bool(false),
Labels: pulumi.IntArray{
pulumi.Int(0),
},
DefaultRule: pulumi.Bool(false),
Departments: pulumi.IntArray{
pulumi.Int(0),
},
Description: pulumi.String("string"),
DestAddresses: pulumi.StringArray{
pulumi.String("string"),
},
DestCountries: pulumi.StringArray{
pulumi.String("string"),
},
DestIpCategories: pulumi.StringArray{
pulumi.String("string"),
},
DestIpGroups: pulumi.IntArray{
pulumi.Int(0),
},
DestIpv6Groups: pulumi.IntArray{
pulumi.Int(0),
},
DeviceGroups: pulumi.IntArray{
pulumi.Int(0),
},
Devices: pulumi.IntArray{
pulumi.Int(0),
},
DnsGateway: pulumi.Int(0),
DnsRuleRequestTypes: pulumi.StringArray{
pulumi.String("string"),
},
EdnsEcsObject: pulumi.Int(0),
Groups: pulumi.IntArray{
pulumi.Int(0),
},
CapturePcap: pulumi.Bool(false),
Action: pulumi.String("string"),
LocationGroups: pulumi.IntArray{
pulumi.Int(0),
},
Locations: pulumi.IntArray{
pulumi.Int(0),
},
BlockResponseCode: pulumi.String("string"),
Applications: pulumi.StringArray{
pulumi.String("string"),
},
Predefined: pulumi.Bool(false),
Protocols: pulumi.StringArray{
pulumi.String("string"),
},
Rank: pulumi.Int(0),
RedirectIp: pulumi.String("string"),
ResCategories: pulumi.StringArray{
pulumi.String("string"),
},
SourceCountries: pulumi.StringArray{
pulumi.String("string"),
},
SrcIpGroups: pulumi.IntArray{
pulumi.Int(0),
},
SrcIps: pulumi.StringArray{
pulumi.String("string"),
},
SrcIpv6Groups: pulumi.IntArray{
pulumi.Int(0),
},
State: pulumi.String("string"),
TimeWindows: pulumi.IntArray{
pulumi.Int(0),
},
Users: pulumi.IntArray{
pulumi.Int(0),
},
ZpaIpGroup: pulumi.Int(0),
})
var firewallDNSRuleResource = new FirewallDNSRule("firewallDNSRuleResource", FirewallDNSRuleArgs.builder()
.name("string")
.order(0)
.isWebEunEnabled(false)
.labels(0)
.defaultRule(false)
.departments(0)
.description("string")
.destAddresses("string")
.destCountries("string")
.destIpCategories("string")
.destIpGroups(0)
.destIpv6Groups(0)
.deviceGroups(0)
.devices(0)
.dnsGateway(0)
.dnsRuleRequestTypes("string")
.ednsEcsObject(0)
.groups(0)
.capturePcap(false)
.action("string")
.locationGroups(0)
.locations(0)
.blockResponseCode("string")
.applications("string")
.predefined(false)
.protocols("string")
.rank(0)
.redirectIp("string")
.resCategories("string")
.sourceCountries("string")
.srcIpGroups(0)
.srcIps("string")
.srcIpv6Groups(0)
.state("string")
.timeWindows(0)
.users(0)
.zpaIpGroup(0)
.build());
firewall_dns_rule_resource = zia.FirewallDNSRule("firewallDNSRuleResource",
name="string",
order=0,
is_web_eun_enabled=False,
labels=[0],
default_rule=False,
departments=[0],
description="string",
dest_addresses=["string"],
dest_countries=["string"],
dest_ip_categories=["string"],
dest_ip_groups=[0],
dest_ipv6_groups=[0],
device_groups=[0],
devices=[0],
dns_gateway=0,
dns_rule_request_types=["string"],
edns_ecs_object=0,
groups=[0],
capture_pcap=False,
action="string",
location_groups=[0],
locations=[0],
block_response_code="string",
applications=["string"],
predefined=False,
protocols=["string"],
rank=0,
redirect_ip="string",
res_categories=["string"],
source_countries=["string"],
src_ip_groups=[0],
src_ips=["string"],
src_ipv6_groups=[0],
state="string",
time_windows=[0],
users=[0],
zpa_ip_group=0)
const firewallDNSRuleResource = new zia.FirewallDNSRule("firewallDNSRuleResource", {
name: "string",
order: 0,
isWebEunEnabled: false,
labels: [0],
defaultRule: false,
departments: [0],
description: "string",
destAddresses: ["string"],
destCountries: ["string"],
destIpCategories: ["string"],
destIpGroups: [0],
destIpv6Groups: [0],
deviceGroups: [0],
devices: [0],
dnsGateway: 0,
dnsRuleRequestTypes: ["string"],
ednsEcsObject: 0,
groups: [0],
capturePcap: false,
action: "string",
locationGroups: [0],
locations: [0],
blockResponseCode: "string",
applications: ["string"],
predefined: false,
protocols: ["string"],
rank: 0,
redirectIp: "string",
resCategories: ["string"],
sourceCountries: ["string"],
srcIpGroups: [0],
srcIps: ["string"],
srcIpv6Groups: [0],
state: "string",
timeWindows: [0],
users: [0],
zpaIpGroup: 0,
});
type: zia:FirewallDNSRule
properties:
action: string
applications:
- string
blockResponseCode: string
capturePcap: false
defaultRule: false
departments:
- 0
description: string
destAddresses:
- string
destCountries:
- string
destIpCategories:
- string
destIpGroups:
- 0
destIpv6Groups:
- 0
deviceGroups:
- 0
devices:
- 0
dnsGateway: 0
dnsRuleRequestTypes:
- string
ednsEcsObject: 0
groups:
- 0
isWebEunEnabled: false
labels:
- 0
locationGroups:
- 0
locations:
- 0
name: string
order: 0
predefined: false
protocols:
- string
rank: 0
redirectIp: string
resCategories:
- string
sourceCountries:
- string
srcIpGroups:
- 0
srcIps:
- string
srcIpv6Groups:
- 0
state: string
timeWindows:
- 0
users:
- 0
zpaIpGroup: 0
FirewallDNSRule Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The FirewallDNSRule resource accepts the following input properties:
- Name string
- The name of the firewall DNS rule. Must be unique.
- Order int
- The order of execution of the rule with respect to other firewall DNS rules.
- Action string
- The action the rule takes when traffic matches. Valid values:
ALLOW,BLOCK_DROP,BLOCK_RESET,BLOCK_ICMP,REDIR_REQ. - Applications List<string>
- DNS application values to which the rule applies.
- Block
Response stringCode - The DNS response code to return when blocking. Valid values:
ANY,NONE,FORMERR,SERVFAIL,NXDOMAIN,NOTIMP,REFUSED,NOTAUTH,NXRRSET. - Capture
Pcap bool - If set to true, enables packet capture (PCAP) for the rule.
- Default
Rule bool - Indicates whether this is the default firewall DNS rule.
- Departments List<int>
- IDs of departments to which the rule must be applied.
- Description string
- Additional information about the firewall DNS rule.
- Dest
Addresses List<string> - Destination IP addresses, FQDNs, or wildcard FQDNs for the rule.
- Dest
Countries List<string> - Destination countries (ISO 3166-1 alpha-2 codes) for the rule.
- Dest
Ip List<string>Categories - Destination IP address URL categories for the rule.
- Dest
Ip List<int>Groups - IDs of destination IP address groups for the rule.
- Dest
Ipv6Groups List<int> - IDs of destination IPv6 address groups for the rule.
- Device
Groups List<int> - IDs of device groups for which the rule must be applied. Applicable for devices managed using Zscaler Client Connector.
- Devices List<int>
- IDs of devices for which the rule must be applied.
- Dns
Gateway int - The ID of the DNS gateway associated with the rule.
- Dns
Rule List<string>Request Types - DNS request types to which the rule applies. Valid values:
A,AAAA,CNAME,MX,NS,SOA,TXT,SRV,PTR,ANY. - Edns
Ecs intObject - The ID of the EDNS ECS object associated with the rule.
- Groups List<int>
- IDs of groups to which the rule must be applied.
- Is
Web boolEun Enabled - If set to true, enables web end user notification for the rule.
- Labels List<int>
- IDs of labels associated with the rule.
- Location
Groups List<int> - IDs of location groups to which the rule must be applied.
- Locations List<int>
- IDs of locations to which the rule must be applied.
- Predefined bool
- Indicates whether this is a predefined rule.
- Protocols List<string>
- Protocols to which the rule applies. Valid values:
ANY_RULE,TCP_RULE,UDP_RULE. - Rank int
- Admin rank of the firewall DNS policy rule. Valid values: 0-7. Default: 7.
- Redirect
Ip string - The IP address to redirect DNS requests to. Required when action is
REDIR_REQ. - Res
Categories List<string> - URL categories that apply to the response for the rule.
- Source
Countries List<string> - Source countries (ISO 3166-1 alpha-2 codes) for the rule.
- Src
Ip List<int>Groups - IDs of source IP address groups for the rule.
- Src
Ips List<string> - Source IP addresses or CIDR ranges for the rule.
- Src
Ipv6Groups List<int> - IDs of source IPv6 address groups for the rule.
- State string
- Rule state. Valid values:
ENABLED,DISABLED. - Time
Windows List<int> - IDs of time intervals during which the rule must be enforced.
- Users List<int>
- IDs of users to which the rule must be applied.
- Zpa
Ip intGroup - The ID of the ZPA IP group associated with the rule.
- Name string
- The name of the firewall DNS rule. Must be unique.
- Order int
- The order of execution of the rule with respect to other firewall DNS rules.
- Action string
- The action the rule takes when traffic matches. Valid values:
ALLOW,BLOCK_DROP,BLOCK_RESET,BLOCK_ICMP,REDIR_REQ. - Applications []string
- DNS application values to which the rule applies.
- Block
Response stringCode - The DNS response code to return when blocking. Valid values:
ANY,NONE,FORMERR,SERVFAIL,NXDOMAIN,NOTIMP,REFUSED,NOTAUTH,NXRRSET. - Capture
Pcap bool - If set to true, enables packet capture (PCAP) for the rule.
- Default
Rule bool - Indicates whether this is the default firewall DNS rule.
- Departments []int
- IDs of departments to which the rule must be applied.
- Description string
- Additional information about the firewall DNS rule.
- Dest
Addresses []string - Destination IP addresses, FQDNs, or wildcard FQDNs for the rule.
- Dest
Countries []string - Destination countries (ISO 3166-1 alpha-2 codes) for the rule.
- Dest
Ip []stringCategories - Destination IP address URL categories for the rule.
- Dest
Ip []intGroups - IDs of destination IP address groups for the rule.
- Dest
Ipv6Groups []int - IDs of destination IPv6 address groups for the rule.
- Device
Groups []int - IDs of device groups for which the rule must be applied. Applicable for devices managed using Zscaler Client Connector.
- Devices []int
- IDs of devices for which the rule must be applied.
- Dns
Gateway int - The ID of the DNS gateway associated with the rule.
- Dns
Rule []stringRequest Types - DNS request types to which the rule applies. Valid values:
A,AAAA,CNAME,MX,NS,SOA,TXT,SRV,PTR,ANY. - Edns
Ecs intObject - The ID of the EDNS ECS object associated with the rule.
- Groups []int
- IDs of groups to which the rule must be applied.
- Is
Web boolEun Enabled - If set to true, enables web end user notification for the rule.
- Labels []int
- IDs of labels associated with the rule.
- Location
Groups []int - IDs of location groups to which the rule must be applied.
- Locations []int
- IDs of locations to which the rule must be applied.
- Predefined bool
- Indicates whether this is a predefined rule.
- Protocols []string
- Protocols to which the rule applies. Valid values:
ANY_RULE,TCP_RULE,UDP_RULE. - Rank int
- Admin rank of the firewall DNS policy rule. Valid values: 0-7. Default: 7.
- Redirect
Ip string - The IP address to redirect DNS requests to. Required when action is
REDIR_REQ. - Res
Categories []string - URL categories that apply to the response for the rule.
- Source
Countries []string - Source countries (ISO 3166-1 alpha-2 codes) for the rule.
- Src
Ip []intGroups - IDs of source IP address groups for the rule.
- Src
Ips []string - Source IP addresses or CIDR ranges for the rule.
- Src
Ipv6Groups []int - IDs of source IPv6 address groups for the rule.
- State string
- Rule state. Valid values:
ENABLED,DISABLED. - Time
Windows []int - IDs of time intervals during which the rule must be enforced.
- Users []int
- IDs of users to which the rule must be applied.
- Zpa
Ip intGroup - The ID of the ZPA IP group associated with the rule.
- name String
- The name of the firewall DNS rule. Must be unique.
- order Integer
- The order of execution of the rule with respect to other firewall DNS rules.
- action String
- The action the rule takes when traffic matches. Valid values:
ALLOW,BLOCK_DROP,BLOCK_RESET,BLOCK_ICMP,REDIR_REQ. - applications List<String>
- DNS application values to which the rule applies.
- block
Response StringCode - The DNS response code to return when blocking. Valid values:
ANY,NONE,FORMERR,SERVFAIL,NXDOMAIN,NOTIMP,REFUSED,NOTAUTH,NXRRSET. - capture
Pcap Boolean - If set to true, enables packet capture (PCAP) for the rule.
- default
Rule Boolean - Indicates whether this is the default firewall DNS rule.
- departments List<Integer>
- IDs of departments to which the rule must be applied.
- description String
- Additional information about the firewall DNS rule.
- dest
Addresses List<String> - Destination IP addresses, FQDNs, or wildcard FQDNs for the rule.
- dest
Countries List<String> - Destination countries (ISO 3166-1 alpha-2 codes) for the rule.
- dest
Ip List<String>Categories - Destination IP address URL categories for the rule.
- dest
Ip List<Integer>Groups - IDs of destination IP address groups for the rule.
- dest
Ipv6Groups List<Integer> - IDs of destination IPv6 address groups for the rule.
- device
Groups List<Integer> - IDs of device groups for which the rule must be applied. Applicable for devices managed using Zscaler Client Connector.
- devices List<Integer>
- IDs of devices for which the rule must be applied.
- dns
Gateway Integer - The ID of the DNS gateway associated with the rule.
- dns
Rule List<String>Request Types - DNS request types to which the rule applies. Valid values:
A,AAAA,CNAME,MX,NS,SOA,TXT,SRV,PTR,ANY. - edns
Ecs IntegerObject - The ID of the EDNS ECS object associated with the rule.
- groups List<Integer>
- IDs of groups to which the rule must be applied.
- is
Web BooleanEun Enabled - If set to true, enables web end user notification for the rule.
- labels List<Integer>
- IDs of labels associated with the rule.
- location
Groups List<Integer> - IDs of location groups to which the rule must be applied.
- locations List<Integer>
- IDs of locations to which the rule must be applied.
- predefined Boolean
- Indicates whether this is a predefined rule.
- protocols List<String>
- Protocols to which the rule applies. Valid values:
ANY_RULE,TCP_RULE,UDP_RULE. - rank Integer
- Admin rank of the firewall DNS policy rule. Valid values: 0-7. Default: 7.
- redirect
Ip String - The IP address to redirect DNS requests to. Required when action is
REDIR_REQ. - res
Categories List<String> - URL categories that apply to the response for the rule.
- source
Countries List<String> - Source countries (ISO 3166-1 alpha-2 codes) for the rule.
- src
Ip List<Integer>Groups - IDs of source IP address groups for the rule.
- src
Ips List<String> - Source IP addresses or CIDR ranges for the rule.
- src
Ipv6Groups List<Integer> - IDs of source IPv6 address groups for the rule.
- state String
- Rule state. Valid values:
ENABLED,DISABLED. - time
Windows List<Integer> - IDs of time intervals during which the rule must be enforced.
- users List<Integer>
- IDs of users to which the rule must be applied.
- zpa
Ip IntegerGroup - The ID of the ZPA IP group associated with the rule.
- name string
- The name of the firewall DNS rule. Must be unique.
- order number
- The order of execution of the rule with respect to other firewall DNS rules.
- action string
- The action the rule takes when traffic matches. Valid values:
ALLOW,BLOCK_DROP,BLOCK_RESET,BLOCK_ICMP,REDIR_REQ. - applications string[]
- DNS application values to which the rule applies.
- block
Response stringCode - The DNS response code to return when blocking. Valid values:
ANY,NONE,FORMERR,SERVFAIL,NXDOMAIN,NOTIMP,REFUSED,NOTAUTH,NXRRSET. - capture
Pcap boolean - If set to true, enables packet capture (PCAP) for the rule.
- default
Rule boolean - Indicates whether this is the default firewall DNS rule.
- departments number[]
- IDs of departments to which the rule must be applied.
- description string
- Additional information about the firewall DNS rule.
- dest
Addresses string[] - Destination IP addresses, FQDNs, or wildcard FQDNs for the rule.
- dest
Countries string[] - Destination countries (ISO 3166-1 alpha-2 codes) for the rule.
- dest
Ip string[]Categories - Destination IP address URL categories for the rule.
- dest
Ip number[]Groups - IDs of destination IP address groups for the rule.
- dest
Ipv6Groups number[] - IDs of destination IPv6 address groups for the rule.
- device
Groups number[] - IDs of device groups for which the rule must be applied. Applicable for devices managed using Zscaler Client Connector.
- devices number[]
- IDs of devices for which the rule must be applied.
- dns
Gateway number - The ID of the DNS gateway associated with the rule.
- dns
Rule string[]Request Types - DNS request types to which the rule applies. Valid values:
A,AAAA,CNAME,MX,NS,SOA,TXT,SRV,PTR,ANY. - edns
Ecs numberObject - The ID of the EDNS ECS object associated with the rule.
- groups number[]
- IDs of groups to which the rule must be applied.
- is
Web booleanEun Enabled - If set to true, enables web end user notification for the rule.
- labels number[]
- IDs of labels associated with the rule.
- location
Groups number[] - IDs of location groups to which the rule must be applied.
- locations number[]
- IDs of locations to which the rule must be applied.
- predefined boolean
- Indicates whether this is a predefined rule.
- protocols string[]
- Protocols to which the rule applies. Valid values:
ANY_RULE,TCP_RULE,UDP_RULE. - rank number
- Admin rank of the firewall DNS policy rule. Valid values: 0-7. Default: 7.
- redirect
Ip string - The IP address to redirect DNS requests to. Required when action is
REDIR_REQ. - res
Categories string[] - URL categories that apply to the response for the rule.
- source
Countries string[] - Source countries (ISO 3166-1 alpha-2 codes) for the rule.
- src
Ip number[]Groups - IDs of source IP address groups for the rule.
- src
Ips string[] - Source IP addresses or CIDR ranges for the rule.
- src
Ipv6Groups number[] - IDs of source IPv6 address groups for the rule.
- state string
- Rule state. Valid values:
ENABLED,DISABLED. - time
Windows number[] - IDs of time intervals during which the rule must be enforced.
- users number[]
- IDs of users to which the rule must be applied.
- zpa
Ip numberGroup - The ID of the ZPA IP group associated with the rule.
- name str
- The name of the firewall DNS rule. Must be unique.
- order int
- The order of execution of the rule with respect to other firewall DNS rules.
- action str
- The action the rule takes when traffic matches. Valid values:
ALLOW,BLOCK_DROP,BLOCK_RESET,BLOCK_ICMP,REDIR_REQ. - applications Sequence[str]
- DNS application values to which the rule applies.
- block_
response_ strcode - The DNS response code to return when blocking. Valid values:
ANY,NONE,FORMERR,SERVFAIL,NXDOMAIN,NOTIMP,REFUSED,NOTAUTH,NXRRSET. - capture_
pcap bool - If set to true, enables packet capture (PCAP) for the rule.
- default_
rule bool - Indicates whether this is the default firewall DNS rule.
- departments Sequence[int]
- IDs of departments to which the rule must be applied.
- description str
- Additional information about the firewall DNS rule.
- dest_
addresses Sequence[str] - Destination IP addresses, FQDNs, or wildcard FQDNs for the rule.
- dest_
countries Sequence[str] - Destination countries (ISO 3166-1 alpha-2 codes) for the rule.
- dest_
ip_ Sequence[str]categories - Destination IP address URL categories for the rule.
- dest_
ip_ Sequence[int]groups - IDs of destination IP address groups for the rule.
- dest_
ipv6_ Sequence[int]groups - IDs of destination IPv6 address groups for the rule.
- device_
groups Sequence[int] - IDs of device groups for which the rule must be applied. Applicable for devices managed using Zscaler Client Connector.
- devices Sequence[int]
- IDs of devices for which the rule must be applied.
- dns_
gateway int - The ID of the DNS gateway associated with the rule.
- dns_
rule_ Sequence[str]request_ types - DNS request types to which the rule applies. Valid values:
A,AAAA,CNAME,MX,NS,SOA,TXT,SRV,PTR,ANY. - edns_
ecs_ intobject - The ID of the EDNS ECS object associated with the rule.
- groups Sequence[int]
- IDs of groups to which the rule must be applied.
- is_
web_ booleun_ enabled - If set to true, enables web end user notification for the rule.
- labels Sequence[int]
- IDs of labels associated with the rule.
- location_
groups Sequence[int] - IDs of location groups to which the rule must be applied.
- locations Sequence[int]
- IDs of locations to which the rule must be applied.
- predefined bool
- Indicates whether this is a predefined rule.
- protocols Sequence[str]
- Protocols to which the rule applies. Valid values:
ANY_RULE,TCP_RULE,UDP_RULE. - rank int
- Admin rank of the firewall DNS policy rule. Valid values: 0-7. Default: 7.
- redirect_
ip str - The IP address to redirect DNS requests to. Required when action is
REDIR_REQ. - res_
categories Sequence[str] - URL categories that apply to the response for the rule.
- source_
countries Sequence[str] - Source countries (ISO 3166-1 alpha-2 codes) for the rule.
- src_
ip_ Sequence[int]groups - IDs of source IP address groups for the rule.
- src_
ips Sequence[str] - Source IP addresses or CIDR ranges for the rule.
- src_
ipv6_ Sequence[int]groups - IDs of source IPv6 address groups for the rule.
- state str
- Rule state. Valid values:
ENABLED,DISABLED. - time_
windows Sequence[int] - IDs of time intervals during which the rule must be enforced.
- users Sequence[int]
- IDs of users to which the rule must be applied.
- zpa_
ip_ intgroup - The ID of the ZPA IP group associated with the rule.
- name String
- The name of the firewall DNS rule. Must be unique.
- order Number
- The order of execution of the rule with respect to other firewall DNS rules.
- action String
- The action the rule takes when traffic matches. Valid values:
ALLOW,BLOCK_DROP,BLOCK_RESET,BLOCK_ICMP,REDIR_REQ. - applications List<String>
- DNS application values to which the rule applies.
- block
Response StringCode - The DNS response code to return when blocking. Valid values:
ANY,NONE,FORMERR,SERVFAIL,NXDOMAIN,NOTIMP,REFUSED,NOTAUTH,NXRRSET. - capture
Pcap Boolean - If set to true, enables packet capture (PCAP) for the rule.
- default
Rule Boolean - Indicates whether this is the default firewall DNS rule.
- departments List<Number>
- IDs of departments to which the rule must be applied.
- description String
- Additional information about the firewall DNS rule.
- dest
Addresses List<String> - Destination IP addresses, FQDNs, or wildcard FQDNs for the rule.
- dest
Countries List<String> - Destination countries (ISO 3166-1 alpha-2 codes) for the rule.
- dest
Ip List<String>Categories - Destination IP address URL categories for the rule.
- dest
Ip List<Number>Groups - IDs of destination IP address groups for the rule.
- dest
Ipv6Groups List<Number> - IDs of destination IPv6 address groups for the rule.
- device
Groups List<Number> - IDs of device groups for which the rule must be applied. Applicable for devices managed using Zscaler Client Connector.
- devices List<Number>
- IDs of devices for which the rule must be applied.
- dns
Gateway Number - The ID of the DNS gateway associated with the rule.
- dns
Rule List<String>Request Types - DNS request types to which the rule applies. Valid values:
A,AAAA,CNAME,MX,NS,SOA,TXT,SRV,PTR,ANY. - edns
Ecs NumberObject - The ID of the EDNS ECS object associated with the rule.
- groups List<Number>
- IDs of groups to which the rule must be applied.
- is
Web BooleanEun Enabled - If set to true, enables web end user notification for the rule.
- labels List<Number>
- IDs of labels associated with the rule.
- location
Groups List<Number> - IDs of location groups to which the rule must be applied.
- locations List<Number>
- IDs of locations to which the rule must be applied.
- predefined Boolean
- Indicates whether this is a predefined rule.
- protocols List<String>
- Protocols to which the rule applies. Valid values:
ANY_RULE,TCP_RULE,UDP_RULE. - rank Number
- Admin rank of the firewall DNS policy rule. Valid values: 0-7. Default: 7.
- redirect
Ip String - The IP address to redirect DNS requests to. Required when action is
REDIR_REQ. - res
Categories List<String> - URL categories that apply to the response for the rule.
- source
Countries List<String> - Source countries (ISO 3166-1 alpha-2 codes) for the rule.
- src
Ip List<Number>Groups - IDs of source IP address groups for the rule.
- src
Ips List<String> - Source IP addresses or CIDR ranges for the rule.
- src
Ipv6Groups List<Number> - IDs of source IPv6 address groups for the rule.
- state String
- Rule state. Valid values:
ENABLED,DISABLED. - time
Windows List<Number> - IDs of time intervals during which the rule must be enforced.
- users List<Number>
- IDs of users to which the rule must be applied.
- zpa
Ip NumberGroup - The ID of the ZPA IP group associated with the rule.
Outputs
All input properties are implicitly available as output properties. Additionally, the FirewallDNSRule resource produces the following output properties:
Import
An existing Firewall DNS Rule can be imported using its resource ID, e.g.
$ pulumi import zia:index:FirewallDNSRule example 12345
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- zia zscaler/pulumi-zia
- License
published on Friday, Mar 13, 2026 by Zscaler
