azure-native.network.UserRule

Explore with Pulumi AI

Network security user rule. API Version: 2021-02-01-preview.

Example Usage

Create a default user rule

using System.Collections.Generic;
using Pulumi;
using AzureNative = Pulumi.AzureNative;

return await Deployment.RunAsync(() => 
{
    var userRule = new AzureNative.Network.UserRule("userRule", new()
    {
        ConfigurationName = "myTestSecurityConfig",
        NetworkManagerName = "testNetworkManager",
        ResourceGroupName = "rg1",
        RuleCollectionName = "testRuleCollection",
        RuleName = "SampleDefaultUserRule",
    });

});
package main

import (
	network "github.com/pulumi/pulumi-azure-native/sdk/go/azure/network"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := network.NewUserRule(ctx, "userRule", &network.UserRuleArgs{
			ConfigurationName:  pulumi.String("myTestSecurityConfig"),
			NetworkManagerName: pulumi.String("testNetworkManager"),
			ResourceGroupName:  pulumi.String("rg1"),
			RuleCollectionName: pulumi.String("testRuleCollection"),
			RuleName:           pulumi.String("SampleDefaultUserRule"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.network.UserRule;
import com.pulumi.azurenative.network.UserRuleArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var userRule = new UserRule("userRule", UserRuleArgs.builder()        
            .configurationName("myTestSecurityConfig")
            .networkManagerName("testNetworkManager")
            .resourceGroupName("rg1")
            .ruleCollectionName("testRuleCollection")
            .ruleName("SampleDefaultUserRule")
            .build());

    }
}
import pulumi
import pulumi_azure_native as azure_native

user_rule = azure_native.network.UserRule("userRule",
    configuration_name="myTestSecurityConfig",
    network_manager_name="testNetworkManager",
    resource_group_name="rg1",
    rule_collection_name="testRuleCollection",
    rule_name="SampleDefaultUserRule")
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";

const userRule = new azure_native.network.UserRule("userRule", {
    configurationName: "myTestSecurityConfig",
    networkManagerName: "testNetworkManager",
    resourceGroupName: "rg1",
    ruleCollectionName: "testRuleCollection",
    ruleName: "SampleDefaultUserRule",
});
resources:
  userRule:
    type: azure-native:network:UserRule
    properties:
      configurationName: myTestSecurityConfig
      networkManagerName: testNetworkManager
      resourceGroupName: rg1
      ruleCollectionName: testRuleCollection
      ruleName: SampleDefaultUserRule

Create a user rule

using System.Collections.Generic;
using Pulumi;
using AzureNative = Pulumi.AzureNative;

return await Deployment.RunAsync(() => 
{
    var userRule = new AzureNative.Network.UserRule("userRule", new()
    {
        ConfigurationName = "myTestSecurityConfig",
        Description = "Sample User Rule",
        DestinationPortRanges = new[]
        {
            "22",
        },
        Destinations = new[]
        {
            new AzureNative.Network.Inputs.AddressPrefixItemArgs
            {
                AddressPrefix = "*",
                AddressPrefixType = "IPPrefix",
            },
        },
        Direction = "Inbound",
        Kind = "Custom",
        NetworkManagerName = "testNetworkManager",
        Protocol = "Tcp",
        ResourceGroupName = "rg1",
        RuleCollectionName = "testRuleCollection",
        RuleName = "SampleUserRule",
        SourcePortRanges = new[]
        {
            "0-65535",
        },
        Sources = new[]
        {
            new AzureNative.Network.Inputs.AddressPrefixItemArgs
            {
                AddressPrefix = "*",
                AddressPrefixType = "IPPrefix",
            },
        },
    });

});
package main

import (
	network "github.com/pulumi/pulumi-azure-native/sdk/go/azure/network"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := network.NewUserRule(ctx, "userRule", &network.UserRuleArgs{
			ConfigurationName: pulumi.String("myTestSecurityConfig"),
			Description:       pulumi.String("Sample User Rule"),
			DestinationPortRanges: pulumi.StringArray{
				pulumi.String("22"),
			},
			Destinations: []network.AddressPrefixItemArgs{
				{
					AddressPrefix:     pulumi.String("*"),
					AddressPrefixType: pulumi.String("IPPrefix"),
				},
			},
			Direction:          pulumi.String("Inbound"),
			Kind:               pulumi.String("Custom"),
			NetworkManagerName: pulumi.String("testNetworkManager"),
			Protocol:           pulumi.String("Tcp"),
			ResourceGroupName:  pulumi.String("rg1"),
			RuleCollectionName: pulumi.String("testRuleCollection"),
			RuleName:           pulumi.String("SampleUserRule"),
			SourcePortRanges: pulumi.StringArray{
				pulumi.String("0-65535"),
			},
			Sources: []network.AddressPrefixItemArgs{
				{
					AddressPrefix:     pulumi.String("*"),
					AddressPrefixType: pulumi.String("IPPrefix"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.network.UserRule;
import com.pulumi.azurenative.network.UserRuleArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var userRule = new UserRule("userRule", UserRuleArgs.builder()        
            .configurationName("myTestSecurityConfig")
            .description("Sample User Rule")
            .destinationPortRanges("22")
            .destinations(Map.ofEntries(
                Map.entry("addressPrefix", "*"),
                Map.entry("addressPrefixType", "IPPrefix")
            ))
            .direction("Inbound")
            .kind("Custom")
            .networkManagerName("testNetworkManager")
            .protocol("Tcp")
            .resourceGroupName("rg1")
            .ruleCollectionName("testRuleCollection")
            .ruleName("SampleUserRule")
            .sourcePortRanges("0-65535")
            .sources(Map.ofEntries(
                Map.entry("addressPrefix", "*"),
                Map.entry("addressPrefixType", "IPPrefix")
            ))
            .build());

    }
}
import pulumi
import pulumi_azure_native as azure_native

user_rule = azure_native.network.UserRule("userRule",
    configuration_name="myTestSecurityConfig",
    description="Sample User Rule",
    destination_port_ranges=["22"],
    destinations=[azure_native.network.AddressPrefixItemArgs(
        address_prefix="*",
        address_prefix_type="IPPrefix",
    )],
    direction="Inbound",
    kind="Custom",
    network_manager_name="testNetworkManager",
    protocol="Tcp",
    resource_group_name="rg1",
    rule_collection_name="testRuleCollection",
    rule_name="SampleUserRule",
    source_port_ranges=["0-65535"],
    sources=[azure_native.network.AddressPrefixItemArgs(
        address_prefix="*",
        address_prefix_type="IPPrefix",
    )])
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";

const userRule = new azure_native.network.UserRule("userRule", {
    configurationName: "myTestSecurityConfig",
    description: "Sample User Rule",
    destinationPortRanges: ["22"],
    destinations: [{
        addressPrefix: "*",
        addressPrefixType: "IPPrefix",
    }],
    direction: "Inbound",
    kind: "Custom",
    networkManagerName: "testNetworkManager",
    protocol: "Tcp",
    resourceGroupName: "rg1",
    ruleCollectionName: "testRuleCollection",
    ruleName: "SampleUserRule",
    sourcePortRanges: ["0-65535"],
    sources: [{
        addressPrefix: "*",
        addressPrefixType: "IPPrefix",
    }],
});
resources:
  userRule:
    type: azure-native:network:UserRule
    properties:
      configurationName: myTestSecurityConfig
      description: Sample User Rule
      destinationPortRanges:
        - '22'
      destinations:
        - addressPrefix: '*'
          addressPrefixType: IPPrefix
      direction: Inbound
      kind: Custom
      networkManagerName: testNetworkManager
      protocol: Tcp
      resourceGroupName: rg1
      ruleCollectionName: testRuleCollection
      ruleName: SampleUserRule
      sourcePortRanges:
        - 0-65535
      sources:
        - addressPrefix: '*'
          addressPrefixType: IPPrefix

Create UserRule Resource

new UserRule(name: string, args: UserRuleArgs, opts?: CustomResourceOptions);
@overload
def UserRule(resource_name: str,
             opts: Optional[ResourceOptions] = None,
             configuration_name: Optional[str] = None,
             description: Optional[str] = None,
             destination_port_ranges: Optional[Sequence[str]] = None,
             destinations: Optional[Sequence[AddressPrefixItemArgs]] = None,
             direction: Optional[Union[str, SecurityConfigurationRuleDirection]] = None,
             display_name: Optional[str] = None,
             network_manager_name: Optional[str] = None,
             protocol: Optional[Union[str, SecurityConfigurationRuleProtocol]] = None,
             resource_group_name: Optional[str] = None,
             rule_collection_name: Optional[str] = None,
             rule_name: Optional[str] = None,
             source_port_ranges: Optional[Sequence[str]] = None,
             sources: Optional[Sequence[AddressPrefixItemArgs]] = None)
@overload
def UserRule(resource_name: str,
             args: UserRuleArgs,
             opts: Optional[ResourceOptions] = None)
func NewUserRule(ctx *Context, name string, args UserRuleArgs, opts ...ResourceOption) (*UserRule, error)
public UserRule(string name, UserRuleArgs args, CustomResourceOptions? opts = null)
public UserRule(String name, UserRuleArgs args)
public UserRule(String name, UserRuleArgs args, CustomResourceOptions options)
type: azure-native:network:UserRule
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

name string
The unique name of the resource.
args UserRuleArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
args UserRuleArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args UserRuleArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args UserRuleArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name String
The unique name of the resource.
args UserRuleArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

UserRule Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

The UserRule resource accepts the following input properties:

ConfigurationName string

The name of the network manager security Configuration.

Direction string | Pulumi.AzureNative.Network.SecurityConfigurationRuleDirection

Indicates if the traffic matched against the rule in inbound or outbound.

NetworkManagerName string

The name of the network manager.

Protocol string | Pulumi.AzureNative.Network.SecurityConfigurationRuleProtocol

Network protocol this rule applies to.

ResourceGroupName string

The name of the resource group.

RuleCollectionName string

The name of the network manager security Configuration rule collection.

Description string

A description for this rule.

DestinationPortRanges List<string>

The destination port ranges.

Destinations List<Pulumi.AzureNative.Network.Inputs.AddressPrefixItemArgs>

The destination address prefixes. CIDR or destination IP ranges.

DisplayName string

A friendly name for the rule.

RuleName string

The name of the rule.

SourcePortRanges List<string>

The source port ranges.

Sources List<Pulumi.AzureNative.Network.Inputs.AddressPrefixItemArgs>

The CIDR or source IP ranges.

ConfigurationName string

The name of the network manager security Configuration.

Direction string | SecurityConfigurationRuleDirection

Indicates if the traffic matched against the rule in inbound or outbound.

NetworkManagerName string

The name of the network manager.

Protocol string | SecurityConfigurationRuleProtocol

Network protocol this rule applies to.

ResourceGroupName string

The name of the resource group.

RuleCollectionName string

The name of the network manager security Configuration rule collection.

Description string

A description for this rule.

DestinationPortRanges []string

The destination port ranges.

Destinations []AddressPrefixItemArgs

The destination address prefixes. CIDR or destination IP ranges.

DisplayName string

A friendly name for the rule.

RuleName string

The name of the rule.

SourcePortRanges []string

The source port ranges.

Sources []AddressPrefixItemArgs

The CIDR or source IP ranges.

configurationName String

The name of the network manager security Configuration.

direction String | SecurityConfigurationRuleDirection

Indicates if the traffic matched against the rule in inbound or outbound.

networkManagerName String

The name of the network manager.

protocol String | SecurityConfigurationRuleProtocol

Network protocol this rule applies to.

resourceGroupName String

The name of the resource group.

ruleCollectionName String

The name of the network manager security Configuration rule collection.

description String

A description for this rule.

destinationPortRanges List<String>

The destination port ranges.

destinations List<AddressPrefixItemArgs>

The destination address prefixes. CIDR or destination IP ranges.

displayName String

A friendly name for the rule.

ruleName String

The name of the rule.

sourcePortRanges List<String>

The source port ranges.

sources List<AddressPrefixItemArgs>

The CIDR or source IP ranges.

configurationName string

The name of the network manager security Configuration.

direction string | SecurityConfigurationRuleDirection

Indicates if the traffic matched against the rule in inbound or outbound.

networkManagerName string

The name of the network manager.

protocol string | SecurityConfigurationRuleProtocol

Network protocol this rule applies to.

resourceGroupName string

The name of the resource group.

ruleCollectionName string

The name of the network manager security Configuration rule collection.

description string

A description for this rule.

destinationPortRanges string[]

The destination port ranges.

destinations AddressPrefixItemArgs[]

The destination address prefixes. CIDR or destination IP ranges.

displayName string

A friendly name for the rule.

ruleName string

The name of the rule.

sourcePortRanges string[]

The source port ranges.

sources AddressPrefixItemArgs[]

The CIDR or source IP ranges.

configuration_name str

The name of the network manager security Configuration.

direction str | SecurityConfigurationRuleDirection

Indicates if the traffic matched against the rule in inbound or outbound.

network_manager_name str

The name of the network manager.

protocol str | SecurityConfigurationRuleProtocol

Network protocol this rule applies to.

resource_group_name str

The name of the resource group.

rule_collection_name str

The name of the network manager security Configuration rule collection.

description str

A description for this rule.

destination_port_ranges Sequence[str]

The destination port ranges.

destinations Sequence[AddressPrefixItemArgs]

The destination address prefixes. CIDR or destination IP ranges.

display_name str

A friendly name for the rule.

rule_name str

The name of the rule.

source_port_ranges Sequence[str]

The source port ranges.

sources Sequence[AddressPrefixItemArgs]

The CIDR or source IP ranges.

configurationName String

The name of the network manager security Configuration.

direction String | "Inbound" | "Outbound"

Indicates if the traffic matched against the rule in inbound or outbound.

networkManagerName String

The name of the network manager.

protocol String | "Tcp" | "Udp" | "Icmp" | "Esp" | "Any" | "Ah"

Network protocol this rule applies to.

resourceGroupName String

The name of the resource group.

ruleCollectionName String

The name of the network manager security Configuration rule collection.

description String

A description for this rule.

destinationPortRanges List<String>

The destination port ranges.

destinations List<Property Map>

The destination address prefixes. CIDR or destination IP ranges.

displayName String

A friendly name for the rule.

ruleName String

The name of the rule.

sourcePortRanges List<String>

The source port ranges.

sources List<Property Map>

The CIDR or source IP ranges.

Outputs

All input properties are implicitly available as output properties. Additionally, the UserRule resource produces the following output properties:

Etag string

A unique read-only string that changes whenever the resource is updated.

Id string

The provider-assigned unique ID for this managed resource.

Name string

Resource name.

ProvisioningState string

The provisioning state of the security configuration user rule resource.

SystemData Pulumi.AzureNative.Network.Outputs.SystemDataResponse

The system metadata related to this resource.

Type string

Resource type.

Etag string

A unique read-only string that changes whenever the resource is updated.

Id string

The provider-assigned unique ID for this managed resource.

Name string

Resource name.

ProvisioningState string

The provisioning state of the security configuration user rule resource.

SystemData SystemDataResponse

The system metadata related to this resource.

Type string

Resource type.

etag String

A unique read-only string that changes whenever the resource is updated.

id String

The provider-assigned unique ID for this managed resource.

name String

Resource name.

provisioningState String

The provisioning state of the security configuration user rule resource.

systemData SystemDataResponse

The system metadata related to this resource.

type String

Resource type.

etag string

A unique read-only string that changes whenever the resource is updated.

id string

The provider-assigned unique ID for this managed resource.

name string

Resource name.

provisioningState string

The provisioning state of the security configuration user rule resource.

systemData SystemDataResponse

The system metadata related to this resource.

type string

Resource type.

etag str

A unique read-only string that changes whenever the resource is updated.

id str

The provider-assigned unique ID for this managed resource.

name str

Resource name.

provisioning_state str

The provisioning state of the security configuration user rule resource.

system_data SystemDataResponse

The system metadata related to this resource.

type str

Resource type.

etag String

A unique read-only string that changes whenever the resource is updated.

id String

The provider-assigned unique ID for this managed resource.

name String

Resource name.

provisioningState String

The provisioning state of the security configuration user rule resource.

systemData Property Map

The system metadata related to this resource.

type String

Resource type.

Supporting Types

AddressPrefixItem

AddressPrefix string

Address prefix.

AddressPrefixType string | Pulumi.AzureNative.Network.AddressPrefixType

Address prefix type.

AddressPrefix string

Address prefix.

AddressPrefixType string | AddressPrefixType

Address prefix type.

addressPrefix String

Address prefix.

addressPrefixType String | AddressPrefixType

Address prefix type.

addressPrefix string

Address prefix.

addressPrefixType string | AddressPrefixType

Address prefix type.

address_prefix str

Address prefix.

address_prefix_type str | AddressPrefixType

Address prefix type.

addressPrefix String

Address prefix.

addressPrefixType String | "IPPrefix" | "ServiceTag"

Address prefix type.

AddressPrefixItemResponse

AddressPrefix string

Address prefix.

AddressPrefixType string

Address prefix type.

AddressPrefix string

Address prefix.

AddressPrefixType string

Address prefix type.

addressPrefix String

Address prefix.

addressPrefixType String

Address prefix type.

addressPrefix string

Address prefix.

addressPrefixType string

Address prefix type.

address_prefix str

Address prefix.

address_prefix_type str

Address prefix type.

addressPrefix String

Address prefix.

addressPrefixType String

Address prefix type.

AddressPrefixType

IPPrefix
IPPrefix
ServiceTag
ServiceTag
AddressPrefixTypeIPPrefix
IPPrefix
AddressPrefixTypeServiceTag
ServiceTag
IPPrefix
IPPrefix
ServiceTag
ServiceTag
IPPrefix
IPPrefix
ServiceTag
ServiceTag
IP_PREFIX
IPPrefix
SERVICE_TAG
ServiceTag
"IPPrefix"
IPPrefix
"ServiceTag"
ServiceTag

SecurityConfigurationRuleDirection

Inbound
Inbound
Outbound
Outbound
SecurityConfigurationRuleDirectionInbound
Inbound
SecurityConfigurationRuleDirectionOutbound
Outbound
Inbound
Inbound
Outbound
Outbound
Inbound
Inbound
Outbound
Outbound
INBOUND
Inbound
OUTBOUND
Outbound
"Inbound"
Inbound
"Outbound"
Outbound

SecurityConfigurationRuleProtocol

Tcp
Tcp
Udp
Udp
Icmp
Icmp
Esp
Esp
Any
Any
Ah
Ah
SecurityConfigurationRuleProtocolTcp
Tcp
SecurityConfigurationRuleProtocolUdp
Udp
SecurityConfigurationRuleProtocolIcmp
Icmp
SecurityConfigurationRuleProtocolEsp
Esp
SecurityConfigurationRuleProtocolAny
Any
SecurityConfigurationRuleProtocolAh
Ah
Tcp
Tcp
Udp
Udp
Icmp
Icmp
Esp
Esp
Any
Any
Ah
Ah
Tcp
Tcp
Udp
Udp
Icmp
Icmp
Esp
Esp
Any
Any
Ah
Ah
TCP
Tcp
UDP
Udp
ICMP
Icmp
ESP
Esp
ANY
Any
AH
Ah
"Tcp"
Tcp
"Udp"
Udp
"Icmp"
Icmp
"Esp"
Esp
"Any"
Any
"Ah"
Ah

SystemDataResponse

CreatedAt string

The timestamp of resource creation (UTC).

CreatedBy string

The identity that created the resource.

CreatedByType string

The type of identity that created the resource.

LastModifiedAt string

The type of identity that last modified the resource.

LastModifiedBy string

The identity that last modified the resource.

LastModifiedByType string

The type of identity that last modified the resource.

CreatedAt string

The timestamp of resource creation (UTC).

CreatedBy string

The identity that created the resource.

CreatedByType string

The type of identity that created the resource.

LastModifiedAt string

The type of identity that last modified the resource.

LastModifiedBy string

The identity that last modified the resource.

LastModifiedByType string

The type of identity that last modified the resource.

createdAt String

The timestamp of resource creation (UTC).

createdBy String

The identity that created the resource.

createdByType String

The type of identity that created the resource.

lastModifiedAt String

The type of identity that last modified the resource.

lastModifiedBy String

The identity that last modified the resource.

lastModifiedByType String

The type of identity that last modified the resource.

createdAt string

The timestamp of resource creation (UTC).

createdBy string

The identity that created the resource.

createdByType string

The type of identity that created the resource.

lastModifiedAt string

The type of identity that last modified the resource.

lastModifiedBy string

The identity that last modified the resource.

lastModifiedByType string

The type of identity that last modified the resource.

created_at str

The timestamp of resource creation (UTC).

created_by str

The identity that created the resource.

created_by_type str

The type of identity that created the resource.

last_modified_at str

The type of identity that last modified the resource.

last_modified_by str

The identity that last modified the resource.

last_modified_by_type str

The type of identity that last modified the resource.

createdAt String

The timestamp of resource creation (UTC).

createdBy String

The identity that created the resource.

createdByType String

The type of identity that created the resource.

lastModifiedAt String

The type of identity that last modified the resource.

lastModifiedBy String

The identity that last modified the resource.

lastModifiedByType String

The type of identity that last modified the resource.

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:network:UserRule SampleUserRule /subscriptions/subId/resourceGroups/rg1/providers/Microsoft.Network/networkManagers/testNetworkManager/SecurityUserConfigurations/Policy1/ruleCollections/testRuleCollection/rules/SampleUserRule 

Package Details

Repository
Azure Native pulumi/pulumi-azure-native
License
Apache-2.0