Module network

@pulumi/azure > network

Index ▾

network/applicationGateway.ts network/applicationSecurityGroup.ts network/expressRouteCircuit.ts network/expressRouteCircuitAuthorization.ts network/expressRouteCircuitPeering.ts network/firewall.ts network/firewallApplicationRuleCollection.ts network/firewallNetworkRuleCollection.ts network/getApplicationSecurityGroup.ts network/getNetworkInterface.ts network/getNetworkSecurityGroup.ts network/getPublicIP.ts network/getPublicIPs.ts network/getRouteTable.ts network/getSubnet.ts network/getVirtualNetwork.ts network/getVirtualNetworkGateway.ts network/localNetworkGateway.ts network/networkInterface.ts network/networkInterfaceApplicationGatewayBackendAddressPoolAssociation.ts network/networkInterfaceApplicationSecurityGroupAssociation.ts network/networkInterfaceBackendAddressPoolAssociation.ts network/networkInterfaceNatRuleAssociation.ts network/networkSecurityGroup.ts network/networkSecurityRule.ts network/networkWatcher.ts network/packetCapture.ts network/publicIp.ts network/route.ts network/routeTable.ts network/subnet.ts network/subnetNetworkSecurityGroupAssociation.ts network/subnetRouteTableAssociation.ts network/virtualNetwork.ts network/virtualNetworkGateway.ts network/virtualNetworkGatewayConnection.ts network/virtualNetworkPeering.ts

class ApplicationGateway

extends CustomResource

Manages an Application Gateway.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US",
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.254.0.0/16"],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const backendAddressPoolName = testVirtualNetwork.name.apply(name => `${name}-beap`);
const frontendIpConfigurationName = testVirtualNetwork.name.apply(name => `${name}-feip`);
const frontendPortName = testVirtualNetwork.name.apply(name => `${name}-feport`);
const httpSettingName = testVirtualNetwork.name.apply(name => `${name}-be-htst`);
const listenerName = testVirtualNetwork.name.apply(name => `${name}-httplstn`);
const requestRoutingRuleName = testVirtualNetwork.name.apply(name => `${name}-rqrt`);
const testPublicIp = new azure.network.PublicIp("test", {
    allocationMethod: "Dynamic",
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const frontend = new azure.network.Subnet("frontend", {
    addressPrefix: "10.254.0.0/24",
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
});
const network = new azure.network.ApplicationGateway("network", {
    backendAddressPools: [{
        name: backendAddressPoolName,
    }],
    backendHttpSettings: [{
        cookieBasedAffinity: "Disabled",
        name: httpSettingName,
        port: 80,
        protocol: "Http",
        requestTimeout: 1,
    }],
    frontendIpConfigurations: [{
        name: frontendIpConfigurationName,
        publicIpAddressId: testPublicIp.id,
    }],
    frontendPorts: [{
        name: frontendPortName,
        port: 80,
    }],
    gatewayIpConfigurations: [{
        name: "my-gateway-ip-configuration",
        subnetId: frontend.id,
    }],
    httpListeners: [{
        frontendIpConfigurationName: frontendIpConfigurationName,
        frontendPortName: frontendPortName,
        name: listenerName,
        protocol: "Http",
    }],
    location: testResourceGroup.location,
    requestRoutingRules: [{
        backendAddressPoolName: backendAddressPoolName,
        backendHttpSettingsName: httpSettingName,
        httpListenerName: listenerName,
        name: requestRoutingRuleName,
        ruleType: "Basic",
    }],
    resourceGroupName: testResourceGroup.name,
    sku: {
        capacity: 2,
        name: "Standard_Small",
        tier: "Standard",
    },
});
const backend = new azure.network.Subnet("backend", {
    addressPrefix: "10.254.2.0/24",
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
});

constructor

new ApplicationGateway(name: string, args: ApplicationGatewayArgs, opts?: pulumi.CustomResourceOptions)

Create a ApplicationGateway resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ApplicationGatewayState, opts?: pulumi.CustomResourceOptions): ApplicationGateway

Get an existing ApplicationGateway resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property authenticationCertificates

public authenticationCertificates: pulumi.Output<{
    data: string;
    id: string;
    name: string;
}[] | undefined>;

One or more authentication_certificate blocks as defined below.

property backendAddressPools

public backendAddressPools: pulumi.Output<{
    fqdnLists: string[];
    fqdns: string[];
    id: string;
    ipAddressLists: string[];
    ipAddresses: string[];
    name: string;
}[]>;

One or more backend_address_pool blocks as defined below.

property backendHttpSettings

public backendHttpSettings: pulumi.Output<{
    authenticationCertificates: {
        id: string;
        name: string;
    }[];
    cookieBasedAffinity: string;
    id: string;
    name: string;
    pickHostNameFromBackendAddress: boolean;
    port: number;
    probeId: string;
    probeName: string;
    protocol: string;
    requestTimeout: number;
}[]>;

One or more backend_http_settings blocks as defined below.

property customErrorConfigurations

public customErrorConfigurations: pulumi.Output<{
    customErrorPageUrl: string;
    id: string;
    statusCode: string;
}[] | undefined>;

One or more custom_error_configuration blocks as defined below.

property disabledSslProtocols

public disabledSslProtocols: pulumi.Output<string[] | undefined>;

A list of SSL Protocols which should be disabled on this Application Gateway. Possible values are TLSv1_0, TLSv1_1 and TLSv1_2.

property enableHttp2

public enableHttp2: pulumi.Output<boolean | undefined>;

property frontendIpConfigurations

public frontendIpConfigurations: pulumi.Output<{
    id: string;
    name: string;
    privateIpAddress: string;
    privateIpAddressAllocation: string;
    publicIpAddressId: string;
    subnetId: string;
}[]>;

One or more frontend_ip_configuration blocks as defined below.

property frontendPorts

public frontendPorts: pulumi.Output<{
    id: string;
    name: string;
    port: number;
}[]>;

One or more frontend_port blocks as defined below.

property gatewayIpConfigurations

public gatewayIpConfigurations: pulumi.Output<{
    id: string;
    name: string;
    subnetId: string;
}[]>;

One or more gateway_ip_configuration blocks as defined below.

property httpListeners

public httpListeners: pulumi.Output<{
    customErrorConfigurations: {
        customErrorPageUrl: string;
        id: string;
        statusCode: string;
    }[];
    frontendIpConfigurationId: string;
    frontendIpConfigurationName: string;
    frontendPortId: string;
    frontendPortName: string;
    hostName: string;
    id: string;
    name: string;
    protocol: string;
    requireSni: boolean;
    sslCertificateId: string;
    sslCertificateName: string;
}[]>;

One or more http_listener blocks as defined below.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property location

public location: pulumi.Output<string>;

The Azure region where the Application Gateway should exist. Changing this forces a new resource to be created.

property name

public name: pulumi.Output<string>;

The name of the Application Gateway. Changing this forces a new resource to be created.

property probes

public probes: pulumi.Output<{
    host: string;
    id: string;
    interval: number;
    match: {
        body: string;
        statusCodes: string[];
    };
    minimumServers: number;
    name: string;
    path: string;
    pickHostNameFromBackendHttpSettings: boolean;
    protocol: string;
    timeout: number;
    unhealthyThreshold: number;
}[] | undefined>;

One or more probe blocks as defined below.

property requestRoutingRules

public requestRoutingRules: pulumi.Output<{
    backendAddressPoolId: string;
    backendAddressPoolName: string;
    backendHttpSettingsId: string;
    backendHttpSettingsName: string;
    httpListenerId: string;
    httpListenerName: string;
    id: string;
    name: string;
    ruleType: string;
    urlPathMapId: string;
    urlPathMapName: string;
}[]>;

One or more request_routing_rule blocks as defined below.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to the Application Gateway should exist. Changing this forces a new resource to be created.

property sku

public sku: pulumi.Output<{
    capacity: number;
    name: string;
    tier: string;
}>;

A sku block as defined below.

property sslCertificates

public sslCertificates: pulumi.Output<{
    data: string;
    id: string;
    name: string;
    password: string;
    publicCertData: string;
}[] | undefined>;

One or more ssl_certificate blocks as defined below.

property tags

public tags: pulumi.Output<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property urlPathMaps

public urlPathMaps: pulumi.Output<{
    defaultBackendAddressPoolId: string;
    defaultBackendAddressPoolName: string;
    defaultBackendHttpSettingsId: string;
    defaultBackendHttpSettingsName: string;
    id: string;
    name: string;
    pathRules: {
        backendAddressPoolId: string;
        backendAddressPoolName: string;
        backendHttpSettingsId: string;
        backendHttpSettingsName: string;
        id: string;
        name: string;
        paths: string[];
    }[];
}[] | undefined>;

One or more url_path_map blocks as defined below.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property wafConfiguration

public wafConfiguration: pulumi.Output<{
    enabled: boolean;
    fileUploadLimitMb: number;
    firewallMode: string;
    ruleSetType: string;
    ruleSetVersion: string;
} | undefined>;

A waf_configuration block as defined below.

class ApplicationSecurityGroup

extends CustomResource

Manage an Application Security Group.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West Europe",
});
const testApplicationSecurityGroup = new azure.network.ApplicationSecurityGroup("test", {
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
    tags: {
        Hello: "World",
    },
});

constructor

new ApplicationSecurityGroup(name: string, args: ApplicationSecurityGroupArgs, opts?: pulumi.CustomResourceOptions)

Create a ApplicationSecurityGroup resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ApplicationSecurityGroupState, opts?: pulumi.CustomResourceOptions): ApplicationSecurityGroup

Get an existing ApplicationSecurityGroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property location

public location: pulumi.Output<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

public name: pulumi.Output<string>;

Specifies the name of the Application Security Group. Changing this forces a new resource to be created.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the Application Security Group.

property tags

public tags: pulumi.Output<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class ExpressRouteCircuit

extends CustomResource

Manages an ExpressRoute circuit.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US",
});
const testExpressRouteCircuit = new azure.network.ExpressRouteCircuit("test", {
    bandwidthInMbps: 50,
    location: testResourceGroup.location,
    peeringLocation: "Silicon Valley",
    resourceGroupName: testResourceGroup.name,
    serviceProviderName: "Equinix",
    sku: {
        family: "MeteredData",
        tier: "Standard",
    },
    tags: {
        environment: "Production",
    },
});

constructor

new ExpressRouteCircuit(name: string, args: ExpressRouteCircuitArgs, opts?: pulumi.CustomResourceOptions)

Create a ExpressRouteCircuit resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ExpressRouteCircuitState, opts?: pulumi.CustomResourceOptions): ExpressRouteCircuit

Get an existing ExpressRouteCircuit resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property allowClassicOperations

public allowClassicOperations: pulumi.Output<boolean | undefined>;

Allow the circuit to interact with classic (RDFE) resources. The default value is false.

property bandwidthInMbps

public bandwidthInMbps: pulumi.Output<number>;

The bandwidth in Mbps of the circuit being created.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property location

public location: pulumi.Output<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

public name: pulumi.Output<string>;

The name of the ExpressRoute circuit. Changing this forces a new resource to be created.

property peeringLocation

public peeringLocation: pulumi.Output<string>;

The name of the peering location and not the Azure resource location.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the ExpressRoute circuit. Changing this forces a new resource to be created.

property serviceKey

public serviceKey: pulumi.Output<string>;

The string needed by the service provider to provision the ExpressRoute circuit.

property serviceProviderName

public serviceProviderName: pulumi.Output<string>;

The name of the ExpressRoute Service Provider.

property serviceProviderProvisioningState

public serviceProviderProvisioningState: pulumi.Output<string>;

The ExpressRoute circuit provisioning state from your chosen service provider. Possible values are “NotProvisioned”, “Provisioning”, “Provisioned”, and “Deprovisioning”.

property sku

public sku: pulumi.Output<{
    family: string;
    tier: string;
}>;

A sku block for the ExpressRoute circuit as documented below.

property tags

public tags: pulumi.Output<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class ExpressRouteCircuitAuthorization

extends CustomResource

Manages an ExpressRoute Circuit Authorization.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US",
});
const testExpressRouteCircuit = new azure.network.ExpressRouteCircuit("test", {
    allowClassicOperations: false,
    bandwidthInMbps: 50,
    location: testResourceGroup.location,
    peeringLocation: "Silicon Valley",
    resourceGroupName: testResourceGroup.name,
    serviceProviderName: "Equinix",
    sku: {
        family: "MeteredData",
        tier: "Standard",
    },
    tags: {
        environment: "Production",
    },
});
const testExpressRouteCircuitAuthorization = new azure.network.ExpressRouteCircuitAuthorization("test", {
    expressRouteCircuitName: testExpressRouteCircuit.name,
    resourceGroupName: testResourceGroup.name,
});

constructor

new ExpressRouteCircuitAuthorization(name: string, args: ExpressRouteCircuitAuthorizationArgs, opts?: pulumi.CustomResourceOptions)

Create a ExpressRouteCircuitAuthorization resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ExpressRouteCircuitAuthorizationState, opts?: pulumi.CustomResourceOptions): ExpressRouteCircuitAuthorization

Get an existing ExpressRouteCircuitAuthorization resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property authorizationKey

public authorizationKey: pulumi.Output<string>;

The Authorization Key.

property authorizationUseStatus

public authorizationUseStatus: pulumi.Output<string>;

The authorization use status.

property expressRouteCircuitName

public expressRouteCircuitName: pulumi.Output<string>;

The name of the Express Route Circuit in which to create the Authorization.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

The name of the ExpressRoute circuit. Changing this forces a new resource to be created.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the ExpressRoute circuit. Changing this forces a new resource to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class ExpressRouteCircuitPeering

extends CustomResource

Manages an ExpressRoute Circuit Peering.

Example Usage (Creating a Microsoft Peering)

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US",
});
const testExpressRouteCircuit = new azure.network.ExpressRouteCircuit("test", {
    allowClassicOperations: false,
    bandwidthInMbps: 50,
    location: testResourceGroup.location,
    peeringLocation: "Silicon Valley",
    resourceGroupName: testResourceGroup.name,
    serviceProviderName: "Equinix",
    sku: {
        family: "MeteredData",
        tier: "Standard",
    },
    tags: {
        environment: "Production",
    },
});
const testExpressRouteCircuitPeering = new azure.network.ExpressRouteCircuitPeering("test", {
    expressRouteCircuitName: testExpressRouteCircuit.name,
    microsoftPeeringConfig: {
        advertisedPublicPrefixes: ["123.1.0.0/24"],
    },
    peerAsn: 100,
    peeringType: "MicrosoftPeering",
    primaryPeerAddressPrefix: "123.0.0.0/30",
    resourceGroupName: testResourceGroup.name,
    secondaryPeerAddressPrefix: "123.0.0.4/30",
    vlanId: 300,
});

constructor

new ExpressRouteCircuitPeering(name: string, args: ExpressRouteCircuitPeeringArgs, opts?: pulumi.CustomResourceOptions)

Create a ExpressRouteCircuitPeering resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ExpressRouteCircuitPeeringState, opts?: pulumi.CustomResourceOptions): ExpressRouteCircuitPeering

Get an existing ExpressRouteCircuitPeering resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property azureAsn

public azureAsn: pulumi.Output<number>;

The ASN used by Azure.

property expressRouteCircuitName

public expressRouteCircuitName: pulumi.Output<string>;

The name of the ExpressRoute Circuit in which to create the Peering.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property microsoftPeeringConfig

public microsoftPeeringConfig: pulumi.Output<{
    advertisedPublicPrefixes: string[];
} | undefined>;

A microsoft_peering_config block as defined below. Required when peering_type is set to MicrosoftPeering.

property peerAsn

public peerAsn: pulumi.Output<number>;

The Either a 16-bit or a 32-bit ASN. Can either be public or private..

property peeringType

public peeringType: pulumi.Output<string>;

The type of the ExpressRoute Circuit Peering. Acceptable values include AzurePrivatePeering, AzurePublicPeering and MicrosoftPeering. Changing this forces a new resource to be created.

property primaryAzurePort

public primaryAzurePort: pulumi.Output<string>;

The Primary Port used by Azure for this Peering.

property primaryPeerAddressPrefix

public primaryPeerAddressPrefix: pulumi.Output<string>;

A /30 subnet for the primary link.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the Express Route Circuit Peering. Changing this forces a new resource to be created.

property secondaryAzurePort

public secondaryAzurePort: pulumi.Output<string>;

The Secondary Port used by Azure for this Peering.

property secondaryPeerAddressPrefix

public secondaryPeerAddressPrefix: pulumi.Output<string>;

A /30 subnet for the secondary link.

property sharedKey

public sharedKey: pulumi.Output<string | undefined>;

The shared key. Can be a maximum of 25 characters.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vlanId

public vlanId: pulumi.Output<number>;

A valid VLAN ID to establish this peering on.

class Firewall

extends CustomResource

Manages an Azure Firewall.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "North Europe",
});
const testPublicIp = new azure.network.PublicIp("test", {
    allocationMethod: "Static",
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
    sku: "Standard",
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.0.0.0/16"],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testSubnet = new azure.network.Subnet("test", {
    addressPrefix: "10.0.1.0/24",
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
});
const testFirewall = new azure.network.Firewall("test", {
    ipConfiguration: {
        name: "configuration",
        publicIpAddressId: testPublicIp.id,
        subnetId: testSubnet.id,
    },
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});

constructor

new Firewall(name: string, args: FirewallArgs, opts?: pulumi.CustomResourceOptions)

Create a Firewall resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: FirewallState, opts?: pulumi.CustomResourceOptions): Firewall

Get an existing Firewall resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipConfiguration

public ipConfiguration: pulumi.Output<{
    internalPublicIpAddressId: string;
    name: string;
    privateIpAddress: string;
    publicIpAddressId: string;
    subnetId: string;
}>;

A ip_configuration block as documented below.

property location

public location: pulumi.Output<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

public name: pulumi.Output<string>;

Specifies the name of the Firewall. Changing this forces a new resource to be created.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the resource. Changing this forces a new resource to be created.

property tags

public tags: pulumi.Output<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class FirewallApplicationRuleCollection

extends CustomResource

