We recommend using Azure Native.
published on Monday, Mar 9, 2026 by Pulumi
We recommend using Azure Native.
published on Monday, Mar 9, 2026 by Pulumi
Manages an Azure Firewall.
Example Usage
using Pulumi;
using Azure = Pulumi.Azure;
class MyStack : Stack
{
public MyStack()
{
var exampleResourceGroup = new Azure.Core.ResourceGroup("exampleResourceGroup", new Azure.Core.ResourceGroupArgs
{
Location = "West Europe",
});
var exampleVirtualNetwork = new Azure.Network.VirtualNetwork("exampleVirtualNetwork", new Azure.Network.VirtualNetworkArgs
{
AddressSpaces =
{
"10.0.0.0/16",
},
Location = exampleResourceGroup.Location,
ResourceGroupName = exampleResourceGroup.Name,
});
var exampleSubnet = new Azure.Network.Subnet("exampleSubnet", new Azure.Network.SubnetArgs
{
ResourceGroupName = exampleResourceGroup.Name,
VirtualNetworkName = exampleVirtualNetwork.Name,
AddressPrefixes =
{
"10.0.1.0/24",
},
});
var examplePublicIp = new Azure.Network.PublicIp("examplePublicIp", new Azure.Network.PublicIpArgs
{
Location = exampleResourceGroup.Location,
ResourceGroupName = exampleResourceGroup.Name,
AllocationMethod = "Static",
Sku = "Standard",
});
var exampleFirewall = new Azure.Network.Firewall("exampleFirewall", new Azure.Network.FirewallArgs
{
Location = exampleResourceGroup.Location,
ResourceGroupName = exampleResourceGroup.Name,
IpConfigurations =
{
new Azure.Network.Inputs.FirewallIpConfigurationArgs
{
Name = "configuration",
SubnetId = exampleSubnet.Id,
PublicIpAddressId = examplePublicIp.Id,
},
},
});
}
}
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/network"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
Location: pulumi.String("West Europe"),
})
if err != nil {
return err
}
exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "exampleVirtualNetwork", &network.VirtualNetworkArgs{
AddressSpaces: pulumi.StringArray{
pulumi.String("10.0.0.0/16"),
},
Location: exampleResourceGroup.Location,
ResourceGroupName: exampleResourceGroup.Name,
})
if err != nil {
return err
}
exampleSubnet, err := network.NewSubnet(ctx, "exampleSubnet", &network.SubnetArgs{
ResourceGroupName: exampleResourceGroup.Name,
VirtualNetworkName: exampleVirtualNetwork.Name,
AddressPrefixes: pulumi.StringArray{
pulumi.String("10.0.1.0/24"),
},
})
if err != nil {
return err
}
examplePublicIp, err := network.NewPublicIp(ctx, "examplePublicIp", &network.PublicIpArgs{
Location: exampleResourceGroup.Location,
ResourceGroupName: exampleResourceGroup.Name,
AllocationMethod: pulumi.String("Static"),
Sku: pulumi.String("Standard"),
})
if err != nil {
return err
}
_, err = network.NewFirewall(ctx, "exampleFirewall", &network.FirewallArgs{
Location: exampleResourceGroup.Location,
ResourceGroupName: exampleResourceGroup.Name,
IpConfigurations: network.FirewallIpConfigurationArray{
&network.FirewallIpConfigurationArgs{
Name: pulumi.String("configuration"),
SubnetId: exampleSubnet.ID(),
PublicIpAddressId: examplePublicIp.ID(),
},
},
})
if err != nil {
return err
}
return nil
})
}
Example coming soon!
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleVirtualNetwork = new azure.network.VirtualNetwork("exampleVirtualNetwork", {
addressSpaces: ["10.0.0.0/16"],
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
});
const exampleSubnet = new azure.network.Subnet("exampleSubnet", {
resourceGroupName: exampleResourceGroup.name,
virtualNetworkName: exampleVirtualNetwork.name,
addressPrefixes: ["10.0.1.0/24"],
});
const examplePublicIp = new azure.network.PublicIp("examplePublicIp", {
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
allocationMethod: "Static",
sku: "Standard",
});
const exampleFirewall = new azure.network.Firewall("exampleFirewall", {
location: exampleResourceGroup.location,
resourceGroupName: exampleResourceGroup.name,
ipConfigurations: [{
name: "configuration",
subnetId: exampleSubnet.id,
publicIpAddressId: examplePublicIp.id,
}],
});
import pulumi
import pulumi_azure as azure
example_resource_group = azure.core.ResourceGroup("exampleResourceGroup", location="West Europe")
example_virtual_network = azure.network.VirtualNetwork("exampleVirtualNetwork",
address_spaces=["10.0.0.0/16"],
location=example_resource_group.location,
resource_group_name=example_resource_group.name)
example_subnet = azure.network.Subnet("exampleSubnet",
resource_group_name=example_resource_group.name,
virtual_network_name=example_virtual_network.name,
address_prefixes=["10.0.1.0/24"])
example_public_ip = azure.network.PublicIp("examplePublicIp",
location=example_resource_group.location,
resource_group_name=example_resource_group.name,
allocation_method="Static",
sku="Standard")
example_firewall = azure.network.Firewall("exampleFirewall",
location=example_resource_group.location,
resource_group_name=example_resource_group.name,
ip_configurations=[azure.network.FirewallIpConfigurationArgs(
name="configuration",
subnet_id=example_subnet.id,
public_ip_address_id=example_public_ip.id,
)])
Example coming soon!
Create Firewall Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Firewall(name: string, args: FirewallArgs, opts?: CustomResourceOptions);@overload
def Firewall(resource_name: str,
args: FirewallArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Firewall(resource_name: str,
opts: Optional[ResourceOptions] = None,
resource_group_name: Optional[str] = None,
private_ip_ranges: Optional[Sequence[str]] = None,
ip_configurations: Optional[Sequence[FirewallIpConfigurationArgs]] = None,
location: Optional[str] = None,
management_ip_configuration: Optional[FirewallManagementIpConfigurationArgs] = None,
name: Optional[str] = None,
dns_servers: Optional[Sequence[str]] = None,
firewall_policy_id: Optional[str] = None,
sku_name: Optional[str] = None,
sku_tier: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None,
threat_intel_mode: Optional[str] = None,
virtual_hub: Optional[FirewallVirtualHubArgs] = None,
zones: Optional[Sequence[str]] = None)func NewFirewall(ctx *Context, name string, args FirewallArgs, opts ...ResourceOption) (*Firewall, error)public Firewall(string name, FirewallArgs args, CustomResourceOptions? opts = null)
public Firewall(String name, FirewallArgs args)
public Firewall(String name, FirewallArgs args, CustomResourceOptions options)
type: azure:network:Firewall
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 FirewallArgs
- 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 FirewallArgs
- 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 FirewallArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args FirewallArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args FirewallArgs
- 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 firewallResource = new Azure.Network.Firewall("firewallResource", new()
{
ResourceGroupName = "string",
PrivateIpRanges = new[]
{
"string",
},
IpConfigurations = new[]
{
new Azure.Network.Inputs.FirewallIpConfigurationArgs
{
Name = "string",
PublicIpAddressId = "string",
PrivateIpAddress = "string",
SubnetId = "string",
},
},
Location = "string",
ManagementIpConfiguration = new Azure.Network.Inputs.FirewallManagementIpConfigurationArgs
{
Name = "string",
PublicIpAddressId = "string",
SubnetId = "string",
PrivateIpAddress = "string",
},
Name = "string",
DnsServers = new[]
{
"string",
},
FirewallPolicyId = "string",
SkuName = "string",
SkuTier = "string",
Tags =
{
{ "string", "string" },
},
ThreatIntelMode = "string",
VirtualHub = new Azure.Network.Inputs.FirewallVirtualHubArgs
{
VirtualHubId = "string",
PrivateIpAddress = "string",
PublicIpAddresses = new[]
{
"string",
},
PublicIpCount = 0,
},
Zones = new[]
{
"string",
},
});
example, err := network.NewFirewall(ctx, "firewallResource", &network.FirewallArgs{
ResourceGroupName: pulumi.String("string"),
PrivateIpRanges: pulumi.StringArray{
pulumi.String("string"),
},
IpConfigurations: network.FirewallIpConfigurationArray{
&network.FirewallIpConfigurationArgs{
Name: pulumi.String("string"),
PublicIpAddressId: pulumi.String("string"),
PrivateIpAddress: pulumi.String("string"),
SubnetId: pulumi.String("string"),
},
},
Location: pulumi.String("string"),
ManagementIpConfiguration: &network.FirewallManagementIpConfigurationArgs{
Name: pulumi.String("string"),
PublicIpAddressId: pulumi.String("string"),
SubnetId: pulumi.String("string"),
PrivateIpAddress: pulumi.String("string"),
},
Name: pulumi.String("string"),
DnsServers: pulumi.StringArray{
pulumi.String("string"),
},
FirewallPolicyId: pulumi.String("string"),
SkuName: pulumi.String("string"),
SkuTier: pulumi.String("string"),
Tags: pulumi.StringMap{
"string": pulumi.String("string"),
},
ThreatIntelMode: pulumi.String("string"),
VirtualHub: &network.FirewallVirtualHubArgs{
VirtualHubId: pulumi.String("string"),
PrivateIpAddress: pulumi.String("string"),
PublicIpAddresses: pulumi.StringArray{
pulumi.String("string"),
},
PublicIpCount: pulumi.Int(0),
},
Zones: pulumi.StringArray{
pulumi.String("string"),
},
})
var firewallResource = new Firewall("firewallResource", FirewallArgs.builder()
.resourceGroupName("string")
.privateIpRanges("string")
.ipConfigurations(FirewallIpConfigurationArgs.builder()
.name("string")
.publicIpAddressId("string")
.privateIpAddress("string")
.subnetId("string")
.build())
.location("string")
.managementIpConfiguration(FirewallManagementIpConfigurationArgs.builder()
.name("string")
.publicIpAddressId("string")
.subnetId("string")
.privateIpAddress("string")
.build())
.name("string")
.dnsServers("string")
.firewallPolicyId("string")
.skuName("string")
.skuTier("string")
.tags(Map.of("string", "string"))
.threatIntelMode("string")
.virtualHub(FirewallVirtualHubArgs.builder()
.virtualHubId("string")
.privateIpAddress("string")
.publicIpAddresses("string")
.publicIpCount(0)
.build())
.zones("string")
.build());
firewall_resource = azure.network.Firewall("firewallResource",
resource_group_name="string",
private_ip_ranges=["string"],
ip_configurations=[{
"name": "string",
"public_ip_address_id": "string",
"private_ip_address": "string",
"subnet_id": "string",
}],
location="string",
management_ip_configuration={
"name": "string",
"public_ip_address_id": "string",
"subnet_id": "string",
"private_ip_address": "string",
},
name="string",
dns_servers=["string"],
firewall_policy_id="string",
sku_name="string",
sku_tier="string",
tags={
"string": "string",
},
threat_intel_mode="string",
virtual_hub={
"virtual_hub_id": "string",
"private_ip_address": "string",
"public_ip_addresses": ["string"],
"public_ip_count": 0,
},
zones=["string"])
const firewallResource = new azure.network.Firewall("firewallResource", {
resourceGroupName: "string",
privateIpRanges: ["string"],
ipConfigurations: [{
name: "string",
publicIpAddressId: "string",
privateIpAddress: "string",
subnetId: "string",
}],
location: "string",
managementIpConfiguration: {
name: "string",
publicIpAddressId: "string",
subnetId: "string",
privateIpAddress: "string",
},
name: "string",
dnsServers: ["string"],
firewallPolicyId: "string",
skuName: "string",
skuTier: "string",
tags: {
string: "string",
},
threatIntelMode: "string",
virtualHub: {
virtualHubId: "string",
privateIpAddress: "string",
publicIpAddresses: ["string"],
publicIpCount: 0,
},
zones: ["string"],
});
type: azure:network:Firewall
properties:
dnsServers:
- string
firewallPolicyId: string
ipConfigurations:
- name: string
privateIpAddress: string
publicIpAddressId: string
subnetId: string
location: string
managementIpConfiguration:
name: string
privateIpAddress: string
publicIpAddressId: string
subnetId: string
name: string
privateIpRanges:
- string
resourceGroupName: string
skuName: string
skuTier: string
tags:
string: string
threatIntelMode: string
virtualHub:
privateIpAddress: string
publicIpAddresses:
- string
publicIpCount: 0
virtualHubId: string
zones:
- string
Firewall 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 Firewall resource accepts the following input properties:
- Resource
Group stringName - The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
- Dns
Servers List<string> - A list of DNS servers that the Azure Firewall will direct DNS traffic to the for name resolution.
- Firewall
Policy stringId - The ID of the Firewall Policy applied to this Firewall.
- Ip
Configurations List<FirewallIp Configuration> - An
ip_configurationblock as documented below. - Location string
- Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
- Management
Ip FirewallConfiguration Management Ip Configuration - A
management_ip_configurationblock as documented below, which allows force-tunnelling of traffic to be performed by the firewall. Adding or removing this block or changing thesubnet_idin an existing block forces a new resource to be created. - Name string
- Specifies the name of the Firewall. Changing this forces a new resource to be created.
- Private
Ip List<string>Ranges - A list of SNAT private CIDR IP ranges, or the special string
IANAPrivateRanges, which indicates Azure Firewall does not SNAT when the destination IP address is a private range per IANA RFC 1918. - Sku
Name string - Sku name of the Firewall. Possible values are
AZFW_HubandAZFW_VNet. Changing this forces a new resource to be created. - Sku
Tier string - Sku tier of the Firewall. Possible values are
PremiumandStandard. Changing this forces a new resource to be created. - Dictionary<string, string>
- A mapping of tags to assign to the resource.
- Threat
Intel stringMode - The operation mode for threat intelligence-based filtering. Possible values are:
Off,Alert,Denyand""(empty string). Defaults toAlert. - Virtual
Hub FirewallVirtual Hub - A
virtual_hubblock as documented below. - Zones List<string>
- Specifies the availability zones in which the Azure Firewall should be created. Changing this forces a new resource to be created.
- Resource
Group stringName - The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
- Dns
Servers []string - A list of DNS servers that the Azure Firewall will direct DNS traffic to the for name resolution.
- Firewall
Policy stringId - The ID of the Firewall Policy applied to this Firewall.
- Ip
Configurations []FirewallIp Configuration Args - An
ip_configurationblock as documented below. - Location string
- Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
- Management
Ip FirewallConfiguration Management Ip Configuration Args - A
management_ip_configurationblock as documented below, which allows force-tunnelling of traffic to be performed by the firewall. Adding or removing this block or changing thesubnet_idin an existing block forces a new resource to be created. - Name string
- Specifies the name of the Firewall. Changing this forces a new resource to be created.
- Private
Ip []stringRanges - A list of SNAT private CIDR IP ranges, or the special string
IANAPrivateRanges, which indicates Azure Firewall does not SNAT when the destination IP address is a private range per IANA RFC 1918. - Sku
Name string - Sku name of the Firewall. Possible values are
AZFW_HubandAZFW_VNet. Changing this forces a new resource to be created. - Sku
Tier string - Sku tier of the Firewall. Possible values are
PremiumandStandard. Changing this forces a new resource to be created. - map[string]string
- A mapping of tags to assign to the resource.
- Threat
Intel stringMode - The operation mode for threat intelligence-based filtering. Possible values are:
Off,Alert,Denyand""(empty string). Defaults toAlert. - Virtual
Hub FirewallVirtual Hub Args - A
virtual_hubblock as documented below. - Zones []string
- Specifies the availability zones in which the Azure Firewall should be created. Changing this forces a new resource to be created.
- resource
Group StringName - The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
- dns
Servers List<String> - A list of DNS servers that the Azure Firewall will direct DNS traffic to the for name resolution.
- firewall
Policy StringId - The ID of the Firewall Policy applied to this Firewall.
- ip
Configurations List<FirewallIp Configuration> - An
ip_configurationblock as documented below. - location String
- Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
- management
Ip FirewallConfiguration Management Ip Configuration - A
management_ip_configurationblock as documented below, which allows force-tunnelling of traffic to be performed by the firewall. Adding or removing this block or changing thesubnet_idin an existing block forces a new resource to be created. - name String
- Specifies the name of the Firewall. Changing this forces a new resource to be created.
- private
Ip List<String>Ranges - A list of SNAT private CIDR IP ranges, or the special string
IANAPrivateRanges, which indicates Azure Firewall does not SNAT when the destination IP address is a private range per IANA RFC 1918. - sku
Name String - Sku name of the Firewall. Possible values are
AZFW_HubandAZFW_VNet. Changing this forces a new resource to be created. - sku
Tier String - Sku tier of the Firewall. Possible values are
PremiumandStandard. Changing this forces a new resource to be created. - Map<String,String>
- A mapping of tags to assign to the resource.
- threat
Intel StringMode - The operation mode for threat intelligence-based filtering. Possible values are:
Off,Alert,Denyand""(empty string). Defaults toAlert. - virtual
Hub FirewallVirtual Hub - A
virtual_hubblock as documented below. - zones List<String>
- Specifies the availability zones in which the Azure Firewall should be created. Changing this forces a new resource to be created.
- resource
Group stringName - The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
- dns
Servers string[] - A list of DNS servers that the Azure Firewall will direct DNS traffic to the for name resolution.
- firewall
Policy stringId - The ID of the Firewall Policy applied to this Firewall.
- ip
Configurations FirewallIp Configuration[] - An
ip_configurationblock as documented below. - location string
- Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
- management
Ip FirewallConfiguration Management Ip Configuration - A
management_ip_configurationblock as documented below, which allows force-tunnelling of traffic to be performed by the firewall. Adding or removing this block or changing thesubnet_idin an existing block forces a new resource to be created. - name string
- Specifies the name of the Firewall. Changing this forces a new resource to be created.
- private
Ip string[]Ranges - A list of SNAT private CIDR IP ranges, or the special string
IANAPrivateRanges, which indicates Azure Firewall does not SNAT when the destination IP address is a private range per IANA RFC 1918. - sku
Name string - Sku name of the Firewall. Possible values are
AZFW_HubandAZFW_VNet. Changing this forces a new resource to be created. - sku
Tier string - Sku tier of the Firewall. Possible values are
PremiumandStandard. Changing this forces a new resource to be created. - {[key: string]: string}
- A mapping of tags to assign to the resource.
- threat
Intel stringMode - The operation mode for threat intelligence-based filtering. Possible values are:
Off,Alert,Denyand""(empty string). Defaults toAlert. - virtual
Hub FirewallVirtual Hub - A
virtual_hubblock as documented below. - zones string[]
- Specifies the availability zones in which the Azure Firewall should be created. Changing this forces a new resource to be created.
- resource_
group_ strname - The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
- dns_
servers Sequence[str] - A list of DNS servers that the Azure Firewall will direct DNS traffic to the for name resolution.
- firewall_
policy_ strid - The ID of the Firewall Policy applied to this Firewall.
- ip_
configurations Sequence[FirewallIp Configuration Args] - An
ip_configurationblock as documented below. - location str
- Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
- management_
ip_ Firewallconfiguration Management Ip Configuration Args - A
management_ip_configurationblock as documented below, which allows force-tunnelling of traffic to be performed by the firewall. Adding or removing this block or changing thesubnet_idin an existing block forces a new resource to be created. - name str
- Specifies the name of the Firewall. Changing this forces a new resource to be created.
- private_
ip_ Sequence[str]ranges - A list of SNAT private CIDR IP ranges, or the special string
IANAPrivateRanges, which indicates Azure Firewall does not SNAT when the destination IP address is a private range per IANA RFC 1918. - sku_
name str - Sku name of the Firewall. Possible values are
AZFW_HubandAZFW_VNet. Changing this forces a new resource to be created. - sku_
tier str - Sku tier of the Firewall. Possible values are
PremiumandStandard. Changing this forces a new resource to be created. - Mapping[str, str]
- A mapping of tags to assign to the resource.
- threat_
intel_ strmode - The operation mode for threat intelligence-based filtering. Possible values are:
Off,Alert,Denyand""(empty string). Defaults toAlert. - virtual_
hub FirewallVirtual Hub Args - A
virtual_hubblock as documented below. - zones Sequence[str]
- Specifies the availability zones in which the Azure Firewall should be created. Changing this forces a new resource to be created.
- resource
Group StringName - The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
- dns
Servers List<String> - A list of DNS servers that the Azure Firewall will direct DNS traffic to the for name resolution.
- firewall
Policy StringId - The ID of the Firewall Policy applied to this Firewall.
- ip
Configurations List<Property Map> - An
ip_configurationblock as documented below. - location String
- Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
- management
Ip Property MapConfiguration - A
management_ip_configurationblock as documented below, which allows force-tunnelling of traffic to be performed by the firewall. Adding or removing this block or changing thesubnet_idin an existing block forces a new resource to be created. - name String
- Specifies the name of the Firewall. Changing this forces a new resource to be created.
- private
Ip List<String>Ranges - A list of SNAT private CIDR IP ranges, or the special string
IANAPrivateRanges, which indicates Azure Firewall does not SNAT when the destination IP address is a private range per IANA RFC 1918. - sku
Name String - Sku name of the Firewall. Possible values are
AZFW_HubandAZFW_VNet. Changing this forces a new resource to be created. - sku
Tier String - Sku tier of the Firewall. Possible values are
PremiumandStandard. Changing this forces a new resource to be created. - Map<String>
- A mapping of tags to assign to the resource.
- threat
Intel StringMode - The operation mode for threat intelligence-based filtering. Possible values are:
Off,Alert,Denyand""(empty string). Defaults toAlert. - virtual
Hub Property Map - A
virtual_hubblock as documented below. - zones List<String>
- Specifies the availability zones in which the Azure Firewall should be created. Changing this forces a new resource to be created.
Outputs
All input properties are implicitly available as output properties. Additionally, the Firewall resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing Firewall Resource
Get an existing Firewall resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: FirewallState, opts?: CustomResourceOptions): Firewall@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
dns_servers: Optional[Sequence[str]] = None,
firewall_policy_id: Optional[str] = None,
ip_configurations: Optional[Sequence[FirewallIpConfigurationArgs]] = None,
location: Optional[str] = None,
management_ip_configuration: Optional[FirewallManagementIpConfigurationArgs] = None,
name: Optional[str] = None,
private_ip_ranges: Optional[Sequence[str]] = None,
resource_group_name: Optional[str] = None,
sku_name: Optional[str] = None,
sku_tier: Optional[str] = None,
tags: Optional[Mapping[str, str]] = None,
threat_intel_mode: Optional[str] = None,
virtual_hub: Optional[FirewallVirtualHubArgs] = None,
zones: Optional[Sequence[str]] = None) -> Firewallfunc GetFirewall(ctx *Context, name string, id IDInput, state *FirewallState, opts ...ResourceOption) (*Firewall, error)public static Firewall Get(string name, Input<string> id, FirewallState? state, CustomResourceOptions? opts = null)public static Firewall get(String name, Output<String> id, FirewallState state, CustomResourceOptions options)resources: _: type: azure:network:Firewall get: id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Dns
Servers List<string> - A list of DNS servers that the Azure Firewall will direct DNS traffic to the for name resolution.
- Firewall
Policy stringId - The ID of the Firewall Policy applied to this Firewall.
- Ip
Configurations List<FirewallIp Configuration> - An
ip_configurationblock as documented below. - Location string
- Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
- Management
Ip FirewallConfiguration Management Ip Configuration - A
management_ip_configurationblock as documented below, which allows force-tunnelling of traffic to be performed by the firewall. Adding or removing this block or changing thesubnet_idin an existing block forces a new resource to be created. - Name string
- Specifies the name of the Firewall. Changing this forces a new resource to be created.
- Private
Ip List<string>Ranges - A list of SNAT private CIDR IP ranges, or the special string
IANAPrivateRanges, which indicates Azure Firewall does not SNAT when the destination IP address is a private range per IANA RFC 1918. - Resource
Group stringName - The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
- Sku
Name string - Sku name of the Firewall. Possible values are
AZFW_HubandAZFW_VNet. Changing this forces a new resource to be created. - Sku
Tier string - Sku tier of the Firewall. Possible values are
PremiumandStandard. Changing this forces a new resource to be created. - Dictionary<string, string>
- A mapping of tags to assign to the resource.
- Threat
Intel stringMode - The operation mode for threat intelligence-based filtering. Possible values are:
Off,Alert,Denyand""(empty string). Defaults toAlert. - Virtual
Hub FirewallVirtual Hub - A
virtual_hubblock as documented below. - Zones List<string>
- Specifies the availability zones in which the Azure Firewall should be created. Changing this forces a new resource to be created.
- Dns
Servers []string - A list of DNS servers that the Azure Firewall will direct DNS traffic to the for name resolution.
- Firewall
Policy stringId - The ID of the Firewall Policy applied to this Firewall.
- Ip
Configurations []FirewallIp Configuration Args - An
ip_configurationblock as documented below. - Location string
- Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
- Management
Ip FirewallConfiguration Management Ip Configuration Args - A
management_ip_configurationblock as documented below, which allows force-tunnelling of traffic to be performed by the firewall. Adding or removing this block or changing thesubnet_idin an existing block forces a new resource to be created. - Name string
- Specifies the name of the Firewall. Changing this forces a new resource to be created.
- Private
Ip []stringRanges - A list of SNAT private CIDR IP ranges, or the special string
IANAPrivateRanges, which indicates Azure Firewall does not SNAT when the destination IP address is a private range per IANA RFC 1918. - Resource
Group stringName - The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
- Sku
Name string - Sku name of the Firewall. Possible values are
AZFW_HubandAZFW_VNet. Changing this forces a new resource to be created. - Sku
Tier string - Sku tier of the Firewall. Possible values are
PremiumandStandard. Changing this forces a new resource to be created. - map[string]string
- A mapping of tags to assign to the resource.
- Threat
Intel stringMode - The operation mode for threat intelligence-based filtering. Possible values are:
Off,Alert,Denyand""(empty string). Defaults toAlert. - Virtual
Hub FirewallVirtual Hub Args - A
virtual_hubblock as documented below. - Zones []string
- Specifies the availability zones in which the Azure Firewall should be created. Changing this forces a new resource to be created.
- dns
Servers List<String> - A list of DNS servers that the Azure Firewall will direct DNS traffic to the for name resolution.
- firewall
Policy StringId - The ID of the Firewall Policy applied to this Firewall.
- ip
Configurations List<FirewallIp Configuration> - An
ip_configurationblock as documented below. - location String
- Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
- management
Ip FirewallConfiguration Management Ip Configuration - A
management_ip_configurationblock as documented below, which allows force-tunnelling of traffic to be performed by the firewall. Adding or removing this block or changing thesubnet_idin an existing block forces a new resource to be created. - name String
- Specifies the name of the Firewall. Changing this forces a new resource to be created.
- private
Ip List<String>Ranges - A list of SNAT private CIDR IP ranges, or the special string
IANAPrivateRanges, which indicates Azure Firewall does not SNAT when the destination IP address is a private range per IANA RFC 1918. - resource
Group StringName - The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
- sku
Name String - Sku name of the Firewall. Possible values are
AZFW_HubandAZFW_VNet. Changing this forces a new resource to be created. - sku
Tier String - Sku tier of the Firewall. Possible values are
PremiumandStandard. Changing this forces a new resource to be created. - Map<String,String>
- A mapping of tags to assign to the resource.
- threat
Intel StringMode - The operation mode for threat intelligence-based filtering. Possible values are:
Off,Alert,Denyand""(empty string). Defaults toAlert. - virtual
Hub FirewallVirtual Hub - A
virtual_hubblock as documented below. - zones List<String>
- Specifies the availability zones in which the Azure Firewall should be created. Changing this forces a new resource to be created.
- dns
Servers string[] - A list of DNS servers that the Azure Firewall will direct DNS traffic to the for name resolution.
- firewall
Policy stringId - The ID of the Firewall Policy applied to this Firewall.
- ip
Configurations FirewallIp Configuration[] - An
ip_configurationblock as documented below. - location string
- Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
- management
Ip FirewallConfiguration Management Ip Configuration - A
management_ip_configurationblock as documented below, which allows force-tunnelling of traffic to be performed by the firewall. Adding or removing this block or changing thesubnet_idin an existing block forces a new resource to be created. - name string
- Specifies the name of the Firewall. Changing this forces a new resource to be created.
- private
Ip string[]Ranges - A list of SNAT private CIDR IP ranges, or the special string
IANAPrivateRanges, which indicates Azure Firewall does not SNAT when the destination IP address is a private range per IANA RFC 1918. - resource
Group stringName - The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
- sku
Name string - Sku name of the Firewall. Possible values are
AZFW_HubandAZFW_VNet. Changing this forces a new resource to be created. - sku
Tier string - Sku tier of the Firewall. Possible values are
PremiumandStandard. Changing this forces a new resource to be created. - {[key: string]: string}
- A mapping of tags to assign to the resource.
- threat
Intel stringMode - The operation mode for threat intelligence-based filtering. Possible values are:
Off,Alert,Denyand""(empty string). Defaults toAlert. - virtual
Hub FirewallVirtual Hub - A
virtual_hubblock as documented below. - zones string[]
- Specifies the availability zones in which the Azure Firewall should be created. Changing this forces a new resource to be created.
- dns_
servers Sequence[str] - A list of DNS servers that the Azure Firewall will direct DNS traffic to the for name resolution.
- firewall_
policy_ strid - The ID of the Firewall Policy applied to this Firewall.
- ip_
configurations Sequence[FirewallIp Configuration Args] - An
ip_configurationblock as documented below. - location str
- Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
- management_
ip_ Firewallconfiguration Management Ip Configuration Args - A
management_ip_configurationblock as documented below, which allows force-tunnelling of traffic to be performed by the firewall. Adding or removing this block or changing thesubnet_idin an existing block forces a new resource to be created. - name str
- Specifies the name of the Firewall. Changing this forces a new resource to be created.
- private_
ip_ Sequence[str]ranges - A list of SNAT private CIDR IP ranges, or the special string
IANAPrivateRanges, which indicates Azure Firewall does not SNAT when the destination IP address is a private range per IANA RFC 1918. - resource_
group_ strname - The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
- sku_
name str - Sku name of the Firewall. Possible values are
AZFW_HubandAZFW_VNet. Changing this forces a new resource to be created. - sku_
tier str - Sku tier of the Firewall. Possible values are
PremiumandStandard. Changing this forces a new resource to be created. - Mapping[str, str]
- A mapping of tags to assign to the resource.
- threat_
intel_ strmode - The operation mode for threat intelligence-based filtering. Possible values are:
Off,Alert,Denyand""(empty string). Defaults toAlert. - virtual_
hub FirewallVirtual Hub Args - A
virtual_hubblock as documented below. - zones Sequence[str]
- Specifies the availability zones in which the Azure Firewall should be created. Changing this forces a new resource to be created.
- dns
Servers List<String> - A list of DNS servers that the Azure Firewall will direct DNS traffic to the for name resolution.
- firewall
Policy StringId - The ID of the Firewall Policy applied to this Firewall.
- ip
Configurations List<Property Map> - An
ip_configurationblock as documented below. - location String
- Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.
- management
Ip Property MapConfiguration - A
management_ip_configurationblock as documented below, which allows force-tunnelling of traffic to be performed by the firewall. Adding or removing this block or changing thesubnet_idin an existing block forces a new resource to be created. - name String
- Specifies the name of the Firewall. Changing this forces a new resource to be created.
- private
Ip List<String>Ranges - A list of SNAT private CIDR IP ranges, or the special string
IANAPrivateRanges, which indicates Azure Firewall does not SNAT when the destination IP address is a private range per IANA RFC 1918. - resource
Group StringName - The name of the resource group in which to create the resource. Changing this forces a new resource to be created.
- sku
Name String - Sku name of the Firewall. Possible values are
AZFW_HubandAZFW_VNet. Changing this forces a new resource to be created. - sku
Tier String - Sku tier of the Firewall. Possible values are
PremiumandStandard. Changing this forces a new resource to be created. - Map<String>
- A mapping of tags to assign to the resource.
- threat
Intel StringMode - The operation mode for threat intelligence-based filtering. Possible values are:
Off,Alert,Denyand""(empty string). Defaults toAlert. - virtual
Hub Property Map - A
virtual_hubblock as documented below. - zones List<String>
- Specifies the availability zones in which the Azure Firewall should be created. Changing this forces a new resource to be created.
Supporting Types
FirewallIpConfiguration, FirewallIpConfigurationArgs
- Name string
- Specifies the name of the IP Configuration.
- Public
Ip stringAddress Id - The ID of the Public IP Address associated with the firewall.
- Private
Ip stringAddress - The private IP address associated with the Firewall.
- Subnet
Id string - Reference to the subnet associated with the IP Configuration.
- Name string
- Specifies the name of the IP Configuration.
- Public
Ip stringAddress Id - The ID of the Public IP Address associated with the firewall.
- Private
Ip stringAddress - The private IP address associated with the Firewall.
- Subnet
Id string - Reference to the subnet associated with the IP Configuration.
- name String
- Specifies the name of the IP Configuration.
- public
Ip StringAddress Id - The ID of the Public IP Address associated with the firewall.
- private
Ip StringAddress - The private IP address associated with the Firewall.
- subnet
Id String - Reference to the subnet associated with the IP Configuration.
- name string
- Specifies the name of the IP Configuration.
- public
Ip stringAddress Id - The ID of the Public IP Address associated with the firewall.
- private
Ip stringAddress - The private IP address associated with the Firewall.
- subnet
Id string - Reference to the subnet associated with the IP Configuration.
- name str
- Specifies the name of the IP Configuration.
- public_
ip_ straddress_ id - The ID of the Public IP Address associated with the firewall.
- private_
ip_ straddress - The private IP address associated with the Firewall.
- subnet_
id str - Reference to the subnet associated with the IP Configuration.
- name String
- Specifies the name of the IP Configuration.
- public
Ip StringAddress Id - The ID of the Public IP Address associated with the firewall.
- private
Ip StringAddress - The private IP address associated with the Firewall.
- subnet
Id String - Reference to the subnet associated with the IP Configuration.
FirewallManagementIpConfiguration, FirewallManagementIpConfigurationArgs
- Name string
- Specifies the name of the IP Configuration.
- Public
Ip stringAddress Id - The ID of the Public IP Address associated with the firewall.
- Subnet
Id string - Reference to the subnet associated with the IP Configuration. Changing this forces a new resource to be created.
- Private
Ip stringAddress - The private IP address associated with the Firewall.
- Name string
- Specifies the name of the IP Configuration.
- Public
Ip stringAddress Id - The ID of the Public IP Address associated with the firewall.
- Subnet
Id string - Reference to the subnet associated with the IP Configuration. Changing this forces a new resource to be created.
- Private
Ip stringAddress - The private IP address associated with the Firewall.
- name String
- Specifies the name of the IP Configuration.
- public
Ip StringAddress Id - The ID of the Public IP Address associated with the firewall.
- subnet
Id String - Reference to the subnet associated with the IP Configuration. Changing this forces a new resource to be created.
- private
Ip StringAddress - The private IP address associated with the Firewall.
- name string
- Specifies the name of the IP Configuration.
- public
Ip stringAddress Id - The ID of the Public IP Address associated with the firewall.
- subnet
Id string - Reference to the subnet associated with the IP Configuration. Changing this forces a new resource to be created.
- private
Ip stringAddress - The private IP address associated with the Firewall.
- name str
- Specifies the name of the IP Configuration.
- public_
ip_ straddress_ id - The ID of the Public IP Address associated with the firewall.
- subnet_
id str - Reference to the subnet associated with the IP Configuration. Changing this forces a new resource to be created.
- private_
ip_ straddress - The private IP address associated with the Firewall.
- name String
- Specifies the name of the IP Configuration.
- public
Ip StringAddress Id - The ID of the Public IP Address associated with the firewall.
- subnet
Id String - Reference to the subnet associated with the IP Configuration. Changing this forces a new resource to be created.
- private
Ip StringAddress - The private IP address associated with the Firewall.
FirewallVirtualHub, FirewallVirtualHubArgs
- Virtual
Hub stringId - Specifies the ID of the Virtual Hub where the Firewall resides in.
- Private
Ip stringAddress - The private IP address associated with the Firewall.
- Public
Ip List<string>Addresses - The list of public IP addresses associated with the Firewall.
- Public
Ip intCount - Specifies the number of public IPs to assign to the Firewall. Defaults to
1.
- Virtual
Hub stringId - Specifies the ID of the Virtual Hub where the Firewall resides in.
- Private
Ip stringAddress - The private IP address associated with the Firewall.
- Public
Ip []stringAddresses - The list of public IP addresses associated with the Firewall.
- Public
Ip intCount - Specifies the number of public IPs to assign to the Firewall. Defaults to
1.
- virtual
Hub StringId - Specifies the ID of the Virtual Hub where the Firewall resides in.
- private
Ip StringAddress - The private IP address associated with the Firewall.
- public
Ip List<String>Addresses - The list of public IP addresses associated with the Firewall.
- public
Ip IntegerCount - Specifies the number of public IPs to assign to the Firewall. Defaults to
1.
- virtual
Hub stringId - Specifies the ID of the Virtual Hub where the Firewall resides in.
- private
Ip stringAddress - The private IP address associated with the Firewall.
- public
Ip string[]Addresses - The list of public IP addresses associated with the Firewall.
- public
Ip numberCount - Specifies the number of public IPs to assign to the Firewall. Defaults to
1.
- virtual_
hub_ strid - Specifies the ID of the Virtual Hub where the Firewall resides in.
- private_
ip_ straddress - The private IP address associated with the Firewall.
- public_
ip_ Sequence[str]addresses - The list of public IP addresses associated with the Firewall.
- public_
ip_ intcount - Specifies the number of public IPs to assign to the Firewall. Defaults to
1.
- virtual
Hub StringId - Specifies the ID of the Virtual Hub where the Firewall resides in.
- private
Ip StringAddress - The private IP address associated with the Firewall.
- public
Ip List<String>Addresses - The list of public IP addresses associated with the Firewall.
- public
Ip NumberCount - Specifies the number of public IPs to assign to the Firewall. Defaults to
1.
Import
Azure Firewalls can be imported using the resource id, e.g.
$ pulumi import azure:network/firewall:Firewall example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Network/azureFirewalls/testfirewall
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Azure Classic pulumi/pulumi-azure
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
azurermTerraform Provider.
We recommend using Azure Native.
published on Monday, Mar 9, 2026 by Pulumi