Manages an Application Rule Collection within an Azure Firewall.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "North Europe",
});
const testPublicIp = new azure.network.PublicIp("test", {
    allocationMethod: "Static",
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
    sku: "Standard",
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.0.0.0/16"],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testSubnet = new azure.network.Subnet("test", {
    addressPrefix: "10.0.1.0/24",
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
});
const testFirewall = new azure.network.Firewall("test", {
    ipConfiguration: {
        name: "configuration",
        publicIpAddressId: testPublicIp.id,
        subnetId: testSubnet.id,
    },
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testFirewallApplicationRuleCollection = new azure.network.FirewallApplicationRuleCollection("test", {
    action: "Allow",
    azureFirewallName: testFirewall.name,
    priority: 100,
    resourceGroupName: testResourceGroup.name,
    rules: [{
        destinationAddresses: [
            "8.8.8.8",
            "8.8.4.4",
        ],
        destinationPorts: ["53"],
        name: "testrule",
        protocols: [
            "TCP",
            "UDP",
        ],
        sourceAddresses: ["10.0.0.0/16"],
    }],
});

constructor

new FirewallApplicationRuleCollection(name: string, args: FirewallApplicationRuleCollectionArgs, opts?: pulumi.CustomResourceOptions)

Create a FirewallApplicationRuleCollection resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: FirewallApplicationRuleCollectionState, opts?: pulumi.CustomResourceOptions): FirewallApplicationRuleCollection

Get an existing FirewallApplicationRuleCollection resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property action

public action: pulumi.Output<string>;

Specifies the action the rule will apply to matching traffic. Possible values are Allow and Deny.

property azureFirewallName

public azureFirewallName: pulumi.Output<string>;

Specifies the name of the Firewall in which the Application Rule Collection should be created. Changing this forces a new resource to be created.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

Specifies the name of the Application Rule Collection which must be unique within the Firewall. Changing this forces a new resource to be created.

property priority

public priority: pulumi.Output<number>;

Specifies the priority of the rule collection. Possible values are between 100 - 65000.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

Specifies the name of the Resource Group in which the Firewall exists. Changing this forces a new resource to be created.

property rules

public rules: pulumi.Output<{
    description: string;
    fqdnTags: string[];
    name: string;
    protocols: {
        port: number;
        type: string;
    }[];
    sourceAddresses: string[];
    targetFqdns: string[];
}[]>;

One or more rule blocks as defined below.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class FirewallNetworkRuleCollection

extends CustomResource

Manages a Network Rule Collection within an Azure Firewall.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "North Europe",
});
const testPublicIp = new azure.network.PublicIp("test", {
    allocationMethod: "Static",
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
    sku: "Standard",
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.0.0.0/16"],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testSubnet = new azure.network.Subnet("test", {
    addressPrefix: "10.0.1.0/24",
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
});
const testFirewall = new azure.network.Firewall("test", {
    ipConfiguration: {
        name: "configuration",
        publicIpAddressId: testPublicIp.id,
        subnetId: testSubnet.id,
    },
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testFirewallNetworkRuleCollection = new azure.network.FirewallNetworkRuleCollection("test", {
    action: "Allow",
    azureFirewallName: testFirewall.name,
    priority: 100,
    resourceGroupName: testResourceGroup.name,
    rules: [{
        destinationAddresses: [
            "8.8.8.8",
            "8.8.4.4",
        ],
        destinationPorts: ["53"],
        name: "testrule",
        protocols: [
            "TCP",
            "UDP",
        ],
        sourceAddresses: ["10.0.0.0/16"],
    }],
});

constructor

new FirewallNetworkRuleCollection(name: string, args: FirewallNetworkRuleCollectionArgs, opts?: pulumi.CustomResourceOptions)

Create a FirewallNetworkRuleCollection resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: FirewallNetworkRuleCollectionState, opts?: pulumi.CustomResourceOptions): FirewallNetworkRuleCollection

Get an existing FirewallNetworkRuleCollection resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property action

public action: pulumi.Output<string>;

Specifies the action the rule will apply to matching traffic. Possible values are Allow and Deny.

property azureFirewallName

public azureFirewallName: pulumi.Output<string>;

Specifies the name of the Firewall in which the Network Rule Collection should be created. Changing this forces a new resource to be created.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

Specifies the name of the Network Rule Collection which must be unique within the Firewall. Changing this forces a new resource to be created.

property priority

public priority: pulumi.Output<number>;

Specifies the priority of the rule collection. Possible values are between 100 - 65000.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

Specifies the name of the Resource Group in which the Firewall exists. Changing this forces a new resource to be created.

property rules

public rules: pulumi.Output<{
    description: string;
    destinationAddresses: string[];
    destinationPorts: string[];
    name: string;
    protocols: string[];
    sourceAddresses: string[];
}[]>;

One or more rule blocks as defined below.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class LocalNetworkGateway

extends CustomResource

Manages a local network gateway connection over which specific connections can be configured.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const test = new azure.core.ResourceGroup("test", {
    location: "West US",
});
const home = new azure.network.LocalNetworkGateway("home", {
    addressSpaces: ["10.0.0.0/16"],
    gatewayAddress: "12.13.14.15",
    location: test.location,
    resourceGroupName: test.name,
});

constructor

new LocalNetworkGateway(name: string, args: LocalNetworkGatewayArgs, opts?: pulumi.CustomResourceOptions)

Create a LocalNetworkGateway resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: LocalNetworkGatewayState, opts?: pulumi.CustomResourceOptions): LocalNetworkGateway

Get an existing LocalNetworkGateway resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property addressSpaces

public addressSpaces: pulumi.Output<string[]>;

The list of string CIDRs representing the address spaces the gateway exposes.

property bgpSettings

public bgpSettings: pulumi.Output<{
    asn: number;
    bgpPeeringAddress: string;
    peerWeight: number;
} | undefined>;

A bgp_settings block as defined below containing the Local Network Gateway’s BGP speaker settings.

property gatewayAddress

public gatewayAddress: pulumi.Output<string>;

The IP address of the gateway to which to connect.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property location

public location: pulumi.Output<string>;

The location/region where the local network gateway is created. Changing this forces a new resource to be created.

property name

public name: pulumi.Output<string>;

The name of the local network gateway. Changing this forces a new resource to be created.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the local network gateway.

property tags

public tags: pulumi.Output<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class NetworkInterface

extends CustomResource

Manages a Network Interface located in a Virtual Network, usually attached to a Virtual Machine.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US",
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.0.0.0/16"],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testSubnet = new azure.network.Subnet("test", {
    addressPrefix: "10.0.2.0/24",
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
});
const testNetworkInterface = new azure.network.NetworkInterface("test", {
    ipConfigurations: [{
        name: "testconfiguration1",
        privateIpAddressAllocation: "Dynamic",
        subnetId: testSubnet.id,
    }],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
    tags: {
        environment: "staging",
    },
});

constructor

new NetworkInterface(name: string, args: NetworkInterfaceArgs, opts?: pulumi.CustomResourceOptions)

Create a NetworkInterface resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkInterfaceState, opts?: pulumi.CustomResourceOptions): NetworkInterface

Get an existing NetworkInterface resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property appliedDnsServers

public appliedDnsServers: pulumi.Output<string[]>;

If the VM that uses this NIC is part of an Availability Set, then this list will have the union of all DNS servers from all NICs that are part of the Availability Set

property dnsServers

public dnsServers: pulumi.Output<string[]>;

List of DNS servers IP addresses to use for this NIC, overrides the VNet-level server list

property enableAcceleratedNetworking

public enableAcceleratedNetworking: pulumi.Output<boolean | undefined>;

Enables Azure Accelerated Networking using SR-IOV. Only certain VM instance sizes are supported. Refer to Create a Virtual Machine with Accelerated Networking. Defaults to false.

property enableIpForwarding

public enableIpForwarding: pulumi.Output<boolean | undefined>;

Enables IP Forwarding on the NIC. Defaults to false.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property internalDnsNameLabel

public internalDnsNameLabel: pulumi.Output<string>;

Relative DNS name for this NIC used for internal communications between VMs in the same VNet

property internalFqdn

public internalFqdn: pulumi.Output<string>;

property ipConfigurations

public ipConfigurations: pulumi.Output<{
    applicationGatewayBackendAddressPoolsIds: string[];
    applicationSecurityGroupIds: string[];
    loadBalancerBackendAddressPoolsIds: string[];
    loadBalancerInboundNatRulesIds: string[];
    name: string;
    primary: boolean;
    privateIpAddress: string;
    privateIpAddressAllocation: string;
    privateIpAddressVersion: string;
    publicIpAddressId: string;
    subnetId: string;
}[]>;

One or more ip_configuration associated with this NIC as documented below.

property location

public location: pulumi.Output<string>;

The location/region where the network interface is created. Changing this forces a new resource to be created.

property macAddress

public macAddress: pulumi.Output<string>;

The media access control (MAC) address of the network interface.

property name

public name: pulumi.Output<string>;

The name of the network interface. Changing this forces a new resource to be created.

property networkSecurityGroupId

public networkSecurityGroupId: pulumi.Output<string | undefined>;

The ID of the Network Security Group to associate with the network interface.

property privateIpAddress

public privateIpAddress: pulumi.Output<string>;

The first private IP address of the network interface.

property privateIpAddresses

public privateIpAddresses: pulumi.Output<string[]>;

The private IP addresses of the network interface.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the network interface. Changing this forces a new resource to be created.

property tags

public tags: pulumi.Output<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property virtualMachineId

public virtualMachineId: pulumi.Output<string>;

Reference to a VM with which this NIC has been associated.

class NetworkInterfaceApplicationGatewayBackendAddressPoolAssociation

extends CustomResource

Manages the association between a Network Interface and a Application Gateway’s Backend Address Pool.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West Europe",
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.0.0.0/16"],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const backendAddressPoolName = testVirtualNetwork.name.apply(name => `${name}-beap`);
const frontendIpConfigurationName = testVirtualNetwork.name.apply(name => `${name}-feip`);
const frontendPortName = testVirtualNetwork.name.apply(name => `${name}-feport`);
const httpSettingName = testVirtualNetwork.name.apply(name => `${name}-be-htst`);
const listenerName = testVirtualNetwork.name.apply(name => `${name}-httplstn`);
const requestRoutingRuleName = testVirtualNetwork.name.apply(name => `${name}-rqrt`);
const testPublicIp = new azure.network.PublicIp("test", {
    allocationMethod: "Dynamic",
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const frontend = new azure.network.Subnet("frontend", {
    addressPrefix: "10.254.0.0/24",
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
});
const network = new azure.network.ApplicationGateway("network", {
    backendAddressPools: [{
        name: backendAddressPoolName,
    }],
    backendHttpSettings: [{
        cookieBasedAffinity: "Disabled",
        name: httpSettingName,
        port: 80,
        protocol: "Http",
        requestTimeout: 1,
    }],
    frontendIpConfigurations: [{
        name: frontendIpConfigurationName,
        publicIpAddressId: testPublicIp.id,
    }],
    frontendPorts: [{
        name: frontendPortName,
        port: 80,
    }],
    gatewayIpConfigurations: [{
        name: "my-gateway-ip-configuration",
        subnetId: frontend.id,
    }],
    httpListeners: [{
        frontendIpConfigurationName: frontendIpConfigurationName,
        frontendPortName: frontendPortName,
        name: listenerName,
        protocol: "Http",
    }],
    location: testResourceGroup.location,
    requestRoutingRules: [{
        backendAddressPoolName: backendAddressPoolName,
        backendHttpSettingsName: httpSettingName,
        httpListenerName: listenerName,
        name: requestRoutingRuleName,
        ruleType: "Basic",
    }],
    resourceGroupName: testResourceGroup.name,
    sku: {
        capacity: 2,
        name: "Standard_Small",
        tier: "Standard",
    },
});
const testNetworkInterface = new azure.network.NetworkInterface("test", {
    ipConfigurations: [{
        name: "testconfiguration1",
        privateIpAddressAllocation: "Dynamic",
        subnetId: frontend.id,
    }],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testNetworkInterfaceApplicationGatewayBackendAddressPoolAssociation = new azure.network.NetworkInterfaceApplicationGatewayBackendAddressPoolAssociation("test", {
    backendAddressPoolId: azurerm_application_gateway_test.backendAddressPool.apply(backendAddressPool => backendAddressPool.0.id),
    ipConfigurationName: "testconfiguration1",
    networkInterfaceId: testNetworkInterface.id,
});
const backend = new azure.network.Subnet("backend", {
    addressPrefix: "10.254.2.0/24",
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
});

constructor

new NetworkInterfaceApplicationGatewayBackendAddressPoolAssociation(name: string, args: NetworkInterfaceApplicationGatewayBackendAddressPoolAssociationArgs, opts?: pulumi.CustomResourceOptions)

Create a NetworkInterfaceApplicationGatewayBackendAddressPoolAssociation resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkInterfaceApplicationGatewayBackendAddressPoolAssociationState, opts?: pulumi.CustomResourceOptions): NetworkInterfaceApplicationGatewayBackendAddressPoolAssociation

Get an existing NetworkInterfaceApplicationGatewayBackendAddressPoolAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property backendAddressPoolId

public backendAddressPoolId: pulumi.Output<string>;

The ID of the Application Gateway’s Backend Address Pool which this Network Interface which should be connected to. Changing this forces a new resource to be created.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipConfigurationName

public ipConfigurationName: pulumi.Output<string>;

The Name of the IP Configuration within the Network Interface which should be connected to the Backend Address Pool. Changing this forces a new resource to be created.

property networkInterfaceId

public networkInterfaceId: pulumi.Output<string>;

The ID of the Network Interface. Changing this forces a new resource to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class NetworkInterfaceApplicationSecurityGroupAssociation

extends CustomResource

Manages the association between a Network Interface and a Application Security Group.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West Europe",
});
const testApplicationSecurityGroup = new azure.network.ApplicationSecurityGroup("test", {
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.0.0.0/16"],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testSubnet = new azure.network.Subnet("test", {
    addressPrefix: "10.0.1.0/24",
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
});
const testNetworkInterface = new azure.network.NetworkInterface("test", {
    ipConfigurations: [{
        applicationSecurityGroupIds: [testApplicationSecurityGroup.id],
        name: "testconfiguration1",
        privateIpAddressAllocation: "Dynamic",
        subnetId: testSubnet.id,
    }],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testNetworkInterfaceApplicationSecurityGroupAssociation = new azure.network.NetworkInterfaceApplicationSecurityGroupAssociation("test", {
    applicationSecurityGroupId: testApplicationSecurityGroup.id,
    ipConfigurationName: "testconfiguration1",
    networkInterfaceId: testNetworkInterface.id,
});

constructor

new NetworkInterfaceApplicationSecurityGroupAssociation(name: string, args: NetworkInterfaceApplicationSecurityGroupAssociationArgs, opts?: pulumi.CustomResourceOptions)

Create a NetworkInterfaceApplicationSecurityGroupAssociation resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkInterfaceApplicationSecurityGroupAssociationState, opts?: pulumi.CustomResourceOptions): NetworkInterfaceApplicationSecurityGroupAssociation

Get an existing NetworkInterfaceApplicationSecurityGroupAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property applicationSecurityGroupId

public applicationSecurityGroupId: pulumi.Output<string>;

The ID of the Application Security Group which this Network Interface which should be connected to. Changing this forces a new resource to be created.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipConfigurationName

public ipConfigurationName: pulumi.Output<string>;

The Name of the IP Configuration within the Network Interface which should be connected to the Application Security Group. Changing this forces a new resource to be created.

property networkInterfaceId

public networkInterfaceId: pulumi.Output<string>;

The ID of the Network Interface. Changing this forces a new resource to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class NetworkInterfaceBackendAddressPoolAssociation

extends CustomResource

Manages the association between a Network Interface and a Load Balancer’s Backend Address Pool.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West Europe",
});
const testPublicIp = new azure.network.PublicIp("test", {
    allocationMethod: "Static",
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testLoadBalancer = new azure.lb.LoadBalancer("test", {
    frontendIpConfigurations: [{
        name: "primary",
        publicIpAddressId: testPublicIp.id,
    }],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testBackendAddressPool = new azure.lb.BackendAddressPool("test", {
    loadbalancerId: testLoadBalancer.id,
    resourceGroupName: testResourceGroup.name,
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.0.0.0/16"],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testSubnet = new azure.network.Subnet("test", {
    addressPrefix: "10.0.2.0/24",
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
});
const testNetworkInterface = new azure.network.NetworkInterface("test", {
    ipConfigurations: [{
        name: "testconfiguration1",
        privateIpAddressAllocation: "Dynamic",
        subnetId: testSubnet.id,
    }],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testNetworkInterfaceBackendAddressPoolAssociation = new azure.network.NetworkInterfaceBackendAddressPoolAssociation("test", {
    backendAddressPoolId: testBackendAddressPool.id,
    ipConfigurationName: "testconfiguration1",
    networkInterfaceId: testNetworkInterface.id,
});

constructor

new NetworkInterfaceBackendAddressPoolAssociation(name: string, args: NetworkInterfaceBackendAddressPoolAssociationArgs, opts?: pulumi.CustomResourceOptions)

Create a NetworkInterfaceBackendAddressPoolAssociation resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkInterfaceBackendAddressPoolAssociationState, opts?: pulumi.CustomResourceOptions): NetworkInterfaceBackendAddressPoolAssociation

Get an existing NetworkInterfaceBackendAddressPoolAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property backendAddressPoolId

public backendAddressPoolId: pulumi.Output<string>;

The ID of the Load Balancer Backend Address Pool which this Network Interface which should be connected to. Changing this forces a new resource to be created.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipConfigurationName

public ipConfigurationName: pulumi.Output<string>;

The Name of the IP Configuration within the Network Interface which should be connected to the Backend Address Pool. Changing this forces a new resource to be created.

property networkInterfaceId

public networkInterfaceId: pulumi.Output<string>;

The ID of the Network Interface. Changing this forces a new resource to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class NetworkInterfaceNatRuleAssociation

extends CustomResource

Manages the association between a Network Interface and a Load Balancer’s NAT Rule.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West Europe",
});
const testPublicIp = new azure.network.PublicIp("test", {
    allocationMethod: "Static",
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testLoadBalancer = new azure.lb.LoadBalancer("test", {
    frontendIpConfigurations: [{
        name: "primary",
        publicIpAddressId: testPublicIp.id,
    }],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testNatRule = new azure.lb.NatRule("test", {
    backendPort: 3389,
    frontendIpConfigurationName: "primary",
    frontendPort: 3389,
    loadbalancerId: testLoadBalancer.id,
    protocol: "Tcp",
    resourceGroupName: testResourceGroup.name,
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.0.0.0/16"],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testSubnet = new azure.network.Subnet("test", {
    addressPrefix: "10.0.2.0/24",
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
});
const testNetworkInterface = new azure.network.NetworkInterface("test", {
    ipConfigurations: [{
        name: "testconfiguration1",
        privateIpAddressAllocation: "Dynamic",
        subnetId: testSubnet.id,
    }],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testNetworkInterfaceNatRuleAssociation = new azure.network.NetworkInterfaceNatRuleAssociation("test", {
    ipConfigurationName: "testconfiguration1",
    natRuleId: testNatRule.id,
    networkInterfaceId: testNetworkInterface.id,
});

constructor

new NetworkInterfaceNatRuleAssociation(name: string, args: NetworkInterfaceNatRuleAssociationArgs, opts?: pulumi.CustomResourceOptions)

Create a NetworkInterfaceNatRuleAssociation resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkInterfaceNatRuleAssociationState, opts?: pulumi.CustomResourceOptions): NetworkInterfaceNatRuleAssociation

Get an existing NetworkInterfaceNatRuleAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipConfigurationName

public ipConfigurationName: pulumi.Output<string>;

The Name of the IP Configuration within the Network Interface which should be connected to the NAT Rule. Changing this forces a new resource to be created.

property natRuleId

public natRuleId: pulumi.Output<string>;

The ID of the Load Balancer NAT Rule which this Network Interface which should be connected to. Changing this forces a new resource to be created.

property networkInterfaceId

public networkInterfaceId: pulumi.Output<string>;

The ID of the Network Interface. Changing this forces a new resource to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class NetworkSecurityGroup

extends CustomResource

Manages a network security group that contains a list of network security rules. Network security groups enable inbound or outbound traffic to be enabled or denied.

NOTE on Network Security Groups and Network Security Rules: Terraform currently provides both a standalone Network Security Rule resource, and allows for Network Security Rules to be defined in-line within the Network Security Group resource. At this time you cannot use a Network Security Group with in-line Network Security Rules in conjunction with any Network Security Rule resources. Doing so will cause a conflict of rule settings and will overwrite rules.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US",
});
const testNetworkSecurityGroup = new azure.network.NetworkSecurityGroup("test", {
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
    securityRules: [{
        access: "Allow",
        destinationAddressPrefix: "*",
        destinationPortRange: "*",
        direction: "Inbound",
        name: "test123",
        priority: 100,
        protocol: "Tcp",
        sourceAddressPrefix: "*",
        sourcePortRange: "*",
    }],
    tags: {
        environment: "Production",
    },
});

constructor

new NetworkSecurityGroup(name: string, args: NetworkSecurityGroupArgs, opts?: pulumi.CustomResourceOptions)

Create a NetworkSecurityGroup resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkSecurityGroupState, opts?: pulumi.CustomResourceOptions): NetworkSecurityGroup

Get an existing NetworkSecurityGroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property location

public location: pulumi.Output<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

public name: pulumi.Output<string>;

Specifies the name of the network security group. Changing this forces a new resource to be created.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the network security group. Changing this forces a new resource to be created.

property securityRules

public securityRules: pulumi.Output<{
    access: string;
    description: string;
    destinationAddressPrefix: string;
    destinationAddressPrefixes: string[];
    destinationApplicationSecurityGroupIds: string[];
    destinationPortRange: string;
    destinationPortRanges: string[];
    direction: string;
    name: string;
    priority: number;
    protocol: string;
    sourceAddressPrefix: string;
    sourceAddressPrefixes: string[];
    sourceApplicationSecurityGroupIds: string[];
    sourcePortRange: string;
    sourcePortRanges: string[];
}[]>;

One or more security_rule blocks as defined below.

property tags

public tags: pulumi.Output<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class NetworkSecurityRule

extends CustomResource

Manages a Network Security Rule.

NOTE on Network Security Groups and Network Security Rules: Terraform currently provides both a standalone Network Security Rule resource, and allows for Network Security Rules to be defined in-line within the Network Security Group resource. At this time you cannot use a Network Security Group with in-line Network Security Rules in conjunction with any Network Security Rule resources. Doing so will cause a conflict of rule settings and will overwrite rules.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US",
});
const testNetworkSecurityGroup = new azure.network.NetworkSecurityGroup("test", {
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testNetworkSecurityRule = new azure.network.NetworkSecurityRule("test", {
    access: "Allow",
    destinationAddressPrefix: "*",
    destinationPortRange: "*",
    direction: "Outbound",
    networkSecurityGroupName: testNetworkSecurityGroup.name,
    priority: 100,
    protocol: "Tcp",
    resourceGroupName: testResourceGroup.name,
    sourceAddressPrefix: "*",
    sourcePortRange: "*",
});

constructor

new NetworkSecurityRule(name: string, args: NetworkSecurityRuleArgs, opts?: pulumi.CustomResourceOptions)

Create a NetworkSecurityRule resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkSecurityRuleState, opts?: pulumi.CustomResourceOptions): NetworkSecurityRule

Get an existing NetworkSecurityRule resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property access

public access: pulumi.Output<string>;

Specifies whether network traffic is allowed or denied. Possible values are Allow and Deny.

property description

public description: pulumi.Output<string | undefined>;

A description for this rule. Restricted to 140 characters.

property destinationAddressPrefix

public destinationAddressPrefix: pulumi.Output<string | undefined>;

CIDR or destination IP range or * to match any IP. Tags such as ‘VirtualNetwork’, ‘AzureLoadBalancer’ and ‘Internet’ can also be used. This is required if destination_address_prefixes is not specified.

property destinationAddressPrefixes

public destinationAddressPrefixes: pulumi.Output<string[] | undefined>;

List of destination address prefixes. Tags may not be used. This is required if destination_address_prefix is not specified.

property destinationApplicationSecurityGroupIds

public destinationApplicationSecurityGroupIds: pulumi.Output<string | undefined>;

A List of destination Application Security Group ID’s

property destinationPortRange

public destinationPortRange: pulumi.Output<string | undefined>;

Destination Port or Range. Integer or range between 0 and 65535 or * to match any. This is required if destination_port_ranges is not specified.

property destinationPortRanges

public destinationPortRanges: pulumi.Output<string[] | undefined>;

List of destination ports or port ranges. This is required if destination_port_range is not specified.

property direction

public direction: pulumi.Output<string>;

The direction specifies if rule will be evaluated on incoming or outgoing traffic. Possible values are Inbound and Outbound.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

The name of the security rule. This needs to be unique across all Rules in the Network Security Group. Changing this forces a new resource to be created.

property networkSecurityGroupName

public networkSecurityGroupName: pulumi.Output<string>;

The name of the Network Security Group that we want to attach the rule to. Changing this forces a new resource to be created.

property priority

public priority: pulumi.Output<number>;

Specifies the priority of the rule. The value can be between 100 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule.

property protocol

public protocol: pulumi.Output<string>;

Network protocol this rule applies to. Possible values include Tcp, Udp or * (which matches both).

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the Network Security Rule. Changing this forces a new resource to be created.

property sourceAddressPrefix

public sourceAddressPrefix: pulumi.Output<string | undefined>;

CIDR or source IP range or * to match any IP. Tags such as ‘VirtualNetwork’, ‘AzureLoadBalancer’ and ‘Internet’ can also be used. This is required if source_address_prefixes is not specified.

property sourceAddressPrefixes

public sourceAddressPrefixes: pulumi.Output<string[] | undefined>;

List of source address prefixes. Tags may not be used. This is required if source_address_prefix is not specified.

property sourceApplicationSecurityGroupIds

public sourceApplicationSecurityGroupIds: pulumi.Output<string | undefined>;

A List of source Application Security Group ID’s

property sourcePortRange

public sourcePortRange: pulumi.Output<string | undefined>;

Source Port or Range. Integer or range between 0 and 65535 or * to match any. This is required if source_port_ranges is not specified.

property sourcePortRanges

public sourcePortRanges: pulumi.Output<string[] | undefined>;

List of source ports or port ranges. This is required if source_port_range is not specified.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class NetworkWatcher

extends CustomResource

Manages a Network Watcher.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US",
});
const testNetworkWatcher = new azure.network.NetworkWatcher("test", {
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});

constructor

new NetworkWatcher(name: string, args: NetworkWatcherArgs, opts?: pulumi.CustomResourceOptions)

Create a NetworkWatcher resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkWatcherState, opts?: pulumi.CustomResourceOptions): NetworkWatcher

Get an existing NetworkWatcher resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property location

public location: pulumi.Output<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

public name: pulumi.Output<string>;

The name of the Network Watcher. Changing this forces a new resource to be created.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the Network Watcher. Changing this forces a new resource to be created.

property tags

public tags: pulumi.Output<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class PacketCapture

extends CustomResource

Configures Packet Capturing against a Virtual Machine using a Network Watcher.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West Europe",
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.0.0.0/16"],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testSubnet = new azure.network.Subnet("test", {
    addressPrefix: "10.0.2.0/24",
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
});
const testNetworkInterface = new azure.network.NetworkInterface("test", {
    ipConfigurations: [{
        name: "testconfiguration1",
        privateIpAddressAllocation: "Dynamic",
        subnetId: testSubnet.id,
    }],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testNetworkWatcher = new azure.network.NetworkWatcher("test", {
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testAccount = new azure.storage.Account("test", {
    accountReplicationType: "LRS",
    accountTier: "Standard",
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testVirtualMachine = new azure.compute.VirtualMachine("test", {
    location: testResourceGroup.location,
    networkInterfaceIds: [testNetworkInterface.id],
    osProfile: {
        adminPassword: "Password1234!",
        adminUsername: "testadmin",
        computerName: "pctest-vm",
    },
    osProfileLinuxConfig: {
        disablePasswordAuthentication: false,
    },
    resourceGroupName: testResourceGroup.name,
    storageImageReference: {
        offer: "UbuntuServer",
        publisher: "Canonical",
        sku: "16.04-LTS",
        version: "latest",
    },
    storageOsDisk: {
        caching: "ReadWrite",
        createOption: "FromImage",
        managedDiskType: "Standard_LRS",
        name: "osdisk",
    },
    vmSize: "Standard_F2",
});
const testExtension = new azure.compute.Extension("test", {
    autoUpgradeMinorVersion: true,
    location: testResourceGroup.location,
    publisher: "Microsoft.Azure.NetworkWatcher",
    resourceGroupName: testResourceGroup.name,
    type: "NetworkWatcherAgentLinux",
    typeHandlerVersion: "1.4",
    virtualMachineName: testVirtualMachine.name,
});
const testPacketCapture = new azure.network.PacketCapture("test", {
    networkWatcherName: testNetworkWatcher.name,
    resourceGroupName: testResourceGroup.name,
    storageLocation: {
        storageAccountId: testAccount.id,
    },
    targetResourceId: testVirtualMachine.id,
}, {dependsOn: [testExtension]});

NOTE: This Resource requires that the Network Watcher Virtual Machine Extension is installed on the Virtual Machine before capturing can be enabled which can be installed via the azurerm_virtual_machine_extension resource.

constructor

new PacketCapture(name: string, args: PacketCaptureArgs, opts?: pulumi.CustomResourceOptions)

Create a PacketCapture resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: PacketCaptureState, opts?: pulumi.CustomResourceOptions): PacketCapture

Get an existing PacketCapture resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property filters

public filters: pulumi.Output<{
    localIpAddress: string;
    localPort: string;
    protocol: string;
    remoteIpAddress: string;
    remotePort: string;
}[] | undefined>;

One or more filter blocks as defined below. Changing this forces a new resource to be created.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property maximumBytesPerPacket

public maximumBytesPerPacket: pulumi.Output<number | undefined>;

The number of bytes captured per packet. The remaining bytes are truncated. Defaults to 0 (Entire Packet Captured). Changing this forces a new resource to be created.

property maximumBytesPerSession

public maximumBytesPerSession: pulumi.Output<number | undefined>;

Maximum size of the capture in Bytes. Defaults to 1073741824 (1GB). Changing this forces a new resource to be created.

property maximumCaptureDuration

public maximumCaptureDuration: pulumi.Output<number | undefined>;

The maximum duration of the capture session in seconds. Defaults to 18000 (5 hours). Changing this forces a new resource to be created.

property name

public name: pulumi.Output<string>;

The name to use for this Packet Capture. Changing this forces a new resource to be created.

property networkWatcherName

public networkWatcherName: pulumi.Output<string>;

The name of the Network Watcher. Changing this forces a new resource to be created.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which the Network Watcher exists. Changing this forces a new resource to be created.

property storageLocation

public storageLocation: pulumi.Output<{
    filePath: string;
    storageAccountId: string;
    storagePath: string;
}>;

A storage_location block as defined below. Changing this forces a new resource to be created.

property targetResourceId

public targetResourceId: pulumi.Output<string>;

The ID of the Resource to capture packets from. Changing this forces a new resource to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class PublicIp

extends CustomResource

Manage a Public IP Address.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US",
});
const testPublicIp = new azure.network.PublicIp("test", {
    allocationMethod: "Static",
    location: "West US",
    resourceGroupName: testResourceGroup.name,
    tags: {
        environment: "Production",
    },
});

constructor

new PublicIp(name: string, args: PublicIpArgs, opts?: pulumi.CustomResourceOptions)

Create a PublicIp resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: PublicIpState, opts?: pulumi.CustomResourceOptions): PublicIp

Get an existing PublicIp resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property allocationMethod

public allocationMethod: pulumi.Output<string>;

Defines the allocation method for this IP address. Possible values are Static or Dynamic.

property domainNameLabel

public domainNameLabel: pulumi.Output<string | undefined>;

Label for the Domain Name. Will be used to make up the FQDN. If a domain name label is specified, an A DNS record is created for the public IP in the Microsoft Azure DNS system.

property fqdn

public fqdn: pulumi.Output<string>;

Fully qualified domain name of the A DNS record associated with the public IP. This is the concatenation of the domainNameLabel and the regionalized DNS zone

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property idleTimeoutInMinutes

public idleTimeoutInMinutes: pulumi.Output<number | undefined>;

Specifies the timeout for the TCP idle connection. The value can be set between 4 and 30 minutes.

property ipAddress

public ipAddress: pulumi.Output<string>;

The IP address value that was allocated.

property ipVersion

public ipVersion: pulumi.Output<string | undefined>;

The IP Version to use, IPv6 or IPv4.

property location

public location: pulumi.Output<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

public name: pulumi.Output<string>;

Specifies the name of the Public IP resource . Changing this forces a new resource to be created.

property publicIpAddressAllocation

public publicIpAddressAllocation: pulumi.Output<string>;

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the public ip.

property reverseFqdn

public reverseFqdn: pulumi.Output<string | undefined>;

A fully qualified domain name that resolves to this public IP address. If the reverseFqdn is specified, then a PTR DNS record is created pointing from the IP address in the in-addr.arpa domain to the reverse FQDN.

property sku

public sku: pulumi.Output<string | undefined>;

The SKU of the Public IP. Accepted values are Basic and Standard. Defaults to Basic.

property tags

public tags: pulumi.Output<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zones

public zones: pulumi.Output<string | undefined>;

A collection containing the availability zone to allocate the Public IP in.

class Route

extends CustomResource

Manages a Route within a Route Table.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US",
});
const testRouteTable = new azure.network.RouteTable("test", {
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testRoute = new azure.network.Route("test", {
    addressPrefix: "10.1.0.0/16",
    nextHopType: "vnetlocal",
    resourceGroupName: testResourceGroup.name,
    routeTableName: testRouteTable.name,
});

constructor

new Route(name: string, args: RouteArgs, opts?: pulumi.CustomResourceOptions)

Create a Route resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RouteState, opts?: pulumi.CustomResourceOptions): Route

Get an existing Route resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property addressPrefix

public addressPrefix: pulumi.Output<string>;

The destination CIDR to which the route applies, such as 10.1.0.0/16

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

The name of the route. Changing this forces a new resource to be created.

property nextHopInIpAddress

public nextHopInIpAddress: pulumi.Output<string | undefined>;

Contains the IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance.

property nextHopType

public nextHopType: pulumi.Output<string>;

The type of Azure hop the packet should be sent to. Possible values are VirtualNetworkGateway, VnetLocal, Internet, VirtualAppliance and None

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the route. Changing this forces a new resource to be created.

property routeTableName

public routeTableName: pulumi.Output<string>;

The name of the route table within which create the route. Changing this forces a new resource to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class RouteTable

extends CustomResource

Manages a Route Table

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US",
});
const testRouteTable = new azure.network.RouteTable("test", {
    disableBgpRoutePropagation: false,
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
    routes: [{
        addressPrefix: "10.1.0.0/16",
        name: "route1",
        nextHopType: "vnetlocal",
    }],
    tags: {
        environment: "Production",
    },
});

constructor

new RouteTable(name: string, args: RouteTableArgs, opts?: pulumi.CustomResourceOptions)

Create a RouteTable resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RouteTableState, opts?: pulumi.CustomResourceOptions): RouteTable

Get an existing RouteTable resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property disableBgpRoutePropagation

public disableBgpRoutePropagation: pulumi.Output<boolean | undefined>;

Boolean flag which controls propagation of routes learned by BGP on that route table. True means disable.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property location

public location: pulumi.Output<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

public name: pulumi.Output<string>;

The name of the route table. Changing this forces a new resource to be created.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the route table. Changing this forces a new resource to be created.

property routes

public routes: pulumi.Output<{
    addressPrefix: string;
    name: string;
    nextHopInIpAddress: string;
    nextHopType: string;
}[]>;

Can be specified multiple times to define multiple routes. Each route block supports fields documented below.

property subnets

public subnets: pulumi.Output<string[]>;

The collection of Subnets associated with this route table.

property tags

public tags: pulumi.Output<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class Subnet

extends CustomResource

Manages a subnet. Subnets represent network segments within the IP space defined by the virtual network.

NOTE on Virtual Networks and Subnet’s: Terraform currently provides both a standalone Subnet resource, and allows for Subnets to be defined in-line within the Virtual Network resource. At this time you cannot use a Virtual Network with in-line Subnets in conjunction with any Subnet resources. Doing so will cause a conflict of Subnet configurations and will overwrite Subnet’s.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US",
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.0.0.0/16"],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testSubnet = new azure.network.Subnet("test", {
    addressPrefix: "10.0.1.0/24",
    delegations: [{
        name: "acctestdelegation",
        serviceDelegation: {
            actions: ["Microsoft.Network/virtualNetworks/subnets/action"],
            name: "Microsoft.ContainerInstance/containerGroups",
        },
    }],
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
});

constructor

new Subnet(name: string, args: SubnetArgs, opts?: pulumi.CustomResourceOptions)

Create a Subnet resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SubnetState, opts?: pulumi.CustomResourceOptions): Subnet

Get an existing Subnet resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property addressPrefix

public addressPrefix: pulumi.Output<string>;

The address prefix to use for the subnet.

property delegations

public delegations: pulumi.Output<{
    name: string;
    serviceDelegation: {
        actions: string[];
        name: string;
    };
}[] | undefined>;

One or more delegation blocks as defined below.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipConfigurations

public ipConfigurations: pulumi.Output<string[]>;

The collection of IP Configurations with IPs within this subnet.

property name

public name: pulumi.Output<string>;

The name of the subnet. Changing this forces a new resource to be created.

property networkSecurityGroupId

public networkSecurityGroupId: pulumi.Output<string | undefined>;

The ID of the Network Security Group to associate with the subnet.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the subnet. Changing this forces a new resource to be created.

property routeTableId

public routeTableId: pulumi.Output<string | undefined>;

The ID of the Route Table to associate with the subnet.

property serviceEndpoints

public serviceEndpoints: pulumi.Output<string[] | undefined>;

The list of Service endpoints to associate with the subnet. Possible values include: Microsoft.AzureActiveDirectory, Microsoft.AzureCosmosDB, Microsoft.EventHub, Microsoft.KeyVault, Microsoft.ServiceBus, Microsoft.Sql and Microsoft.Storage.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property virtualNetworkName

public virtualNetworkName: pulumi.Output<string>;

The name of the virtual network to which to attach the subnet. Changing this forces a new resource to be created.

class SubnetNetworkSecurityGroupAssociation

extends CustomResource

Associates a Network Security Group with a Subnet within a Virtual Network.

NOTE: Subnet <-> Network Security Group associations currently need to be configured on both this resource and using the network_security_group_id field on the azurerm_subnet resource. The next major version of the AzureRM Provider (2.0) will remove the network_security_group_id field from the azurerm_subnet resource such that this resource is used to link resources in future.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West Europe",
});
const testNetworkSecurityGroup = new azure.network.NetworkSecurityGroup("test", {
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
    securityRules: [{
        access: "Allow",
        destinationAddressPrefix: "*",
        destinationPortRange: "*",
        direction: "Inbound",
        name: "test123",
        priority: 100,
        protocol: "Tcp",
        sourceAddressPrefix: "*",
        sourcePortRange: "*",
    }],
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.0.0.0/16"],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testSubnet = new azure.network.Subnet("test", {
    addressPrefix: "10.0.2.0/24",
    networkSecurityGroupId: testNetworkSecurityGroup.id,
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
});
const testSubnetNetworkSecurityGroupAssociation = new azure.network.SubnetNetworkSecurityGroupAssociation("test", {
    networkSecurityGroupId: testNetworkSecurityGroup.id,
    subnetId: testSubnet.id,
});

constructor

new SubnetNetworkSecurityGroupAssociation(name: string, args: SubnetNetworkSecurityGroupAssociationArgs, opts?: pulumi.CustomResourceOptions)

Create a SubnetNetworkSecurityGroupAssociation resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SubnetNetworkSecurityGroupAssociationState, opts?: pulumi.CustomResourceOptions): SubnetNetworkSecurityGroupAssociation

Get an existing SubnetNetworkSecurityGroupAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property networkSecurityGroupId

public networkSecurityGroupId: pulumi.Output<string>;

The ID of the Network Security Group which should be associated with the Subnet. Changing this forces a new resource to be created.

property subnetId

public subnetId: pulumi.Output<string>;

The ID of the Subnet. Changing this forces a new resource to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class SubnetRouteTableAssociation

extends CustomResource

Associates a Route Table with a Subnet within a Virtual Network.

NOTE: Subnet <-> Route Table associations currently need to be configured on both this resource and using the route_table_id field on the azurerm_subnet resource. The next major version of the AzureRM Provider (2.0) will remove the route_table_id field from the azurerm_subnet resource such that this resource is used to link resources in future.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West Europe",
});
const testRouteTable = new azure.network.RouteTable("test", {
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
    routes: [{
        addressPrefix: "10.100.0.0/14",
        name: "example",
        nextHopInIpAddress: "10.10.1.1",
        nextHopType: "VirtualAppliance",
    }],
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.0.0.0/16"],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testSubnet = new azure.network.Subnet("test", {
    addressPrefix: "10.0.2.0/24",
    resourceGroupName: testResourceGroup.name,
    routeTableId: testRouteTable.id,
    virtualNetworkName: testVirtualNetwork.name,
});
const testSubnetRouteTableAssociation = new azure.network.SubnetRouteTableAssociation("test", {
    routeTableId: testRouteTable.id,
    subnetId: testSubnet.id,
});

constructor

new SubnetRouteTableAssociation(name: string, args: SubnetRouteTableAssociationArgs, opts?: pulumi.CustomResourceOptions)

Create a SubnetRouteTableAssociation resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SubnetRouteTableAssociationState, opts?: pulumi.CustomResourceOptions): SubnetRouteTableAssociation

Get an existing SubnetRouteTableAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property routeTableId

public routeTableId: pulumi.Output<string>;

The ID of the Route Table which should be associated with the Subnet. Changing this forces a new resource to be created.

property subnetId

public subnetId: pulumi.Output<string>;

The ID of the Subnet. Changing this forces a new resource to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class VirtualNetwork

extends CustomResource

Manages a virtual network including any configured subnets. Each subnet can optionally be configured with a security group to be associated with the subnet.

NOTE on Virtual Networks and Subnet’s: Terraform currently provides both a standalone Subnet resource, and allows for Subnets to be defined in-line within the Virtual Network resource. At this time you cannot use a Virtual Network with in-line Subnets in conjunction with any Subnet resources. Doing so will cause a conflict of Subnet configurations and will overwrite Subnet’s.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US",
});
const testPlan = new azure.ddosprotection.Plan("test", {
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testNetworkSecurityGroup = new azure.network.NetworkSecurityGroup("test", {
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.0.0.0/16"],
    ddosProtectionPlan: {
        enable: true,
        id: testPlan.id,
    },
    dnsServers: [
        "10.0.0.4",
        "10.0.0.5",
    ],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
    subnets: [
        {
            addressPrefix: "10.0.1.0/24",
            name: "subnet1",
        },
        {
            addressPrefix: "10.0.2.0/24",
            name: "subnet2",
        },
        {
            addressPrefix: "10.0.3.0/24",
            name: "subnet3",
            securityGroup: testNetworkSecurityGroup.id,
        },
    ],
    tags: {
        environment: "Production",
    },
});

constructor

new VirtualNetwork(name: string, args: VirtualNetworkArgs, opts?: pulumi.CustomResourceOptions)

Create a VirtualNetwork resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VirtualNetworkState, opts?: pulumi.CustomResourceOptions): VirtualNetwork

Get an existing VirtualNetwork resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property addressSpaces

public addressSpaces: pulumi.Output<string[]>;

The address space that is used the virtual network. You can supply more than one address space. Changing this forces a new resource to be created.

property ddosProtectionPlan

public ddosProtectionPlan: pulumi.Output<{
    enable: boolean;
    id: string;
} | undefined>;

A ddos_protection_plan block as documented below.

property dnsServers

public dnsServers: pulumi.Output<string[] | undefined>;

List of IP addresses of DNS servers

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property location

public location: pulumi.Output<string>;

The location/region where the virtual network is created. Changing this forces a new resource to be created.

property name

public name: pulumi.Output<string>;

The name of the virtual network. Changing this forces a new resource to be created.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the virtual network.

property subnets

public subnets: pulumi.Output<{
    addressPrefix: string;
    id: string;
    name: string;
    securityGroup: string;
}[]>;

Can be specified multiple times to define multiple subnets. Each subnet block supports fields documented below.

property tags

public tags: pulumi.Output<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

class VirtualNetworkGateway

extends CustomResource

Manages a Virtual Network Gateway to establish secure, cross-premises connectivity.

Note: Please be aware that provisioning a Virtual Network Gateway takes a long time (between 30 minutes and 1 hour)

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US",
});
const testPublicIp = new azure.network.PublicIp("test", {
    allocationMethod: "Dynamic",
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.0.0.0/16"],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testSubnet = new azure.network.Subnet("test", {
    addressPrefix: "10.0.1.0/24",
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
});
const testVirtualNetworkGateway = new azure.network.VirtualNetworkGateway("test", {
    activeActive: false,
    enableBgp: false,
    ipConfigurations: [{
        name: "vnetGatewayConfig",
        privateIpAddressAllocation: "Dynamic",
        publicIpAddressId: testPublicIp.id,
        subnetId: testSubnet.id,
    }],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
    sku: "Basic",
    type: "Vpn",
    vpnClientConfiguration: {
        addressSpaces: ["10.2.0.0/24"],
        revokedCertificates: [{
            name: "Verizon-Global-Root-CA",
            thumbprint: "912198EEF23DCAC40939312FEE97DD560BAE49B1",
        }],
        rootCertificates: [{
            name: "DigiCert-Federated-ID-Root-CA",
            publicCertData: `MIIDuzCCAqOgAwIBAgIQCHTZWCM+IlfFIRXIvyKSrjANBgkqhkiG9w0BAQsFADBn
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
d3cuZGlnaWNlcnQuY29tMSYwJAYDVQQDEx1EaWdpQ2VydCBGZWRlcmF0ZWQgSUQg
Um9vdCBDQTAeFw0xMzAxMTUxMjAwMDBaFw0zMzAxMTUxMjAwMDBaMGcxCzAJBgNV
BAYTAlVTMRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdp
Y2VydC5jb20xJjAkBgNVBAMTHURpZ2lDZXJ0IEZlZGVyYXRlZCBJRCBSb290IENB
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvAEB4pcCqnNNOWE6Ur5j
QPUH+1y1F9KdHTRSza6k5iDlXq1kGS1qAkuKtw9JsiNRrjltmFnzMZRBbX8Tlfl8
zAhBmb6dDduDGED01kBsTkgywYPxXVTKec0WxYEEF0oMn4wSYNl0lt2eJAKHXjNf
GTwiibdP8CUR2ghSM2sUTI8Nt1Omfc4SMHhGhYD64uJMbX98THQ/4LMGuYegou+d
GTiahfHtjn7AboSEknwAMJHCh5RlYZZ6B1O4QbKJ+34Q0eKgnI3X6Vc9u0zf6DH8
Dk+4zQDYRRTqTnVO3VT8jzqDlCRuNtq6YvryOWN74/dq8LQhUnXHvFyrsdMaE1X2
DwIDAQABo2MwYTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAdBgNV
HQ4EFgQUGRdkFnbGt1EWjKwbUne+5OaZvRYwHwYDVR0jBBgwFoAUGRdkFnbGt1EW
jKwbUne+5OaZvRYwDQYJKoZIhvcNAQELBQADggEBAHcqsHkrjpESqfuVTRiptJfP
9JbdtWqRTmOf6uJi2c8YVqI6XlKXsD8C1dUUaaHKLUJzvKiazibVuBwMIT84AyqR
QELn3e0BtgEymEygMU569b01ZPxoFSnNXc7qDZBDef8WfqAV/sxkTi8L9BkmFYfL
uGLOhRJOFprPdoDIUBB+tmCl3oDcBy3vnUeOEioz8zAkprcb3GHwHAK+vHmmfgcn
WsfMLH4JCLa/tRYL+Rw/N3ybCkDp00s0WUZ+AoDywSl0Q/ZEnNY0MsFiw6LyIdbq
M/s/1JRtO3bDSzD9TazRVzn2oBqzSa8VgIo5C1nOnoAKJTlsClJKvIhnRlaLQqk=
`,
        }],
    },
    vpnType: "RouteBased",
});

constructor

new VirtualNetworkGateway(name: string, args: VirtualNetworkGatewayArgs, opts?: pulumi.CustomResourceOptions)

Create a VirtualNetworkGateway resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VirtualNetworkGatewayState, opts?: pulumi.CustomResourceOptions): VirtualNetworkGateway

Get an existing VirtualNetworkGateway resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property activeActive

public activeActive: pulumi.Output<boolean>;

If true, an active-active Virtual Network Gateway will be created. An active-active gateway requires a HighPerformance or an UltraPerformance sku. If false, an active-standby gateway will be created. Defaults to false.

property bgpSettings

public bgpSettings: pulumi.Output<{
    asn: number;
    peerWeight: number;
    peeringAddress: string;
}>;

property defaultLocalNetworkGatewayId

public defaultLocalNetworkGatewayId: pulumi.Output<string | undefined>;

The ID of the local network gateway through which outbound Internet traffic from the virtual network in which the gateway is created will be routed (forced tunneling). Refer to the Azure documentation on forced tunneling. If not specified, forced tunneling is disabled.

property enableBgp

public enableBgp: pulumi.Output<boolean>;

If true, BGP (Border Gateway Protocol) will be enabled for this Virtual Network Gateway. Defaults to false.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipConfigurations

public ipConfigurations: pulumi.Output<{
    name: string;
    privateIpAddressAllocation: string;
    publicIpAddressId: string;
    subnetId: string;
}[]>;

One or two ip_configuration blocks documented below. An active-standby gateway requires exactly one ip_configuration block whereas an active-active gateway requires exactly two ip_configuration blocks.

property location

public location: pulumi.Output<string>;

The location/region where the Virtual Network Gateway is located. Changing the location/region forces a new resource to be created.

property name

public name: pulumi.Output<string>;

The name of the Virtual Network Gateway. Changing the name forces a new resource to be created.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the Virtual Network Gateway. Changing the resource group name forces a new resource to be created.

property sku

public sku: pulumi.Output<string>;

Configuration of the size and capacity of the virtual network gateway. Valid options are Basic, Standard, HighPerformance, UltraPerformance, ErGw1AZ, ErGw2AZ, ErGw3AZ, VpnGw1, VpnGw2 and VpnGw3 and depend on the type and vpn_type arguments. A PolicyBased gateway only supports the Basic sku. Further, the UltraPerformance sku is only supported by an ExpressRoute gateway.

property tags

public tags: pulumi.Output<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property type

public type: pulumi.Output<string>;

The type of the Virtual Network Gateway. Valid options are Vpn or ExpressRoute. Changing the type forces a new resource to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpnClientConfiguration

public vpnClientConfiguration: pulumi.Output<{
    addressSpaces: string[];
    radiusServerAddress: string;
    radiusServerSecret: string;
    revokedCertificates: {
        name: string;
        thumbprint: string;
    }[];
    rootCertificates: {
        name: string;
        publicCertData: string;
    }[];
    vpnClientProtocols: string[];
} | undefined>;

A vpn_client_configuration block which is documented below. In this block the Virtual Network Gateway can be configured to accept IPSec point-to-site connections.

property vpnType

public vpnType: pulumi.Output<string | undefined>;

The routing type of the Virtual Network Gateway. Valid options are RouteBased or PolicyBased. Defaults to RouteBased.

class VirtualNetworkGatewayConnection

extends CustomResource

Manages a connection in an existing Virtual Network Gateway.

Example Usage

Site-to-Site connection

The following example shows a connection between an Azure virtual network and an on-premises VPN device and network.

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US",
});
const onpremiseLocalNetworkGateway = new azure.network.LocalNetworkGateway("onpremise", {
    addressSpaces: ["10.1.1.0/24"],
    gatewayAddress: "168.62.225.23",
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testPublicIp = new azure.network.PublicIp("test", {
    allocationMethod: "Dynamic",
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.0.0.0/16"],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testSubnet = new azure.network.Subnet("test", {
    addressPrefix: "10.0.1.0/24",
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
});
const testVirtualNetworkGateway = new azure.network.VirtualNetworkGateway("test", {
    activeActive: false,
    enableBgp: false,
    ipConfigurations: [{
        privateIpAddressAllocation: "Dynamic",
        publicIpAddressId: testPublicIp.id,
        subnetId: testSubnet.id,
    }],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
    sku: "Basic",
    type: "Vpn",
    vpnType: "RouteBased",
});
const onpremiseVirtualNetworkGatewayConnection = new azure.network.VirtualNetworkGatewayConnection("onpremise", {
    localNetworkGatewayId: onpremiseLocalNetworkGateway.id,
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
    sharedKey: "4-v3ry-53cr37-1p53c-5h4r3d-k3y",
    type: "IPsec",
    virtualNetworkGatewayId: testVirtualNetworkGateway.id,
});

VNet-to-VNet connection

The following example shows a connection between two Azure virtual network in different locations/regions.

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const europeResourceGroup = new azure.core.ResourceGroup("europe", {
    location: "West Europe",
});
const usResourceGroup = new azure.core.ResourceGroup("us", {
    location: "East US",
});
const europePublicIp = new azure.network.PublicIp("europe", {
    allocationMethod: "Dynamic",
    location: europeResourceGroup.location,
    resourceGroupName: europeResourceGroup.name,
});
const usPublicIp = new azure.network.PublicIp("us", {
    allocationMethod: "Dynamic",
    location: usResourceGroup.location,
    resourceGroupName: usResourceGroup.name,
});
const europeVirtualNetwork = new azure.network.VirtualNetwork("europe", {
    addressSpaces: ["10.1.0.0/16"],
    location: europeResourceGroup.location,
    resourceGroupName: europeResourceGroup.name,
});
const europeGateway = new azure.network.Subnet("europe_gateway", {
    addressPrefix: "10.1.1.0/24",
    resourceGroupName: europeResourceGroup.name,
    virtualNetworkName: europeVirtualNetwork.name,
});
const usVirtualNetwork = new azure.network.VirtualNetwork("us", {
    addressSpaces: ["10.0.0.0/16"],
    location: usResourceGroup.location,
    resourceGroupName: usResourceGroup.name,
});
const usGateway = new azure.network.Subnet("us_gateway", {
    addressPrefix: "10.0.1.0/24",
    resourceGroupName: usResourceGroup.name,
    virtualNetworkName: usVirtualNetwork.name,
});
const europeVirtualNetworkGateway = new azure.network.VirtualNetworkGateway("europe", {
    ipConfigurations: [{
        privateIpAddressAllocation: "Dynamic",
        publicIpAddressId: europePublicIp.id,
        subnetId: europeGateway.id,
    }],
    location: europeResourceGroup.location,
    resourceGroupName: europeResourceGroup.name,
    sku: "Basic",
    type: "Vpn",
    vpnType: "RouteBased",
});
const usVirtualNetworkGateway = new azure.network.VirtualNetworkGateway("us", {
    ipConfigurations: [{
        privateIpAddressAllocation: "Dynamic",
        publicIpAddressId: usPublicIp.id,
        subnetId: usGateway.id,
    }],
    location: usResourceGroup.location,
    resourceGroupName: usResourceGroup.name,
    sku: "Basic",
    type: "Vpn",
    vpnType: "RouteBased",
});
const europeToUs = new azure.network.VirtualNetworkGatewayConnection("europe_to_us", {
    location: europeResourceGroup.location,
    peerVirtualNetworkGatewayId: usVirtualNetworkGateway.id,
    resourceGroupName: europeResourceGroup.name,
    sharedKey: "4-v3ry-53cr37-1p53c-5h4r3d-k3y",
    type: "Vnet2Vnet",
    virtualNetworkGatewayId: europeVirtualNetworkGateway.id,
});
const usToEurope = new azure.network.VirtualNetworkGatewayConnection("us_to_europe", {
    location: usResourceGroup.location,
    peerVirtualNetworkGatewayId: europeVirtualNetworkGateway.id,
    resourceGroupName: usResourceGroup.name,
    sharedKey: "4-v3ry-53cr37-1p53c-5h4r3d-k3y",
    type: "Vnet2Vnet",
    virtualNetworkGatewayId: usVirtualNetworkGateway.id,
});

constructor

new VirtualNetworkGatewayConnection(name: string, args: VirtualNetworkGatewayConnectionArgs, opts?: pulumi.CustomResourceOptions)

Create a VirtualNetworkGatewayConnection resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VirtualNetworkGatewayConnectionState, opts?: pulumi.CustomResourceOptions): VirtualNetworkGatewayConnection

Get an existing VirtualNetworkGatewayConnection resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property authorizationKey

public authorizationKey: pulumi.Output<string | undefined>;

The authorization key associated with the Express Route Circuit. This field is required only if the type is an ExpressRoute connection.

property enableBgp

public enableBgp: pulumi.Output<boolean>;

If true, BGP (Border Gateway Protocol) is enabled for this connection. Defaults to false.

property expressRouteCircuitId

public expressRouteCircuitId: pulumi.Output<string | undefined>;

The ID of the Express Route Circuit when creating an ExpressRoute connection (i.e. when type is ExpressRoute). The Express Route Circuit can be in the same or in a different subscription.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipsecPolicy

public ipsecPolicy: pulumi.Output<{
    dhGroup: string;
    ikeEncryption: string;
    ikeIntegrity: string;
    ipsecEncryption: string;
    ipsecIntegrity: string;
    pfsGroup: string;
    saDatasize: number;
    saLifetime: number;
} | undefined>;

A ipsec_policy block which is documented below. Only a single policy can be defined for a connection. For details on custom policies refer to the relevant section in the Azure documentation.

property localNetworkGatewayId

public localNetworkGatewayId: pulumi.Output<string | undefined>;

The ID of the local network gateway when creating Site-to-Site connection (i.e. when type is IPsec).

property location

public location: pulumi.Output<string>;

The location/region where the connection is located. Changing this forces a new resource to be created.

property name

public name: pulumi.Output<string>;

The name of the connection. Changing the name forces a new resource to be created.

property peerVirtualNetworkGatewayId

public peerVirtualNetworkGatewayId: pulumi.Output<string | undefined>;

The ID of the peer virtual network gateway when creating a VNet-to-VNet connection (i.e. when type is Vnet2Vnet). The peer Virtual Network Gateway can be in the same or in a different subscription.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the connection Changing the name forces a new resource to be created.

property routingWeight

public routingWeight: pulumi.Output<number>;

The routing weight. Defaults to 10.

property sharedKey

public sharedKey: pulumi.Output<string | undefined>;

The shared IPSec key. A key must be provided if a Site-to-Site or VNet-to-VNet connection is created whereas ExpressRoute connections do not need a shared key.

property tags

public tags: pulumi.Output<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property type

public type: pulumi.Output<string>;

The type of connection. Valid options are IPsec (Site-to-Site), ExpressRoute (ExpressRoute), and Vnet2Vnet (VNet-to-VNet). Each connection type requires different mandatory arguments (refer to the examples above). Changing the connection type will force a new connection to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property usePolicyBasedTrafficSelectors

public usePolicyBasedTrafficSelectors: pulumi.Output<boolean>;

If true, policy-based traffic selectors are enabled for this connection. Enabling policy-based traffic selectors requires an ipsec_policy block. Defaults to false.

property virtualNetworkGatewayId

public virtualNetworkGatewayId: pulumi.Output<string>;

The ID of the Virtual Network Gateway in which the connection will be created. Changing the gateway forces a new resource to be created.

class VirtualNetworkPeering

extends CustomResource

Manages a virtual network peering which allows resources to access other resources in the linked virtual network.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const test = new azure.core.ResourceGroup("test", {
    location: "West US",
});
const test1VirtualNetwork = new azure.network.VirtualNetwork("test1", {
    addressSpaces: ["10.0.1.0/24"],
    location: "West US",
    resourceGroupName: test.name,
});
const test2VirtualNetwork = new azure.network.VirtualNetwork("test2", {
    addressSpaces: ["10.0.2.0/24"],
    location: "West US",
    resourceGroupName: test.name,
});
const test1VirtualNetworkPeering = new azure.network.VirtualNetworkPeering("test1", {
    remoteVirtualNetworkId: test2VirtualNetwork.id,
    resourceGroupName: test.name,
    virtualNetworkName: test1VirtualNetwork.name,
});
const test2VirtualNetworkPeering = new azure.network.VirtualNetworkPeering("test2", {
    remoteVirtualNetworkId: test1VirtualNetwork.id,
    resourceGroupName: test.name,
    virtualNetworkName: test2VirtualNetwork.name,
});

Example Usage (Global virtual network peering)

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const config = new pulumi.Config();
const location = config.get("location") || [
    "uksouth",
    "southeastasia",
];
const vnetAddressSpace = config.get("vnetAddressSpace") || [
    "10.0.0.0/16",
    "10.1.0.0/16",
];

const vnetResourceGroup: azure.core.ResourceGroup[] = [];
for (let i = 0; i < location.length; i++) {
    vnetResourceGroup.push(new azure.core.ResourceGroup(`vnet-${i}`, {
        location: location[i],
    }));
}
const vnetVirtualNetwork: azure.network.VirtualNetwork[] = [];
for (let i = 0; i < location.length; i++) {
    vnetVirtualNetwork.push(new azure.network.VirtualNetwork(`vnet-${i}`, {
        addressSpaces: [vnetAddressSpace[i]],
        location: pulumi.all(vnetResourceGroup.map(v => v.location)).apply(location => location.map(v => v)[i]),
        resourceGroupName: pulumi.all(vnetResourceGroup.map(v => v.name)).apply(name => name.map(v => v)[i]),
    }));
}
const nva: azure.network.Subnet[] = [];
for (let i = 0; i < location.length; i++) {
    nva.push(new azure.network.Subnet(`nva-${i}`, {
        addressPrefix: pulumi.all(vnetVirtualNetwork.map(v => v.addressSpaces)).apply(addressSpaces => (() => {
            throw "tf2pulumi error: NYI: call to cidrsubnet";
            return (() => { throw "NYI: call to cidrsubnet"; })();
        })()),
        resourceGroupName: pulumi.all(vnetResourceGroup.map(v => v.name)).apply(name => name.map(v => v)[i]),
        virtualNetworkName: pulumi.all(vnetVirtualNetwork.map(v => v.name)).apply(name => name.map(v => v)[i]),
    }));
}
// enable global peering between the two virtual network
const peering: azure.network.VirtualNetworkPeering[] = [];
for (let i = 0; i < location.length; i++) {
    peering.push(new azure.network.VirtualNetworkPeering(`peering-${i}`, {
        allowForwardedTraffic: true,
        // `allow_gateway_transit` must be set to false for vnet Global Peering
        allowGatewayTransit: false,
        allowVirtualNetworkAccess: true,
        remoteVirtualNetworkId: pulumi.all(vnetVirtualNetwork.map(v => v.id)).apply(id => id.map(v => v)[(1 - i)]),
        resourceGroupName: pulumi.all(vnetResourceGroup.map(v => v.name)).apply(name => name.map(v => v)[i]),
        virtualNetworkName: pulumi.all(vnetVirtualNetwork.map(v => v.name)).apply(name => name.map(v => v)[i]),
    }));
}

Note

Virtual Network peerings cannot be created, updated or deleted concurrently.

constructor

new VirtualNetworkPeering(name: string, args: VirtualNetworkPeeringArgs, opts?: pulumi.CustomResourceOptions)

Create a VirtualNetworkPeering resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: VirtualNetworkPeeringState, opts?: pulumi.CustomResourceOptions): VirtualNetworkPeering

Get an existing VirtualNetworkPeering resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

static isInstance(obj: any): boolean

Returns true if the given object is an instance of CustomResource. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property allowForwardedTraffic

public allowForwardedTraffic: pulumi.Output<boolean>;

Controls if forwarded traffic from VMs in the remote virtual network is allowed. Defaults to false.

property allowGatewayTransit

public allowGatewayTransit: pulumi.Output<boolean>;

Controls gatewayLinks can be used in the remote virtual network’s link to the local virtual network.

property allowVirtualNetworkAccess

public allowVirtualNetworkAccess: pulumi.Output<boolean>;

Controls if the VMs in the remote virtual network can access VMs in the local virtual network. Defaults to false.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

The name of the virtual network peering. Changing this forces a new resource to be created.

property remoteVirtualNetworkId

public remoteVirtualNetworkId: pulumi.Output<string>;

The full Azure resource ID of the remote virtual network. Changing this forces a new resource to be created.

property resourceGroupName

public resourceGroupName: pulumi.Output<string>;

The name of the resource group in which to create the virtual network. Changing this forces a new resource to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property useRemoteGateways

public useRemoteGateways: pulumi.Output<boolean>;

Controls if remote gateways can be used on the local virtual network. If the flag is set to true, and allow_gateway_transit on the remote peering is also true, virtual network will use gateways of remote virtual network for transit. Only one peering can have this flag set to true. This flag cannot be set if virtual network already has a gateway. Defaults to false.

property virtualNetworkName

public virtualNetworkName: pulumi.Output<string>;

The name of the virtual network. Changing this forces a new resource to be created.

function getApplicationSecurityGroup

getApplicationSecurityGroup(args: GetApplicationSecurityGroupArgs, opts?: pulumi.InvokeOptions): Promise<GetApplicationSecurityGroupResult>

Use this data source to access information about an existing Application Security Group.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const test = pulumi.output(azure.network.getApplicationSecurityGroup({
    name: "tf-appsecuritygroup",
    resourceGroupName: "my-resource-group",
}));

export const applicationSecurityGroupId = test.apply(test => test.id);

function getNetworkInterface

getNetworkInterface(args: GetNetworkInterfaceArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkInterfaceResult>

Use this data source to access information about an existing Network Interface.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const test = pulumi.output(azure.network.getNetworkInterface({
    name: "acctest-nic",
    resourceGroupName: "networking",
}));

export const networkInterfaceId = test.apply(test => test.id);

function getNetworkSecurityGroup

getNetworkSecurityGroup(args: GetNetworkSecurityGroupArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkSecurityGroupResult>

Use this data source to access information about an existing Network Security Group.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const test = pulumi.all([azurerm_network_security_group_test.name, azurerm_resource_group_test.name]).apply(([azurerm_network_security_group_testName, azurerm_resource_group_testName]) => azure.network.getNetworkSecurityGroup({
    name: azurerm_network_security_group_testName,
    resourceGroupName: azurerm_resource_group_testName,
}));

export const location = test.apply(test => test.location);

function getPublicIP

getPublicIP(args: GetPublicIPArgs, opts?: pulumi.InvokeOptions): Promise<GetPublicIPResult>

Use this data source to access information about an existing Public IP Address.

Example Usage (reference an existing)

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const test = pulumi.output(azure.network.getPublicIP({
    name: "name_of_public_ip",
    resourceGroupName: "name_of_resource_group",
}));

export const domainNameLabel = test.apply(test => test.domainNameLabel);
export const publicIpAddress = test.apply(test => test.ipAddress);

Example Usage (Retrieve the Dynamic Public IP of a new VM)

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const testResourceGroup = new azure.core.ResourceGroup("test", {
    location: "West US 2",
});
const testPublicIp = new azure.network.PublicIp("test", {
    allocationMethod: "Dynamic",
    idleTimeoutInMinutes: 30,
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
    tags: {
        environment: "test",
    },
});
const testVirtualNetwork = new azure.network.VirtualNetwork("test", {
    addressSpaces: ["10.0.0.0/16"],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testSubnet = new azure.network.Subnet("test", {
    addressPrefix: "10.0.2.0/24",
    resourceGroupName: testResourceGroup.name,
    virtualNetworkName: testVirtualNetwork.name,
});
const testNetworkInterface = new azure.network.NetworkInterface("test", {
    ipConfigurations: [{
        name: "testconfiguration1",
        privateIpAddress: "10.0.2.5",
        privateIpAddressAllocation: "Static",
        publicIpAddressId: testPublicIp.id,
        subnetId: testSubnet.id,
    }],
    location: testResourceGroup.location,
    resourceGroupName: testResourceGroup.name,
});
const testVirtualMachine = new azure.compute.VirtualMachine("test", {
    location: testResourceGroup.location,
    networkInterfaceIds: [testNetworkInterface.id],
    resourceGroupName: testResourceGroup.name,
});
const testPublicIP = pulumi.all([testPublicIp.name, testVirtualMachine.resourceGroupName]).apply(([name, resourceGroupName]) => azure.network.getPublicIP({
    name: name,
    resourceGroupName: resourceGroupName,
}));

export const publicIpAddress = testPublicIP.apply(testPublicIP => testPublicIP.ipAddress);

function getPublicIPs

getPublicIPs(args: GetPublicIPsArgs, opts?: pulumi.InvokeOptions): Promise<GetPublicIPsResult>

Use this data source to access information about a set of existing Public IP Addresses.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const test = pulumi.output(azure.network.getPublicIPs({
    attached: false,
    resourceGroupName: "pip-test",
}));

function getRouteTable

getRouteTable(args: GetRouteTableArgs, opts?: pulumi.InvokeOptions): Promise<GetRouteTableResult>

Use this data source to access information about an existing Route Table.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const test = pulumi.output(azure.network.getRouteTable({
    name: "myroutetable",
    resourceGroupName: "some-resource-group",
}));

function getSubnet

getSubnet(args: GetSubnetArgs, opts?: pulumi.InvokeOptions): Promise<GetSubnetResult>

Use this data source to access information about an existing Subnet within a Virtual Network.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const test = pulumi.output(azure.network.getSubnet({
    name: "backend",
    resourceGroupName: "networking",
    virtualNetworkName: "production",
}));

export const subnetId = test.apply(test => test.id);

function getVirtualNetwork

getVirtualNetwork(args: GetVirtualNetworkArgs, opts?: pulumi.InvokeOptions): Promise<GetVirtualNetworkResult>

Use this data source to access information about an existing Virtual Network.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const test = pulumi.output(azure.network.getVirtualNetwork({
    name: "production",
    resourceGroupName: "networking",
}));

export const virtualNetworkId = test.apply(test => test.id);

function getVirtualNetworkGateway

getVirtualNetworkGateway(args: GetVirtualNetworkGatewayArgs, opts?: pulumi.InvokeOptions): Promise<GetVirtualNetworkGatewayResult>

Use this data source to access information about an existing Virtual Network Gateway.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const test = pulumi.output(azure.network.getVirtualNetworkGateway({
    name: "production",
    resourceGroupName: "networking",
}));

export const virtualNetworkGatewayId = test.apply(test => test.id);

interface ApplicationGatewayArgs

The set of arguments for constructing a ApplicationGateway resource.

property authenticationCertificates

authenticationCertificates?: pulumi.Input<pulumi.Input<{
    data: pulumi.Input<string>;
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
}>[]>;

One or more authentication_certificate blocks as defined below.

property backendAddressPools

backendAddressPools: pulumi.Input<pulumi.Input<{
    fqdnLists: pulumi.Input<pulumi.Input<string>[]>;
    fqdns: pulumi.Input<pulumi.Input<string>[]>;
    id: pulumi.Input<string>;
    ipAddressLists: pulumi.Input<pulumi.Input<string>[]>;
    ipAddresses: pulumi.Input<pulumi.Input<string>[]>;
    name: pulumi.Input<string>;
}>[]>;

One or more backend_address_pool blocks as defined below.

property backendHttpSettings

backendHttpSettings: pulumi.Input<pulumi.Input<{
    authenticationCertificates: pulumi.Input<pulumi.Input<{
        id: pulumi.Input<string>;
        name: pulumi.Input<string>;
    }>[]>;
    cookieBasedAffinity: pulumi.Input<string>;
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
    pickHostNameFromBackendAddress: pulumi.Input<boolean>;
    port: pulumi.Input<number>;
    probeId: pulumi.Input<string>;
    probeName: pulumi.Input<string>;
    protocol: pulumi.Input<string>;
    requestTimeout: pulumi.Input<number>;
}>[]>;

One or more backend_http_settings blocks as defined below.

property customErrorConfigurations

customErrorConfigurations?: pulumi.Input<pulumi.Input<{
    customErrorPageUrl: pulumi.Input<string>;
    id: pulumi.Input<string>;
    statusCode: pulumi.Input<string>;
}>[]>;

One or more custom_error_configuration blocks as defined below.

property disabledSslProtocols

disabledSslProtocols?: pulumi.Input<pulumi.Input<string>[]>;

A list of SSL Protocols which should be disabled on this Application Gateway. Possible values are TLSv1_0, TLSv1_1 and TLSv1_2.

property enableHttp2

enableHttp2?: pulumi.Input<boolean>;

property frontendIpConfigurations

frontendIpConfigurations: pulumi.Input<pulumi.Input<{
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
    privateIpAddress: pulumi.Input<string>;
    privateIpAddressAllocation: pulumi.Input<string>;
    publicIpAddressId: pulumi.Input<string>;
    subnetId: pulumi.Input<string>;
}>[]>;

One or more frontend_ip_configuration blocks as defined below.

property frontendPorts

frontendPorts: pulumi.Input<pulumi.Input<{
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
    port: pulumi.Input<number>;
}>[]>;

One or more frontend_port blocks as defined below.

property gatewayIpConfigurations

gatewayIpConfigurations: pulumi.Input<pulumi.Input<{
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
    subnetId: pulumi.Input<string>;
}>[]>;

One or more gateway_ip_configuration blocks as defined below.

property httpListeners

httpListeners: pulumi.Input<pulumi.Input<{
    customErrorConfigurations: pulumi.Input<pulumi.Input<{
        customErrorPageUrl: pulumi.Input<string>;
        id: pulumi.Input<string>;
        statusCode: pulumi.Input<string>;
    }>[]>;
    frontendIpConfigurationId: pulumi.Input<string>;
    frontendIpConfigurationName: pulumi.Input<string>;
    frontendPortId: pulumi.Input<string>;
    frontendPortName: pulumi.Input<string>;
    hostName: pulumi.Input<string>;
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
    protocol: pulumi.Input<string>;
    requireSni: pulumi.Input<boolean>;
    sslCertificateId: pulumi.Input<string>;
    sslCertificateName: pulumi.Input<string>;
}>[]>;

One or more http_listener blocks as defined below.

property location

location: pulumi.Input<string>;

The Azure region where the Application Gateway should exist. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

The name of the Application Gateway. Changing this forces a new resource to be created.

property probes

probes?: pulumi.Input<pulumi.Input<{
    host: pulumi.Input<string>;
    id: pulumi.Input<string>;
    interval: pulumi.Input<number>;
    match: pulumi.Input<{
        body: pulumi.Input<string>;
        statusCodes: pulumi.Input<pulumi.Input<string>[]>;
    }>;
    minimumServers: pulumi.Input<number>;
    name: pulumi.Input<string>;
    path: pulumi.Input<string>;
    pickHostNameFromBackendHttpSettings: pulumi.Input<boolean>;
    protocol: pulumi.Input<string>;
    timeout: pulumi.Input<number>;
    unhealthyThreshold: pulumi.Input<number>;
}>[]>;

One or more probe blocks as defined below.

property requestRoutingRules

requestRoutingRules: pulumi.Input<pulumi.Input<{
    backendAddressPoolId: pulumi.Input<string>;
    backendAddressPoolName: pulumi.Input<string>;
    backendHttpSettingsId: pulumi.Input<string>;
    backendHttpSettingsName: pulumi.Input<string>;
    httpListenerId: pulumi.Input<string>;
    httpListenerName: pulumi.Input<string>;
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
    ruleType: pulumi.Input<string>;
    urlPathMapId: pulumi.Input<string>;
    urlPathMapName: pulumi.Input<string>;
}>[]>;

One or more request_routing_rule blocks as defined below.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which to the Application Gateway should exist. Changing this forces a new resource to be created.

property sku

sku: pulumi.Input<{
    capacity: pulumi.Input<number>;
    name: pulumi.Input<string>;
    tier: pulumi.Input<string>;
}>;

A sku block as defined below.

property sslCertificates

sslCertificates?: pulumi.Input<pulumi.Input<{
    data: pulumi.Input<string>;
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
    password: pulumi.Input<string>;
    publicCertData: pulumi.Input<string>;
}>[]>;

One or more ssl_certificate blocks as defined below.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property urlPathMaps

urlPathMaps?: pulumi.Input<pulumi.Input<{
    defaultBackendAddressPoolId: pulumi.Input<string>;
    defaultBackendAddressPoolName: pulumi.Input<string>;
    defaultBackendHttpSettingsId: pulumi.Input<string>;
    defaultBackendHttpSettingsName: pulumi.Input<string>;
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
    pathRules: pulumi.Input<pulumi.Input<{
        backendAddressPoolId: pulumi.Input<string>;
        backendAddressPoolName: pulumi.Input<string>;
        backendHttpSettingsId: pulumi.Input<string>;
        backendHttpSettingsName: pulumi.Input<string>;
        id: pulumi.Input<string>;
        name: pulumi.Input<string>;
        paths: pulumi.Input<pulumi.Input<string>[]>;
    }>[]>;
}>[]>;

One or more url_path_map blocks as defined below.

property wafConfiguration

wafConfiguration?: pulumi.Input<{
    enabled: pulumi.Input<boolean>;
    fileUploadLimitMb: pulumi.Input<number>;
    firewallMode: pulumi.Input<string>;
    ruleSetType: pulumi.Input<string>;
    ruleSetVersion: pulumi.Input<string>;
}>;

A waf_configuration block as defined below.

interface ApplicationGatewayState

Input properties used for looking up and filtering ApplicationGateway resources.

property authenticationCertificates

authenticationCertificates?: pulumi.Input<pulumi.Input<{
    data: pulumi.Input<string>;
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
}>[]>;

One or more authentication_certificate blocks as defined below.

property backendAddressPools

backendAddressPools?: pulumi.Input<pulumi.Input<{
    fqdnLists: pulumi.Input<pulumi.Input<string>[]>;
    fqdns: pulumi.Input<pulumi.Input<string>[]>;
    id: pulumi.Input<string>;
    ipAddressLists: pulumi.Input<pulumi.Input<string>[]>;
    ipAddresses: pulumi.Input<pulumi.Input<string>[]>;
    name: pulumi.Input<string>;
}>[]>;

One or more backend_address_pool blocks as defined below.

property backendHttpSettings

backendHttpSettings?: pulumi.Input<pulumi.Input<{
    authenticationCertificates: pulumi.Input<pulumi.Input<{
        id: pulumi.Input<string>;
        name: pulumi.Input<string>;
    }>[]>;
    cookieBasedAffinity: pulumi.Input<string>;
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
    pickHostNameFromBackendAddress: pulumi.Input<boolean>;
    port: pulumi.Input<number>;
    probeId: pulumi.Input<string>;
    probeName: pulumi.Input<string>;
    protocol: pulumi.Input<string>;
    requestTimeout: pulumi.Input<number>;
}>[]>;

One or more backend_http_settings blocks as defined below.

property customErrorConfigurations

customErrorConfigurations?: pulumi.Input<pulumi.Input<{
    customErrorPageUrl: pulumi.Input<string>;
    id: pulumi.Input<string>;
    statusCode: pulumi.Input<string>;
}>[]>;

One or more custom_error_configuration blocks as defined below.

property disabledSslProtocols

disabledSslProtocols?: pulumi.Input<pulumi.Input<string>[]>;

A list of SSL Protocols which should be disabled on this Application Gateway. Possible values are TLSv1_0, TLSv1_1 and TLSv1_2.

property enableHttp2

enableHttp2?: pulumi.Input<boolean>;

property frontendIpConfigurations

frontendIpConfigurations?: pulumi.Input<pulumi.Input<{
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
    privateIpAddress: pulumi.Input<string>;
    privateIpAddressAllocation: pulumi.Input<string>;
    publicIpAddressId: pulumi.Input<string>;
    subnetId: pulumi.Input<string>;
}>[]>;

One or more frontend_ip_configuration blocks as defined below.

property frontendPorts

frontendPorts?: pulumi.Input<pulumi.Input<{
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
    port: pulumi.Input<number>;
}>[]>;

One or more frontend_port blocks as defined below.

property gatewayIpConfigurations

gatewayIpConfigurations?: pulumi.Input<pulumi.Input<{
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
    subnetId: pulumi.Input<string>;
}>[]>;

One or more gateway_ip_configuration blocks as defined below.

property httpListeners

httpListeners?: pulumi.Input<pulumi.Input<{
    customErrorConfigurations: pulumi.Input<pulumi.Input<{
        customErrorPageUrl: pulumi.Input<string>;
        id: pulumi.Input<string>;
        statusCode: pulumi.Input<string>;
    }>[]>;
    frontendIpConfigurationId: pulumi.Input<string>;
    frontendIpConfigurationName: pulumi.Input<string>;
    frontendPortId: pulumi.Input<string>;
    frontendPortName: pulumi.Input<string>;
    hostName: pulumi.Input<string>;
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
    protocol: pulumi.Input<string>;
    requireSni: pulumi.Input<boolean>;
    sslCertificateId: pulumi.Input<string>;
    sslCertificateName: pulumi.Input<string>;
}>[]>;

One or more http_listener blocks as defined below.

property location

location?: pulumi.Input<string>;

The Azure region where the Application Gateway should exist. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

The name of the Application Gateway. Changing this forces a new resource to be created.

property probes

probes?: pulumi.Input<pulumi.Input<{
    host: pulumi.Input<string>;
    id: pulumi.Input<string>;
    interval: pulumi.Input<number>;
    match: pulumi.Input<{
        body: pulumi.Input<string>;
        statusCodes: pulumi.Input<pulumi.Input<string>[]>;
    }>;
    minimumServers: pulumi.Input<number>;
    name: pulumi.Input<string>;
    path: pulumi.Input<string>;
    pickHostNameFromBackendHttpSettings: pulumi.Input<boolean>;
    protocol: pulumi.Input<string>;
    timeout: pulumi.Input<number>;
    unhealthyThreshold: pulumi.Input<number>;
}>[]>;

One or more probe blocks as defined below.

property requestRoutingRules

requestRoutingRules?: pulumi.Input<pulumi.Input<{
    backendAddressPoolId: pulumi.Input<string>;
    backendAddressPoolName: pulumi.Input<string>;
    backendHttpSettingsId: pulumi.Input<string>;
    backendHttpSettingsName: pulumi.Input<string>;
    httpListenerId: pulumi.Input<string>;
    httpListenerName: pulumi.Input<string>;
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
    ruleType: pulumi.Input<string>;
    urlPathMapId: pulumi.Input<string>;
    urlPathMapName: pulumi.Input<string>;
}>[]>;

One or more request_routing_rule blocks as defined below.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to the Application Gateway should exist. Changing this forces a new resource to be created.

property sku

sku?: pulumi.Input<{
    capacity: pulumi.Input<number>;
    name: pulumi.Input<string>;
    tier: pulumi.Input<string>;
}>;

A sku block as defined below.

property sslCertificates

sslCertificates?: pulumi.Input<pulumi.Input<{
    data: pulumi.Input<string>;
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
    password: pulumi.Input<string>;
    publicCertData: pulumi.Input<string>;
}>[]>;

One or more ssl_certificate blocks as defined below.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property urlPathMaps

urlPathMaps?: pulumi.Input<pulumi.Input<{
    defaultBackendAddressPoolId: pulumi.Input<string>;
    defaultBackendAddressPoolName: pulumi.Input<string>;
    defaultBackendHttpSettingsId: pulumi.Input<string>;
    defaultBackendHttpSettingsName: pulumi.Input<string>;
    id: pulumi.Input<string>;
    name: pulumi.Input<string>;
    pathRules: pulumi.Input<pulumi.Input<{
        backendAddressPoolId: pulumi.Input<string>;
        backendAddressPoolName: pulumi.Input<string>;
        backendHttpSettingsId: pulumi.Input<string>;
        backendHttpSettingsName: pulumi.Input<string>;
        id: pulumi.Input<string>;
        name: pulumi.Input<string>;
        paths: pulumi.Input<pulumi.Input<string>[]>;
    }>[]>;
}>[]>;

One or more url_path_map blocks as defined below.

property wafConfiguration

wafConfiguration?: pulumi.Input<{
    enabled: pulumi.Input<boolean>;
    fileUploadLimitMb: pulumi.Input<number>;
    firewallMode: pulumi.Input<string>;
    ruleSetType: pulumi.Input<string>;
    ruleSetVersion: pulumi.Input<string>;
}>;

A waf_configuration block as defined below.

interface ApplicationSecurityGroupArgs

The set of arguments for constructing a ApplicationSecurityGroup resource.

property location

location: pulumi.Input<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the Application Security Group. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which to create the Application Security Group.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

interface ApplicationSecurityGroupState

Input properties used for looking up and filtering ApplicationSecurityGroup resources.

property location

location?: pulumi.Input<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the Application Security Group. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the Application Security Group.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

interface ExpressRouteCircuitArgs

The set of arguments for constructing a ExpressRouteCircuit resource.

property allowClassicOperations

allowClassicOperations?: pulumi.Input<boolean>;

Allow the circuit to interact with classic (RDFE) resources. The default value is false.

property bandwidthInMbps

bandwidthInMbps: pulumi.Input<number>;

The bandwidth in Mbps of the circuit being created.

property location

location: pulumi.Input<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

The name of the ExpressRoute circuit. Changing this forces a new resource to be created.

property peeringLocation

peeringLocation: pulumi.Input<string>;

The name of the peering location and not the Azure resource location.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which to create the ExpressRoute circuit. Changing this forces a new resource to be created.

property serviceProviderName

serviceProviderName: pulumi.Input<string>;

The name of the ExpressRoute Service Provider.

property sku

sku: pulumi.Input<{
    family: pulumi.Input<string>;
    tier: pulumi.Input<string>;
}>;

A sku block for the ExpressRoute circuit as documented below.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

interface ExpressRouteCircuitAuthorizationArgs

The set of arguments for constructing a ExpressRouteCircuitAuthorization resource.

property expressRouteCircuitName

expressRouteCircuitName: pulumi.Input<string>;

The name of the Express Route Circuit in which to create the Authorization.

property name

name?: pulumi.Input<string>;

The name of the ExpressRoute circuit. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which to create the ExpressRoute circuit. Changing this forces a new resource to be created.

interface ExpressRouteCircuitAuthorizationState

Input properties used for looking up and filtering ExpressRouteCircuitAuthorization resources.

property authorizationKey

authorizationKey?: pulumi.Input<string>;

The Authorization Key.

property authorizationUseStatus

authorizationUseStatus?: pulumi.Input<string>;

The authorization use status.

property expressRouteCircuitName

expressRouteCircuitName?: pulumi.Input<string>;

The name of the Express Route Circuit in which to create the Authorization.

property name

name?: pulumi.Input<string>;

The name of the ExpressRoute circuit. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the ExpressRoute circuit. Changing this forces a new resource to be created.

interface ExpressRouteCircuitPeeringArgs

The set of arguments for constructing a ExpressRouteCircuitPeering resource.

property expressRouteCircuitName

expressRouteCircuitName: pulumi.Input<string>;

The name of the ExpressRoute Circuit in which to create the Peering.

property microsoftPeeringConfig

microsoftPeeringConfig?: pulumi.Input<{
    advertisedPublicPrefixes: pulumi.Input<pulumi.Input<string>[]>;
}>;

A microsoft_peering_config block as defined below. Required when peering_type is set to MicrosoftPeering.

property peerAsn

peerAsn?: pulumi.Input<number>;

The Either a 16-bit or a 32-bit ASN. Can either be public or private..

property peeringType

peeringType: pulumi.Input<string>;

The type of the ExpressRoute Circuit Peering. Acceptable values include AzurePrivatePeering, AzurePublicPeering and MicrosoftPeering. Changing this forces a new resource to be created.

property primaryPeerAddressPrefix

primaryPeerAddressPrefix: pulumi.Input<string>;

A /30 subnet for the primary link.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which to create the Express Route Circuit Peering. Changing this forces a new resource to be created.

property secondaryPeerAddressPrefix

secondaryPeerAddressPrefix: pulumi.Input<string>;

A /30 subnet for the secondary link.

property sharedKey

sharedKey?: pulumi.Input<string>;

The shared key. Can be a maximum of 25 characters.

property vlanId

vlanId: pulumi.Input<number>;

A valid VLAN ID to establish this peering on.

interface ExpressRouteCircuitPeeringState

Input properties used for looking up and filtering ExpressRouteCircuitPeering resources.

property azureAsn

azureAsn?: pulumi.Input<number>;

The ASN used by Azure.

property expressRouteCircuitName

expressRouteCircuitName?: pulumi.Input<string>;

The name of the ExpressRoute Circuit in which to create the Peering.

property microsoftPeeringConfig

microsoftPeeringConfig?: pulumi.Input<{
    advertisedPublicPrefixes: pulumi.Input<pulumi.Input<string>[]>;
}>;

A microsoft_peering_config block as defined below. Required when peering_type is set to MicrosoftPeering.

property peerAsn

peerAsn?: pulumi.Input<number>;

The Either a 16-bit or a 32-bit ASN. Can either be public or private..

property peeringType

peeringType?: pulumi.Input<string>;

The type of the ExpressRoute Circuit Peering. Acceptable values include AzurePrivatePeering, AzurePublicPeering and MicrosoftPeering. Changing this forces a new resource to be created.

property primaryAzurePort

primaryAzurePort?: pulumi.Input<string>;

The Primary Port used by Azure for this Peering.

property primaryPeerAddressPrefix

primaryPeerAddressPrefix?: pulumi.Input<string>;

A /30 subnet for the primary link.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the Express Route Circuit Peering. Changing this forces a new resource to be created.

property secondaryAzurePort

secondaryAzurePort?: pulumi.Input<string>;

The Secondary Port used by Azure for this Peering.

property secondaryPeerAddressPrefix

secondaryPeerAddressPrefix?: pulumi.Input<string>;

A /30 subnet for the secondary link.

property sharedKey

sharedKey?: pulumi.Input<string>;

The shared key. Can be a maximum of 25 characters.

property vlanId

vlanId?: pulumi.Input<number>;

A valid VLAN ID to establish this peering on.

interface ExpressRouteCircuitState

Input properties used for looking up and filtering ExpressRouteCircuit resources.

property allowClassicOperations

allowClassicOperations?: pulumi.Input<boolean>;

Allow the circuit to interact with classic (RDFE) resources. The default value is false.

property bandwidthInMbps

bandwidthInMbps?: pulumi.Input<number>;

The bandwidth in Mbps of the circuit being created.

property location

location?: pulumi.Input<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

The name of the ExpressRoute circuit. Changing this forces a new resource to be created.

property peeringLocation

peeringLocation?: pulumi.Input<string>;

The name of the peering location and not the Azure resource location.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the ExpressRoute circuit. Changing this forces a new resource to be created.

property serviceKey

serviceKey?: pulumi.Input<string>;

The string needed by the service provider to provision the ExpressRoute circuit.

property serviceProviderName

serviceProviderName?: pulumi.Input<string>;

The name of the ExpressRoute Service Provider.

property serviceProviderProvisioningState

serviceProviderProvisioningState?: pulumi.Input<string>;

The ExpressRoute circuit provisioning state from your chosen service provider. Possible values are “NotProvisioned”, “Provisioning”, “Provisioned”, and “Deprovisioning”.

property sku

sku?: pulumi.Input<{
    family: pulumi.Input<string>;
    tier: pulumi.Input<string>;
}>;

A sku block for the ExpressRoute circuit as documented below.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

interface FirewallApplicationRuleCollectionArgs

The set of arguments for constructing a FirewallApplicationRuleCollection resource.

property action

action: pulumi.Input<string>;

Specifies the action the rule will apply to matching traffic. Possible values are Allow and Deny.

property azureFirewallName

azureFirewallName: pulumi.Input<string>;

Specifies the name of the Firewall in which the Application Rule Collection should be created. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the Application Rule Collection which must be unique within the Firewall. Changing this forces a new resource to be created.

property priority

priority: pulumi.Input<number>;

Specifies the priority of the rule collection. Possible values are between 100 - 65000.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

Specifies the name of the Resource Group in which the Firewall exists. Changing this forces a new resource to be created.

property rules

rules: pulumi.Input<pulumi.Input<{
    description: pulumi.Input<string>;
    fqdnTags: pulumi.Input<pulumi.Input<string>[]>;
    name: pulumi.Input<string>;
    protocols: pulumi.Input<pulumi.Input<{
        port: pulumi.Input<number>;
        type: pulumi.Input<string>;
    }>[]>;
    sourceAddresses: pulumi.Input<pulumi.Input<string>[]>;
    targetFqdns: pulumi.Input<pulumi.Input<string>[]>;
}>[]>;

One or more rule blocks as defined below.

interface FirewallApplicationRuleCollectionState

Input properties used for looking up and filtering FirewallApplicationRuleCollection resources.

property action

action?: pulumi.Input<string>;

Specifies the action the rule will apply to matching traffic. Possible values are Allow and Deny.

property azureFirewallName

azureFirewallName?: pulumi.Input<string>;

Specifies the name of the Firewall in which the Application Rule Collection should be created. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the Application Rule Collection which must be unique within the Firewall. Changing this forces a new resource to be created.

property priority

priority?: pulumi.Input<number>;

Specifies the priority of the rule collection. Possible values are between 100 - 65000.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

Specifies the name of the Resource Group in which the Firewall exists. Changing this forces a new resource to be created.

property rules

rules?: pulumi.Input<pulumi.Input<{
    description: pulumi.Input<string>;
    fqdnTags: pulumi.Input<pulumi.Input<string>[]>;
    name: pulumi.Input<string>;
    protocols: pulumi.Input<pulumi.Input<{
        port: pulumi.Input<number>;
        type: pulumi.Input<string>;
    }>[]>;
    sourceAddresses: pulumi.Input<pulumi.Input<string>[]>;
    targetFqdns: pulumi.Input<pulumi.Input<string>[]>;
}>[]>;

One or more rule blocks as defined below.

interface FirewallArgs

The set of arguments for constructing a Firewall resource.

property ipConfiguration

ipConfiguration: pulumi.Input<{
    internalPublicIpAddressId: pulumi.Input<string>;
    name: pulumi.Input<string>;
    privateIpAddress: pulumi.Input<string>;
    publicIpAddressId: pulumi.Input<string>;
    subnetId: pulumi.Input<string>;
}>;

A ip_configuration block as documented below.

property location

location: pulumi.Input<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the Firewall. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which to create the resource. Changing this forces a new resource to be created.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

interface FirewallNetworkRuleCollectionArgs

The set of arguments for constructing a FirewallNetworkRuleCollection resource.

property action

action: pulumi.Input<string>;

Specifies the action the rule will apply to matching traffic. Possible values are Allow and Deny.

property azureFirewallName

azureFirewallName: pulumi.Input<string>;

Specifies the name of the Firewall in which the Network Rule Collection should be created. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the Network Rule Collection which must be unique within the Firewall. Changing this forces a new resource to be created.

property priority

priority: pulumi.Input<number>;

Specifies the priority of the rule collection. Possible values are between 100 - 65000.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

Specifies the name of the Resource Group in which the Firewall exists. Changing this forces a new resource to be created.

property rules

rules: pulumi.Input<pulumi.Input<{
    description: pulumi.Input<string>;
    destinationAddresses: pulumi.Input<pulumi.Input<string>[]>;
    destinationPorts: pulumi.Input<pulumi.Input<string>[]>;
    name: pulumi.Input<string>;
    protocols: pulumi.Input<pulumi.Input<string>[]>;
    sourceAddresses: pulumi.Input<pulumi.Input<string>[]>;
}>[]>;

One or more rule blocks as defined below.

interface FirewallNetworkRuleCollectionState

Input properties used for looking up and filtering FirewallNetworkRuleCollection resources.

property action

action?: pulumi.Input<string>;

Specifies the action the rule will apply to matching traffic. Possible values are Allow and Deny.

property azureFirewallName

azureFirewallName?: pulumi.Input<string>;

Specifies the name of the Firewall in which the Network Rule Collection should be created. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the Network Rule Collection which must be unique within the Firewall. Changing this forces a new resource to be created.

property priority

priority?: pulumi.Input<number>;

Specifies the priority of the rule collection. Possible values are between 100 - 65000.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

Specifies the name of the Resource Group in which the Firewall exists. Changing this forces a new resource to be created.

property rules

rules?: pulumi.Input<pulumi.Input<{
    description: pulumi.Input<string>;
    destinationAddresses: pulumi.Input<pulumi.Input<string>[]>;
    destinationPorts: pulumi.Input<pulumi.Input<string>[]>;
    name: pulumi.Input<string>;
    protocols: pulumi.Input<pulumi.Input<string>[]>;
    sourceAddresses: pulumi.Input<pulumi.Input<string>[]>;
}>[]>;

One or more rule blocks as defined below.

interface FirewallState

Input properties used for looking up and filtering Firewall resources.

property ipConfiguration

ipConfiguration?: pulumi.Input<{
    internalPublicIpAddressId: pulumi.Input<string>;
    name: pulumi.Input<string>;
    privateIpAddress: pulumi.Input<string>;
    publicIpAddressId: pulumi.Input<string>;
    subnetId: pulumi.Input<string>;
}>;

A ip_configuration block as documented below.

property location

location?: pulumi.Input<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the Firewall. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the resource. Changing this forces a new resource to be created.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

interface GetApplicationSecurityGroupArgs

A collection of arguments for invoking getApplicationSecurityGroup.

property name

name: string;

The name of the Application Security Group.

property resourceGroupName

resourceGroupName: string;

The name of the resource group in which the Application Security Group exists.

interface GetApplicationSecurityGroupResult

A collection of values returned by getApplicationSecurityGroup.

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property location

location: string;

The supported Azure location where the Application Security Group exists.

property tags

tags: {[key: string]: any};

A mapping of tags assigned to the resource.

interface GetNetworkInterfaceArgs

A collection of arguments for invoking getNetworkInterface.

property name

name: string;

Specifies the name of the Network Interface.

property resourceGroupName

resourceGroupName: string;

Specifies the name of the resource group the Network Interface is located in.

interface GetNetworkInterfaceResult

A collection of values returned by getNetworkInterface.

property appliedDnsServers

appliedDnsServers: string[];

List of DNS servers applied to the specified Network Interface.

property dnsServers

dnsServers: string[];

The list of DNS servers used by the specified Network Interface.

property enableAcceleratedNetworking

enableAcceleratedNetworking: boolean;

Indicates if accelerated networking is set on the specified Network Interface.

property enableIpForwarding

enableIpForwarding: boolean;

Indicate if IP forwarding is set on the specified Network Interface.

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property internalDnsNameLabel

internalDnsNameLabel: string;

The internal dns name label of the specified Network Interface.

property internalFqdn

internalFqdn: string;

property ipConfigurations

ipConfigurations: {
    applicationGatewayBackendAddressPoolsIds: string[];
    applicationSecurityGroupIds: string[];
    loadBalancerBackendAddressPoolsIds: string[];
    loadBalancerInboundNatRulesIds: string[];
    name: string;
    primary: boolean;
    privateIpAddress: string;
    privateIpAddressAllocation: string;
    privateIpAddressVersion: string;
    publicIpAddressId: string;
    subnetId: string;
}[];

One or more ip_configuration blocks as defined below.

property location

location: string;

The location of the specified Network Interface.

property macAddress

macAddress: string;

The MAC address used by the specified Network Interface.

property networkSecurityGroupId

networkSecurityGroupId: string;

The ID of the network security group associated to the specified Network Interface.

property privateIpAddress

privateIpAddress: string;

The Private IP Address assigned to this Network Interface.

property privateIpAddresses

privateIpAddresses: string[];

The list of private ip addresses associates to the specified Network Interface.

property tags

tags: {[key: string]: any};

List the tags associated to the specified Network Interface.

property virtualMachineId

virtualMachineId: string;

The ID of the virtual machine that the specified Network Interface is attached to.

interface GetNetworkSecurityGroupArgs

A collection of arguments for invoking getNetworkSecurityGroup.

property name

name: string;

Specifies the Name of the Network Security Group.

property resourceGroupName

resourceGroupName: string;

Specifies the Name of the Resource Group within which the Network Security Group exists

interface GetNetworkSecurityGroupResult

A collection of values returned by getNetworkSecurityGroup.

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property location

location: string;

The supported Azure location where the resource exists.

property securityRules

securityRules: {
    access: string;
    description: string;
    destinationAddressPrefix: string;
    destinationAddressPrefixes: string[];
    destinationApplicationSecurityGroupIds: string[];
    destinationPortRange: string;
    destinationPortRanges: string[];
    direction: string;
    name: string;
    priority: number;
    protocol: string;
    sourceAddressPrefix: string;
    sourceAddressPrefixes: string[];
    sourceApplicationSecurityGroupIds: string[];
    sourcePortRange: string;
    sourcePortRanges: string[];
}[];

One or more security_rule blocks as defined below.

property tags

tags: {[key: string]: any};

A mapping of tags assigned to the resource.

interface GetPublicIPArgs

A collection of arguments for invoking getPublicIP.

property name

name: string;

Specifies the name of the public IP address.

property resourceGroupName

resourceGroupName: string;

Specifies the name of the resource group.

property tags

tags?: {[key: string]: any};

property zones

zones?: string[];

interface GetPublicIPResult

A collection of values returned by getPublicIP.

property allocationMethod

allocationMethod: string;

property domainNameLabel

domainNameLabel: string;

The label for the Domain Name.

property fqdn

fqdn: string;

Fully qualified domain name of the A DNS record associated with the public IP. This is the concatenation of the domainNameLabel and the regionalized DNS zone.

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property idleTimeoutInMinutes

idleTimeoutInMinutes: number;

Specifies the timeout for the TCP idle connection.

property ipAddress

ipAddress: string;

The IP address value that was allocated.

property ipVersion

ipVersion: string;

The IP version being used, for example IPv4 or IPv6.

property location

location: string;

property reverseFqdn

reverseFqdn: string;

property sku

sku: string;

property tags

tags: {[key: string]: any};

A mapping of tags to assigned to the resource.

property zones

zones: string[];

interface GetPublicIPsArgs

A collection of arguments for invoking getPublicIPs.

property allocationType

allocationType?: string;

The Allocation Type for the Public IP Address. Possible values include Static or Dynamic.

property attached

attached?: boolean;

Filter to include IP Addresses which are attached to a device, such as a VM/LB (true) or unattached (false).

property namePrefix

namePrefix?: string;

A prefix match used for the IP Addresses name field, case sensitive.

property resourceGroupName

resourceGroupName: string;

Specifies the name of the resource group.

interface GetPublicIPsResult

A collection of values returned by getPublicIPs.

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property publicIps

publicIps: {
    domainNameLabel: string;
    fqdn: string;
    id: string;
    ipAddress: string;
    name: string;
}[];

A List of public_ips blocks as defined below filtered by the criteria above.

interface GetRouteTableArgs

A collection of arguments for invoking getRouteTable.

property name

name: string;

The name of the Route Table.

property resourceGroupName

resourceGroupName: string;

The name of the Resource Group in which the Route Table exists.

interface GetRouteTableResult

A collection of values returned by getRouteTable.

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property location

location: string;

The Azure Region in which the Route Table exists.

property routes

routes: {
    addressPrefix: string;
    name: string;
    nextHopInIpAddress: string;
    nextHopType: string;
}[];

One or more route blocks as documented below.

property subnets

subnets: string[];

The collection of Subnets associated with this route table.

property tags

tags: {[key: string]: any};

A mapping of tags assigned to the Route Table.

interface GetSubnetArgs

A collection of arguments for invoking getSubnet.

property name

name: string;

Specifies the name of the Subnet.

property resourceGroupName

resourceGroupName: string;

Specifies the name of the resource group the Virtual Network is located in.

property virtualNetworkName

virtualNetworkName: string;

Specifies the name of the Virtual Network this Subnet is located within.

interface GetSubnetResult

A collection of values returned by getSubnet.

property addressPrefix

addressPrefix: string;

The address prefix used for the subnet.

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property ipConfigurations

ipConfigurations: string[];

The collection of IP Configurations with IPs within this subnet.

property networkSecurityGroupId

networkSecurityGroupId: string;

The ID of the Network Security Group associated with the subnet.

property routeTableId

routeTableId: string;

The ID of the Route Table associated with this subnet.

interface GetVirtualNetworkArgs

A collection of arguments for invoking getVirtualNetwork.

property name

name: string;

Specifies the name of the Virtual Network.

property resourceGroupName

resourceGroupName: string;

Specifies the name of the resource group the Virtual Network is located in.

interface GetVirtualNetworkGatewayArgs

A collection of arguments for invoking getVirtualNetworkGateway.

property name

name: string;

Specifies the name of the Virtual Network Gateway.

property resourceGroupName

resourceGroupName: string;

Specifies the name of the resource group the Virtual Network Gateway is located in.

interface GetVirtualNetworkGatewayResult

A collection of values returned by getVirtualNetworkGateway.

property activeActive

activeActive: boolean;

(Optional) Is this an Active-Active Gateway?

property bgpSettings

bgpSettings: {
    asn: number;
    peerWeight: number;
    peeringAddress: string;
}[];

property defaultLocalNetworkGatewayId

defaultLocalNetworkGatewayId: string;

The ID of the local network gateway through which outbound Internet traffic from the virtual network in which the gateway is created will be routed (forced tunneling). Refer to the Azure documentation on forced tunneling.

property enableBgp

enableBgp: boolean;

Will BGP (Border Gateway Protocol) will be enabled for this Virtual Network Gateway.

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property ipConfigurations

ipConfigurations: {
    name: string;
    privateIpAddressAllocation: string;
    publicIpAddressId: string;
    subnetId: string;
}[];

One or two ip_configuration blocks documented below.

property location

location: string;

The location/region where the Virtual Network Gateway is located.

property sku

sku: string;

Configuration of the size and capacity of the Virtual Network Gateway.

property tags

tags: {[key: string]: any};

A mapping of tags assigned to the resource.

property type

type: string;

The type of the Virtual Network Gateway.

property vpnClientConfigurations

vpnClientConfigurations: {
    addressSpaces: string[];
    radiusServerAddress: string;
    radiusServerSecret: string;
    revokedCertificates: {
        name: string;
        thumbprint: string;
    }[];
    rootCertificates: {
        name: string;
        publicCertData: string;
    }[];
    vpnClientProtocols: string[];
}[];

A vpn_client_configuration block which is documented below.

property vpnType

vpnType: string;

The routing type of the Virtual Network Gateway.

interface GetVirtualNetworkResult

A collection of values returned by getVirtualNetwork.

property addressSpaces

addressSpaces: string[];

The list of address spaces used by the virtual network.

property dnsServers

dnsServers: string[];

The list of DNS servers used by the virtual network.

property id

id: string;

id is the provider-assigned unique ID for this managed resource.

property subnets

subnets: string[];

The list of name of the subnets that are attached to this virtual network.

property vnetPeerings

vnetPeerings: {[key: string]: any};

A mapping of name - virtual network id of the virtual network peerings.

interface LocalNetworkGatewayArgs

The set of arguments for constructing a LocalNetworkGateway resource.

property addressSpaces

addressSpaces: pulumi.Input<pulumi.Input<string>[]>;

The list of string CIDRs representing the address spaces the gateway exposes.

property bgpSettings

bgpSettings?: pulumi.Input<{
    asn: pulumi.Input<number>;
    bgpPeeringAddress: pulumi.Input<string>;
    peerWeight: pulumi.Input<number>;
}>;

A bgp_settings block as defined below containing the Local Network Gateway’s BGP speaker settings.

property gatewayAddress

gatewayAddress: pulumi.Input<string>;

The IP address of the gateway to which to connect.

property location

location: pulumi.Input<string>;

The location/region where the local network gateway is created. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

The name of the local network gateway. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which to create the local network gateway.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

interface LocalNetworkGatewayState

Input properties used for looking up and filtering LocalNetworkGateway resources.

property addressSpaces

addressSpaces?: pulumi.Input<pulumi.Input<string>[]>;

The list of string CIDRs representing the address spaces the gateway exposes.

property bgpSettings

bgpSettings?: pulumi.Input<{
    asn: pulumi.Input<number>;
    bgpPeeringAddress: pulumi.Input<string>;
    peerWeight: pulumi.Input<number>;
}>;

A bgp_settings block as defined below containing the Local Network Gateway’s BGP speaker settings.

property gatewayAddress

gatewayAddress?: pulumi.Input<string>;

The IP address of the gateway to which to connect.

property location

location?: pulumi.Input<string>;

The location/region where the local network gateway is created. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

The name of the local network gateway. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the local network gateway.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

interface NetworkInterfaceApplicationGatewayBackendAddressPoolAssociationArgs

The set of arguments for constructing a NetworkInterfaceApplicationGatewayBackendAddressPoolAssociation resource.

property backendAddressPoolId

backendAddressPoolId: pulumi.Input<string>;

The ID of the Application Gateway’s Backend Address Pool which this Network Interface which should be connected to. Changing this forces a new resource to be created.

property ipConfigurationName

ipConfigurationName: pulumi.Input<string>;

The Name of the IP Configuration within the Network Interface which should be connected to the Backend Address Pool. Changing this forces a new resource to be created.

property networkInterfaceId

networkInterfaceId: pulumi.Input<string>;

The ID of the Network Interface. Changing this forces a new resource to be created.

interface NetworkInterfaceApplicationGatewayBackendAddressPoolAssociationState

Input properties used for looking up and filtering NetworkInterfaceApplicationGatewayBackendAddressPoolAssociation resources.

property backendAddressPoolId

backendAddressPoolId?: pulumi.Input<string>;

The ID of the Application Gateway’s Backend Address Pool which this Network Interface which should be connected to. Changing this forces a new resource to be created.

property ipConfigurationName

ipConfigurationName?: pulumi.Input<string>;

The Name of the IP Configuration within the Network Interface which should be connected to the Backend Address Pool. Changing this forces a new resource to be created.

property networkInterfaceId

networkInterfaceId?: pulumi.Input<string>;

The ID of the Network Interface. Changing this forces a new resource to be created.

interface NetworkInterfaceApplicationSecurityGroupAssociationArgs

The set of arguments for constructing a NetworkInterfaceApplicationSecurityGroupAssociation resource.

property applicationSecurityGroupId

applicationSecurityGroupId: pulumi.Input<string>;

The ID of the Application Security Group which this Network Interface which should be connected to. Changing this forces a new resource to be created.

property ipConfigurationName

ipConfigurationName: pulumi.Input<string>;

The Name of the IP Configuration within the Network Interface which should be connected to the Application Security Group. Changing this forces a new resource to be created.

property networkInterfaceId

networkInterfaceId: pulumi.Input<string>;

The ID of the Network Interface. Changing this forces a new resource to be created.

interface NetworkInterfaceApplicationSecurityGroupAssociationState

Input properties used for looking up and filtering NetworkInterfaceApplicationSecurityGroupAssociation resources.

property applicationSecurityGroupId

applicationSecurityGroupId?: pulumi.Input<string>;

The ID of the Application Security Group which this Network Interface which should be connected to. Changing this forces a new resource to be created.

property ipConfigurationName

ipConfigurationName?: pulumi.Input<string>;

The Name of the IP Configuration within the Network Interface which should be connected to the Application Security Group. Changing this forces a new resource to be created.

property networkInterfaceId

networkInterfaceId?: pulumi.Input<string>;

The ID of the Network Interface. Changing this forces a new resource to be created.

interface NetworkInterfaceArgs

The set of arguments for constructing a NetworkInterface resource.

property appliedDnsServers

appliedDnsServers?: pulumi.Input<pulumi.Input<string>[]>;

If the VM that uses this NIC is part of an Availability Set, then this list will have the union of all DNS servers from all NICs that are part of the Availability Set

property dnsServers

dnsServers?: pulumi.Input<pulumi.Input<string>[]>;

List of DNS servers IP addresses to use for this NIC, overrides the VNet-level server list

property enableAcceleratedNetworking

enableAcceleratedNetworking?: pulumi.Input<boolean>;

Enables Azure Accelerated Networking using SR-IOV. Only certain VM instance sizes are supported. Refer to Create a Virtual Machine with Accelerated Networking. Defaults to false.

property enableIpForwarding

enableIpForwarding?: pulumi.Input<boolean>;

Enables IP Forwarding on the NIC. Defaults to false.

property internalDnsNameLabel

internalDnsNameLabel?: pulumi.Input<string>;

Relative DNS name for this NIC used for internal communications between VMs in the same VNet

property internalFqdn

internalFqdn?: pulumi.Input<string>;

property ipConfigurations

ipConfigurations: pulumi.Input<pulumi.Input<{
    applicationGatewayBackendAddressPoolsIds: pulumi.Input<pulumi.Input<string>[]>;
    applicationSecurityGroupIds: pulumi.Input<pulumi.Input<string>[]>;
    loadBalancerBackendAddressPoolsIds: pulumi.Input<pulumi.Input<string>[]>;
    loadBalancerInboundNatRulesIds: pulumi.Input<pulumi.Input<string>[]>;
    name: pulumi.Input<string>;
    primary: pulumi.Input<boolean>;
    privateIpAddress: pulumi.Input<string>;
    privateIpAddressAllocation: pulumi.Input<string>;
    privateIpAddressVersion: pulumi.Input<string>;
    publicIpAddressId: pulumi.Input<string>;
    subnetId: pulumi.Input<string>;
}>[]>;

One or more ip_configuration associated with this NIC as documented below.

property location

location: pulumi.Input<string>;

The location/region where the network interface is created. Changing this forces a new resource to be created.

property macAddress

macAddress?: pulumi.Input<string>;

The media access control (MAC) address of the network interface.

property name

name?: pulumi.Input<string>;

The name of the network interface. Changing this forces a new resource to be created.

property networkSecurityGroupId

networkSecurityGroupId?: pulumi.Input<string>;

The ID of the Network Security Group to associate with the network interface.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which to create the network interface. Changing this forces a new resource to be created.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property virtualMachineId

virtualMachineId?: pulumi.Input<string>;

Reference to a VM with which this NIC has been associated.

interface NetworkInterfaceBackendAddressPoolAssociationArgs

The set of arguments for constructing a NetworkInterfaceBackendAddressPoolAssociation resource.

property backendAddressPoolId

backendAddressPoolId: pulumi.Input<string>;

The ID of the Load Balancer Backend Address Pool which this Network Interface which should be connected to. Changing this forces a new resource to be created.

property ipConfigurationName

ipConfigurationName: pulumi.Input<string>;

The Name of the IP Configuration within the Network Interface which should be connected to the Backend Address Pool. Changing this forces a new resource to be created.

property networkInterfaceId

networkInterfaceId: pulumi.Input<string>;

The ID of the Network Interface. Changing this forces a new resource to be created.

interface NetworkInterfaceBackendAddressPoolAssociationState

Input properties used for looking up and filtering NetworkInterfaceBackendAddressPoolAssociation resources.

property backendAddressPoolId

backendAddressPoolId?: pulumi.Input<string>;

The ID of the Load Balancer Backend Address Pool which this Network Interface which should be connected to. Changing this forces a new resource to be created.

property ipConfigurationName

ipConfigurationName?: pulumi.Input<string>;

The Name of the IP Configuration within the Network Interface which should be connected to the Backend Address Pool. Changing this forces a new resource to be created.

property networkInterfaceId

networkInterfaceId?: pulumi.Input<string>;

The ID of the Network Interface. Changing this forces a new resource to be created.

interface NetworkInterfaceNatRuleAssociationArgs

The set of arguments for constructing a NetworkInterfaceNatRuleAssociation resource.

property ipConfigurationName

ipConfigurationName: pulumi.Input<string>;

The Name of the IP Configuration within the Network Interface which should be connected to the NAT Rule. Changing this forces a new resource to be created.

property natRuleId

natRuleId: pulumi.Input<string>;

The ID of the Load Balancer NAT Rule which this Network Interface which should be connected to. Changing this forces a new resource to be created.

property networkInterfaceId

networkInterfaceId: pulumi.Input<string>;

The ID of the Network Interface. Changing this forces a new resource to be created.

interface NetworkInterfaceNatRuleAssociationState

Input properties used for looking up and filtering NetworkInterfaceNatRuleAssociation resources.

property ipConfigurationName

ipConfigurationName?: pulumi.Input<string>;

The Name of the IP Configuration within the Network Interface which should be connected to the NAT Rule. Changing this forces a new resource to be created.

property natRuleId

natRuleId?: pulumi.Input<string>;

The ID of the Load Balancer NAT Rule which this Network Interface which should be connected to. Changing this forces a new resource to be created.

property networkInterfaceId

networkInterfaceId?: pulumi.Input<string>;

The ID of the Network Interface. Changing this forces a new resource to be created.

interface NetworkInterfaceState

Input properties used for looking up and filtering NetworkInterface resources.

property appliedDnsServers

appliedDnsServers?: pulumi.Input<pulumi.Input<string>[]>;

If the VM that uses this NIC is part of an Availability Set, then this list will have the union of all DNS servers from all NICs that are part of the Availability Set

property dnsServers

dnsServers?: pulumi.Input<pulumi.Input<string>[]>;

List of DNS servers IP addresses to use for this NIC, overrides the VNet-level server list

property enableAcceleratedNetworking

enableAcceleratedNetworking?: pulumi.Input<boolean>;

Enables Azure Accelerated Networking using SR-IOV. Only certain VM instance sizes are supported. Refer to Create a Virtual Machine with Accelerated Networking. Defaults to false.

property enableIpForwarding

enableIpForwarding?: pulumi.Input<boolean>;

Enables IP Forwarding on the NIC. Defaults to false.

property internalDnsNameLabel

internalDnsNameLabel?: pulumi.Input<string>;

Relative DNS name for this NIC used for internal communications between VMs in the same VNet

property internalFqdn

internalFqdn?: pulumi.Input<string>;

property ipConfigurations

ipConfigurations?: pulumi.Input<pulumi.Input<{
    applicationGatewayBackendAddressPoolsIds: pulumi.Input<pulumi.Input<string>[]>;
    applicationSecurityGroupIds: pulumi.Input<pulumi.Input<string>[]>;
    loadBalancerBackendAddressPoolsIds: pulumi.Input<pulumi.Input<string>[]>;
    loadBalancerInboundNatRulesIds: pulumi.Input<pulumi.Input<string>[]>;
    name: pulumi.Input<string>;
    primary: pulumi.Input<boolean>;
    privateIpAddress: pulumi.Input<string>;
    privateIpAddressAllocation: pulumi.Input<string>;
    privateIpAddressVersion: pulumi.Input<string>;
    publicIpAddressId: pulumi.Input<string>;
    subnetId: pulumi.Input<string>;
}>[]>;

One or more ip_configuration associated with this NIC as documented below.

property location

location?: pulumi.Input<string>;

The location/region where the network interface is created. Changing this forces a new resource to be created.

property macAddress

macAddress?: pulumi.Input<string>;

The media access control (MAC) address of the network interface.

property name

name?: pulumi.Input<string>;

The name of the network interface. Changing this forces a new resource to be created.

property networkSecurityGroupId

networkSecurityGroupId?: pulumi.Input<string>;

The ID of the Network Security Group to associate with the network interface.

property privateIpAddress

privateIpAddress?: pulumi.Input<string>;

The first private IP address of the network interface.

property privateIpAddresses

privateIpAddresses?: pulumi.Input<pulumi.Input<string>[]>;

The private IP addresses of the network interface.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the network interface. Changing this forces a new resource to be created.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property virtualMachineId

virtualMachineId?: pulumi.Input<string>;

Reference to a VM with which this NIC has been associated.

interface NetworkSecurityGroupArgs

The set of arguments for constructing a NetworkSecurityGroup resource.

property location

location: pulumi.Input<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the network security group. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which to create the network security group. Changing this forces a new resource to be created.

property securityRules

securityRules?: pulumi.Input<pulumi.Input<{
    access: pulumi.Input<string>;
    description: pulumi.Input<string>;
    destinationAddressPrefix: pulumi.Input<string>;
    destinationAddressPrefixes: pulumi.Input<pulumi.Input<string>[]>;
    destinationApplicationSecurityGroupIds: pulumi.Input<pulumi.Input<string>[]>;
    destinationPortRange: pulumi.Input<string>;
    destinationPortRanges: pulumi.Input<pulumi.Input<string>[]>;
    direction: pulumi.Input<string>;
    name: pulumi.Input<string>;
    priority: pulumi.Input<number>;
    protocol: pulumi.Input<string>;
    sourceAddressPrefix: pulumi.Input<string>;
    sourceAddressPrefixes: pulumi.Input<pulumi.Input<string>[]>;
    sourceApplicationSecurityGroupIds: pulumi.Input<pulumi.Input<string>[]>;
    sourcePortRange: pulumi.Input<string>;
    sourcePortRanges: pulumi.Input<pulumi.Input<string>[]>;
}>[]>;

One or more security_rule blocks as defined below.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

interface NetworkSecurityGroupState

Input properties used for looking up and filtering NetworkSecurityGroup resources.

property location

location?: pulumi.Input<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the network security group. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the network security group. Changing this forces a new resource to be created.

property securityRules

securityRules?: pulumi.Input<pulumi.Input<{
    access: pulumi.Input<string>;
    description: pulumi.Input<string>;
    destinationAddressPrefix: pulumi.Input<string>;
    destinationAddressPrefixes: pulumi.Input<pulumi.Input<string>[]>;
    destinationApplicationSecurityGroupIds: pulumi.Input<pulumi.Input<string>[]>;
    destinationPortRange: pulumi.Input<string>;
    destinationPortRanges: pulumi.Input<pulumi.Input<string>[]>;
    direction: pulumi.Input<string>;
    name: pulumi.Input<string>;
    priority: pulumi.Input<number>;
    protocol: pulumi.Input<string>;
    sourceAddressPrefix: pulumi.Input<string>;
    sourceAddressPrefixes: pulumi.Input<pulumi.Input<string>[]>;
    sourceApplicationSecurityGroupIds: pulumi.Input<pulumi.Input<string>[]>;
    sourcePortRange: pulumi.Input<string>;
    sourcePortRanges: pulumi.Input<pulumi.Input<string>[]>;
}>[]>;

One or more security_rule blocks as defined below.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

interface NetworkSecurityRuleArgs

The set of arguments for constructing a NetworkSecurityRule resource.

property access

access: pulumi.Input<string>;

Specifies whether network traffic is allowed or denied. Possible values are Allow and Deny.

property description

description?: pulumi.Input<string>;

A description for this rule. Restricted to 140 characters.

property destinationAddressPrefix

destinationAddressPrefix?: pulumi.Input<string>;

CIDR or destination IP range or * to match any IP. Tags such as ‘VirtualNetwork’, ‘AzureLoadBalancer’ and ‘Internet’ can also be used. This is required if destination_address_prefixes is not specified.

property destinationAddressPrefixes

destinationAddressPrefixes?: pulumi.Input<pulumi.Input<string>[]>;

List of destination address prefixes. Tags may not be used. This is required if destination_address_prefix is not specified.

property destinationApplicationSecurityGroupIds

destinationApplicationSecurityGroupIds?: pulumi.Input<string>;

A List of destination Application Security Group ID’s

property destinationPortRange

destinationPortRange?: pulumi.Input<string>;

Destination Port or Range. Integer or range between 0 and 65535 or * to match any. This is required if destination_port_ranges is not specified.

property destinationPortRanges

destinationPortRanges?: pulumi.Input<pulumi.Input<string>[]>;

List of destination ports or port ranges. This is required if destination_port_range is not specified.

property direction

direction: pulumi.Input<string>;

The direction specifies if rule will be evaluated on incoming or outgoing traffic. Possible values are Inbound and Outbound.

property name

name?: pulumi.Input<string>;

The name of the security rule. This needs to be unique across all Rules in the Network Security Group. Changing this forces a new resource to be created.

property networkSecurityGroupName

networkSecurityGroupName: pulumi.Input<string>;

The name of the Network Security Group that we want to attach the rule to. Changing this forces a new resource to be created.

property priority

priority: pulumi.Input<number>;

Specifies the priority of the rule. The value can be between 100 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule.

property protocol

protocol: pulumi.Input<string>;

Network protocol this rule applies to. Possible values include Tcp, Udp or * (which matches both).

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which to create the Network Security Rule. Changing this forces a new resource to be created.

property sourceAddressPrefix

sourceAddressPrefix?: pulumi.Input<string>;

CIDR or source IP range or * to match any IP. Tags such as ‘VirtualNetwork’, ‘AzureLoadBalancer’ and ‘Internet’ can also be used. This is required if source_address_prefixes is not specified.

property sourceAddressPrefixes

sourceAddressPrefixes?: pulumi.Input<pulumi.Input<string>[]>;

List of source address prefixes. Tags may not be used. This is required if source_address_prefix is not specified.

property sourceApplicationSecurityGroupIds

sourceApplicationSecurityGroupIds?: pulumi.Input<string>;

A List of source Application Security Group ID’s

property sourcePortRange

sourcePortRange?: pulumi.Input<string>;

Source Port or Range. Integer or range between 0 and 65535 or * to match any. This is required if source_port_ranges is not specified.

property sourcePortRanges

sourcePortRanges?: pulumi.Input<pulumi.Input<string>[]>;

List of source ports or port ranges. This is required if source_port_range is not specified.

interface NetworkSecurityRuleState

Input properties used for looking up and filtering NetworkSecurityRule resources.

property access

access?: pulumi.Input<string>;

Specifies whether network traffic is allowed or denied. Possible values are Allow and Deny.

property description

description?: pulumi.Input<string>;

A description for this rule. Restricted to 140 characters.

property destinationAddressPrefix

destinationAddressPrefix?: pulumi.Input<string>;

CIDR or destination IP range or * to match any IP. Tags such as ‘VirtualNetwork’, ‘AzureLoadBalancer’ and ‘Internet’ can also be used. This is required if destination_address_prefixes is not specified.

property destinationAddressPrefixes

destinationAddressPrefixes?: pulumi.Input<pulumi.Input<string>[]>;

List of destination address prefixes. Tags may not be used. This is required if destination_address_prefix is not specified.

property destinationApplicationSecurityGroupIds

destinationApplicationSecurityGroupIds?: pulumi.Input<string>;

A List of destination Application Security Group ID’s

property destinationPortRange

destinationPortRange?: pulumi.Input<string>;

Destination Port or Range. Integer or range between 0 and 65535 or * to match any. This is required if destination_port_ranges is not specified.

property destinationPortRanges

destinationPortRanges?: pulumi.Input<pulumi.Input<string>[]>;

List of destination ports or port ranges. This is required if destination_port_range is not specified.

property direction

direction?: pulumi.Input<string>;

The direction specifies if rule will be evaluated on incoming or outgoing traffic. Possible values are Inbound and Outbound.

property name

name?: pulumi.Input<string>;

The name of the security rule. This needs to be unique across all Rules in the Network Security Group. Changing this forces a new resource to be created.

property networkSecurityGroupName

networkSecurityGroupName?: pulumi.Input<string>;

The name of the Network Security Group that we want to attach the rule to. Changing this forces a new resource to be created.

property priority

priority?: pulumi.Input<number>;

Specifies the priority of the rule. The value can be between 100 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule.

property protocol

protocol?: pulumi.Input<string>;

Network protocol this rule applies to. Possible values include Tcp, Udp or * (which matches both).

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the Network Security Rule. Changing this forces a new resource to be created.

property sourceAddressPrefix

sourceAddressPrefix?: pulumi.Input<string>;

CIDR or source IP range or * to match any IP. Tags such as ‘VirtualNetwork’, ‘AzureLoadBalancer’ and ‘Internet’ can also be used. This is required if source_address_prefixes is not specified.

property sourceAddressPrefixes

sourceAddressPrefixes?: pulumi.Input<pulumi.Input<string>[]>;

List of source address prefixes. Tags may not be used. This is required if source_address_prefix is not specified.

property sourceApplicationSecurityGroupIds

sourceApplicationSecurityGroupIds?: pulumi.Input<string>;

A List of source Application Security Group ID’s

property sourcePortRange

sourcePortRange?: pulumi.Input<string>;

Source Port or Range. Integer or range between 0 and 65535 or * to match any. This is required if source_port_ranges is not specified.

property sourcePortRanges

sourcePortRanges?: pulumi.Input<pulumi.Input<string>[]>;

List of source ports or port ranges. This is required if source_port_range is not specified.

interface NetworkWatcherArgs

The set of arguments for constructing a NetworkWatcher resource.

property location

location: pulumi.Input<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

The name of the Network Watcher. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which to create the Network Watcher. Changing this forces a new resource to be created.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

interface NetworkWatcherState

Input properties used for looking up and filtering NetworkWatcher resources.

property location

location?: pulumi.Input<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

The name of the Network Watcher. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the Network Watcher. Changing this forces a new resource to be created.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

interface PacketCaptureArgs

The set of arguments for constructing a PacketCapture resource.

property filters

filters?: pulumi.Input<pulumi.Input<{
    localIpAddress: pulumi.Input<string>;
    localPort: pulumi.Input<string>;
    protocol: pulumi.Input<string>;
    remoteIpAddress: pulumi.Input<string>;
    remotePort: pulumi.Input<string>;
}>[]>;

One or more filter blocks as defined below. Changing this forces a new resource to be created.

property maximumBytesPerPacket

maximumBytesPerPacket?: pulumi.Input<number>;

The number of bytes captured per packet. The remaining bytes are truncated. Defaults to 0 (Entire Packet Captured). Changing this forces a new resource to be created.

property maximumBytesPerSession

maximumBytesPerSession?: pulumi.Input<number>;

Maximum size of the capture in Bytes. Defaults to 1073741824 (1GB). Changing this forces a new resource to be created.

property maximumCaptureDuration

maximumCaptureDuration?: pulumi.Input<number>;

The maximum duration of the capture session in seconds. Defaults to 18000 (5 hours). Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

The name to use for this Packet Capture. Changing this forces a new resource to be created.

property networkWatcherName

networkWatcherName: pulumi.Input<string>;

The name of the Network Watcher. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which the Network Watcher exists. Changing this forces a new resource to be created.

property storageLocation

storageLocation: pulumi.Input<{
    filePath: pulumi.Input<string>;
    storageAccountId: pulumi.Input<string>;
    storagePath: pulumi.Input<string>;
}>;

A storage_location block as defined below. Changing this forces a new resource to be created.

property targetResourceId

targetResourceId: pulumi.Input<string>;

The ID of the Resource to capture packets from. Changing this forces a new resource to be created.

interface PacketCaptureState

Input properties used for looking up and filtering PacketCapture resources.

property filters

filters?: pulumi.Input<pulumi.Input<{
    localIpAddress: pulumi.Input<string>;
    localPort: pulumi.Input<string>;
    protocol: pulumi.Input<string>;
    remoteIpAddress: pulumi.Input<string>;
    remotePort: pulumi.Input<string>;
}>[]>;

One or more filter blocks as defined below. Changing this forces a new resource to be created.

property maximumBytesPerPacket

maximumBytesPerPacket?: pulumi.Input<number>;

The number of bytes captured per packet. The remaining bytes are truncated. Defaults to 0 (Entire Packet Captured). Changing this forces a new resource to be created.

property maximumBytesPerSession

maximumBytesPerSession?: pulumi.Input<number>;

Maximum size of the capture in Bytes. Defaults to 1073741824 (1GB). Changing this forces a new resource to be created.

property maximumCaptureDuration

maximumCaptureDuration?: pulumi.Input<number>;

The maximum duration of the capture session in seconds. Defaults to 18000 (5 hours). Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

The name to use for this Packet Capture. Changing this forces a new resource to be created.

property networkWatcherName

networkWatcherName?: pulumi.Input<string>;

The name of the Network Watcher. Changing this forces a new resource to be created.

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which the Network Watcher exists. Changing this forces a new resource to be created.

property storageLocation

storageLocation?: pulumi.Input<{
    filePath: pulumi.Input<string>;
    storageAccountId: pulumi.Input<string>;
    storagePath: pulumi.Input<string>;
}>;

A storage_location block as defined below. Changing this forces a new resource to be created.

property targetResourceId

targetResourceId?: pulumi.Input<string>;

The ID of the Resource to capture packets from. Changing this forces a new resource to be created.

interface PublicIpArgs

The set of arguments for constructing a PublicIp resource.

property allocationMethod

allocationMethod?: pulumi.Input<string>;

Defines the allocation method for this IP address. Possible values are Static or Dynamic.

property domainNameLabel

domainNameLabel?: pulumi.Input<string>;

Label for the Domain Name. Will be used to make up the FQDN. If a domain name label is specified, an A DNS record is created for the public IP in the Microsoft Azure DNS system.

property idleTimeoutInMinutes

idleTimeoutInMinutes?: pulumi.Input<number>;

Specifies the timeout for the TCP idle connection. The value can be set between 4 and 30 minutes.

property ipVersion

ipVersion?: pulumi.Input<string>;

The IP Version to use, IPv6 or IPv4.

property location

location: pulumi.Input<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the Public IP resource . Changing this forces a new resource to be created.

property publicIpAddressAllocation

publicIpAddressAllocation?: pulumi.Input<string>;

property resourceGroupName

resourceGroupName: pulumi.Input<string>;

The name of the resource group in which to create the public ip.

property reverseFqdn

reverseFqdn?: pulumi.Input<string>;

A fully qualified domain name that resolves to this public IP address. If the reverseFqdn is specified, then a PTR DNS record is created pointing from the IP address in the in-addr.arpa domain to the reverse FQDN.

property sku

sku?: pulumi.Input<string>;

The SKU of the Public IP. Accepted values are Basic and Standard. Defaults to Basic.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property zones

zones?: pulumi.Input<string>;

A collection containing the availability zone to allocate the Public IP in.

interface PublicIpState

Input properties used for looking up and filtering PublicIp resources.

property allocationMethod

allocationMethod?: pulumi.Input<string>;

Defines the allocation method for this IP address. Possible values are Static or Dynamic.

property domainNameLabel

domainNameLabel?: pulumi.Input<string>;

Label for the Domain Name. Will be used to make up the FQDN. If a domain name label is specified, an A DNS record is created for the public IP in the Microsoft Azure DNS system.

property fqdn

fqdn?: pulumi.Input<string>;

Fully qualified domain name of the A DNS record associated with the public IP. This is the concatenation of the domainNameLabel and the regionalized DNS zone

property idleTimeoutInMinutes

idleTimeoutInMinutes?: pulumi.Input<number>;

Specifies the timeout for the TCP idle connection. The value can be set between 4 and 30 minutes.

property ipAddress

ipAddress?: pulumi.Input<string>;

The IP address value that was allocated.

property ipVersion

ipVersion?: pulumi.Input<string>;

The IP Version to use, IPv6 or IPv4.

property location

location?: pulumi.Input<string>;

Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created.

property name

name?: pulumi.Input<string>;

Specifies the name of the Public IP resource . Changing this forces a new resource to be created.

property publicIpAddressAllocation

publicIpAddressAllocation?: pulumi.Input<string>;

property resourceGroupName

resourceGroupName?: pulumi.Input<string>;

The name of the resource group in which to create the public ip.

property reverseFqdn

reverseFqdn?: pulumi.Input<string>;

A fully qualified domain name that resolves to this public IP address. If the reverseFqdn is specified, then a PTR DNS record is created pointing from the IP address in the in-addr.arpa domain to the reverse FQDN.

property sku

sku?: pulumi.Input<string>;

The SKU of the Public IP. Accepted values are Basic and Standard. Defaults to Basic.

property tags

tags?: pulumi.Input<{[key: string]: any}>;

A mapping of tags to assign to the resource.

property zones

zones?: pulumi.Input<string>;

A collection containing the availability zone to allocate the Public IP in.