Endpoint

Manages a Private Endpoint.

Azure Private Endpoint is a network interface that connects you privately and securely to a service powered by Azure Private Link. Private Endpoint uses a private IP address from your VNet, effectively bringing the service into your VNet. The service could be an Azure service such as Azure Storage, SQL, etc. or your own Private Link Service.

Example Usage

using Pulumi;
using Azure = Pulumi.Azure;

class MyStack : Stack
{
    public MyStack()
    {
        var exampleResourceGroup = new Azure.Core.ResourceGroup("exampleResourceGroup", new Azure.Core.ResourceGroupArgs
        {
            Location = "West Europe",
        });
        var exampleVirtualNetwork = new Azure.Network.VirtualNetwork("exampleVirtualNetwork", new Azure.Network.VirtualNetworkArgs
        {
            AddressSpaces = 
            {
                "10.0.0.0/16",
            },
            Location = exampleResourceGroup.Location,
            ResourceGroupName = exampleResourceGroup.Name,
        });
        var service = new Azure.Network.Subnet("service", new Azure.Network.SubnetArgs
        {
            ResourceGroupName = exampleResourceGroup.Name,
            VirtualNetworkName = exampleVirtualNetwork.Name,
            AddressPrefixes = 
            {
                "10.0.1.0/24",
            },
            EnforcePrivateLinkServiceNetworkPolicies = true,
        });
        var endpoint = new Azure.Network.Subnet("endpoint", new Azure.Network.SubnetArgs
        {
            ResourceGroupName = exampleResourceGroup.Name,
            VirtualNetworkName = exampleVirtualNetwork.Name,
            AddressPrefixes = 
            {
                "10.0.2.0/24",
            },
            EnforcePrivateLinkEndpointNetworkPolicies = true,
        });
        var examplePublicIp = new Azure.Network.PublicIp("examplePublicIp", new Azure.Network.PublicIpArgs
        {
            Sku = "Standard",
            Location = exampleResourceGroup.Location,
            ResourceGroupName = exampleResourceGroup.Name,
            AllocationMethod = "Static",
        });
        var exampleLoadBalancer = new Azure.Lb.LoadBalancer("exampleLoadBalancer", new Azure.Lb.LoadBalancerArgs
        {
            Sku = "Standard",
            Location = exampleResourceGroup.Location,
            ResourceGroupName = exampleResourceGroup.Name,
            FrontendIpConfigurations = 
            {
                new Azure.Lb.Inputs.LoadBalancerFrontendIpConfigurationArgs
                {
                    Name = examplePublicIp.Name,
                    PublicIpAddressId = examplePublicIp.Id,
                },
            },
        });
        var exampleLinkService = new Azure.PrivateDns.LinkService("exampleLinkService", new Azure.PrivateDns.LinkServiceArgs
        {
            Location = exampleResourceGroup.Location,
            ResourceGroupName = exampleResourceGroup.Name,
            NatIpConfigurations = 
            {
                new Azure.PrivateDns.Inputs.LinkServiceNatIpConfigurationArgs
                {
                    Name = examplePublicIp.Name,
                    Primary = true,
                    SubnetId = service.Id,
                },
            },
            LoadBalancerFrontendIpConfigurationIds = 
            {
                exampleLoadBalancer.FrontendIpConfigurations.Apply(frontendIpConfigurations => frontendIpConfigurations[0].Id),
            },
        });
        var exampleEndpoint = new Azure.PrivateLink.Endpoint("exampleEndpoint", new Azure.PrivateLink.EndpointArgs
        {
            Location = exampleResourceGroup.Location,
            ResourceGroupName = exampleResourceGroup.Name,
            SubnetId = endpoint.Id,
            PrivateServiceConnection = new Azure.PrivateLink.Inputs.EndpointPrivateServiceConnectionArgs
            {
                Name = "example-privateserviceconnection",
                PrivateConnectionResourceId = exampleLinkService.Id,
                IsManualConnection = false,
            },
        });
    }

}
package main

import (
	"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
	"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/lb"
	"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/network"
	"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/privatedns"
	"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/privatelink"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		exampleResourceGroup, err := core.NewResourceGroup(ctx, "exampleResourceGroup", &core.ResourceGroupArgs{
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "exampleVirtualNetwork", &network.VirtualNetworkArgs{
			AddressSpaces: pulumi.StringArray{
				pulumi.String("10.0.0.0/16"),
			},
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
		})
		if err != nil {
			return err
		}
		service, err := network.NewSubnet(ctx, "service", &network.SubnetArgs{
			ResourceGroupName:  exampleResourceGroup.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.1.0/24"),
			},
			EnforcePrivateLinkServiceNetworkPolicies: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		endpoint, err := network.NewSubnet(ctx, "endpoint", &network.SubnetArgs{
			ResourceGroupName:  exampleResourceGroup.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.2.0/24"),
			},
			EnforcePrivateLinkEndpointNetworkPolicies: pulumi.Bool(true),
		})
		if err != nil {
			return err
		}
		examplePublicIp, err := network.NewPublicIp(ctx, "examplePublicIp", &network.PublicIpArgs{
			Sku:               pulumi.String("Standard"),
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			AllocationMethod:  pulumi.String("Static"),
		})
		if err != nil {
			return err
		}
		exampleLoadBalancer, err := lb.NewLoadBalancer(ctx, "exampleLoadBalancer", &lb.LoadBalancerArgs{
			Sku:               pulumi.String("Standard"),
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			FrontendIpConfigurations: lb.LoadBalancerFrontendIpConfigurationArray{
				&lb.LoadBalancerFrontendIpConfigurationArgs{
					Name:              examplePublicIp.Name,
					PublicIpAddressId: examplePublicIp.ID(),
				},
			},
		})
		if err != nil {
			return err
		}
		exampleLinkService, err := privatedns.NewLinkService(ctx, "exampleLinkService", &privatedns.LinkServiceArgs{
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			NatIpConfigurations: privatedns.LinkServiceNatIpConfigurationArray{
				&privatedns.LinkServiceNatIpConfigurationArgs{
					Name:     examplePublicIp.Name,
					Primary:  pulumi.Bool(true),
					SubnetId: service.ID(),
				},
			},
			LoadBalancerFrontendIpConfigurationIds: pulumi.StringArray{
				pulumi.String(exampleLoadBalancer.FrontendIpConfigurations.ApplyT(func(frontendIpConfigurations []lb.LoadBalancerFrontendIpConfiguration) (string, error) {
					return frontendIpConfigurations[0].Id, nil
				}).(pulumi.StringOutput)),
			},
		})
		if err != nil {
			return err
		}
		_, err = privatelink.NewEndpoint(ctx, "exampleEndpoint", &privatelink.EndpointArgs{
			Location:          exampleResourceGroup.Location,
			ResourceGroupName: exampleResourceGroup.Name,
			SubnetId:          endpoint.ID(),
			PrivateServiceConnection: &privatelink.EndpointPrivateServiceConnectionArgs{
				Name:                        pulumi.String("example-privateserviceconnection"),
				PrivateConnectionResourceId: exampleLinkService.ID(),
				IsManualConnection:          pulumi.Bool(false),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
import pulumi
import pulumi_azure as azure

example_resource_group = azure.core.ResourceGroup("exampleResourceGroup", location="West Europe")
example_virtual_network = azure.network.VirtualNetwork("exampleVirtualNetwork",
    address_spaces=["10.0.0.0/16"],
    location=example_resource_group.location,
    resource_group_name=example_resource_group.name)
service = azure.network.Subnet("service",
    resource_group_name=example_resource_group.name,
    virtual_network_name=example_virtual_network.name,
    address_prefixes=["10.0.1.0/24"],
    enforce_private_link_service_network_policies=True)
endpoint = azure.network.Subnet("endpoint",
    resource_group_name=example_resource_group.name,
    virtual_network_name=example_virtual_network.name,
    address_prefixes=["10.0.2.0/24"],
    enforce_private_link_endpoint_network_policies=True)
example_public_ip = azure.network.PublicIp("examplePublicIp",
    sku="Standard",
    location=example_resource_group.location,
    resource_group_name=example_resource_group.name,
    allocation_method="Static")
example_load_balancer = azure.lb.LoadBalancer("exampleLoadBalancer",
    sku="Standard",
    location=example_resource_group.location,
    resource_group_name=example_resource_group.name,
    frontend_ip_configurations=[azure.lb.LoadBalancerFrontendIpConfigurationArgs(
        name=example_public_ip.name,
        public_ip_address_id=example_public_ip.id,
    )])
example_link_service = azure.privatedns.LinkService("exampleLinkService",
    location=example_resource_group.location,
    resource_group_name=example_resource_group.name,
    nat_ip_configurations=[azure.privatedns.LinkServiceNatIpConfigurationArgs(
        name=example_public_ip.name,
        primary=True,
        subnet_id=service.id,
    )],
    load_balancer_frontend_ip_configuration_ids=[example_load_balancer.frontend_ip_configurations[0].id])
example_endpoint = azure.privatelink.Endpoint("exampleEndpoint",
    location=example_resource_group.location,
    resource_group_name=example_resource_group.name,
    subnet_id=endpoint.id,
    private_service_connection=azure.privatelink.EndpointPrivateServiceConnectionArgs(
        name="example-privateserviceconnection",
        private_connection_resource_id=example_link_service.id,
        is_manual_connection=False,
    ))
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const exampleResourceGroup = new azure.core.ResourceGroup("exampleResourceGroup", {location: "West Europe"});
const exampleVirtualNetwork = new azure.network.VirtualNetwork("exampleVirtualNetwork", {
    addressSpaces: ["10.0.0.0/16"],
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
});
const service = new azure.network.Subnet("service", {
    resourceGroupName: exampleResourceGroup.name,
    virtualNetworkName: exampleVirtualNetwork.name,
    addressPrefixes: ["10.0.1.0/24"],
    enforcePrivateLinkServiceNetworkPolicies: true,
});
const endpoint = new azure.network.Subnet("endpoint", {
    resourceGroupName: exampleResourceGroup.name,
    virtualNetworkName: exampleVirtualNetwork.name,
    addressPrefixes: ["10.0.2.0/24"],
    enforcePrivateLinkEndpointNetworkPolicies: true,
});
const examplePublicIp = new azure.network.PublicIp("examplePublicIp", {
    sku: "Standard",
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    allocationMethod: "Static",
});
const exampleLoadBalancer = new azure.lb.LoadBalancer("exampleLoadBalancer", {
    sku: "Standard",
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    frontendIpConfigurations: [{
        name: examplePublicIp.name,
        publicIpAddressId: examplePublicIp.id,
    }],
});
const exampleLinkService = new azure.privatedns.LinkService("exampleLinkService", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    natIpConfigurations: [{
        name: examplePublicIp.name,
        primary: true,
        subnetId: service.id,
    }],
    loadBalancerFrontendIpConfigurationIds: [exampleLoadBalancer.frontendIpConfigurations.apply(frontendIpConfigurations => frontendIpConfigurations[0].id)],
});
const exampleEndpoint = new azure.privatelink.Endpoint("exampleEndpoint", {
    location: exampleResourceGroup.location,
    resourceGroupName: exampleResourceGroup.name,
    subnetId: endpoint.id,
    privateServiceConnection: {
        name: "example-privateserviceconnection",
        privateConnectionResourceId: exampleLinkService.id,
        isManualConnection: false,
    },
});

Create a Endpoint Resource

new Endpoint(name: string, args: EndpointArgs, opts?: CustomResourceOptions);
@overload
def Endpoint(resource_name: str,
             opts: Optional[ResourceOptions] = None,
             location: Optional[str] = None,
             name: Optional[str] = None,
             private_dns_zone_group: Optional[EndpointPrivateDnsZoneGroupArgs] = None,
             private_service_connection: Optional[EndpointPrivateServiceConnectionArgs] = None,
             resource_group_name: Optional[str] = None,
             subnet_id: Optional[str] = None,
             tags: Optional[Mapping[str, str]] = None)
@overload
def Endpoint(resource_name: str,
             args: EndpointArgs,
             opts: Optional[ResourceOptions] = None)
func NewEndpoint(ctx *Context, name string, args EndpointArgs, opts ...ResourceOption) (*Endpoint, error)
public Endpoint(string name, EndpointArgs args, CustomResourceOptions? opts = null)
name string
The unique name of the resource.
args EndpointArgs
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 EndpointArgs
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 EndpointArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args EndpointArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.

Endpoint Resource Properties

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

Inputs

The Endpoint resource accepts the following input properties:

PrivateServiceConnection EndpointPrivateServiceConnectionArgs
A private_service_connection block as defined below.
ResourceGroupName string
Specifies the Name of the Resource Group within which the Private Endpoint should exist. Changing this forces a new resource to be created.
SubnetId string
The ID of the Subnet from which Private IP Addresses will be allocated for this Private Endpoint. Changing this forces a new resource to be created.
Location string
The supported Azure location where the resource exists. Changing this forces a new resource to be created.
Name string
Specifies the Name of the Private Endpoint. Changing this forces a new resource to be created.
PrivateDnsZoneGroup EndpointPrivateDnsZoneGroupArgs
A private_dns_zone_group block as defined below.
Tags Dictionary<string, string>
A mapping of tags to assign to the resource.
PrivateServiceConnection EndpointPrivateServiceConnection
A private_service_connection block as defined below.
ResourceGroupName string
Specifies the Name of the Resource Group within which the Private Endpoint should exist. Changing this forces a new resource to be created.
SubnetId string
The ID of the Subnet from which Private IP Addresses will be allocated for this Private Endpoint. Changing this forces a new resource to be created.
Location string
The supported Azure location where the resource exists. Changing this forces a new resource to be created.
Name string
Specifies the Name of the Private Endpoint. Changing this forces a new resource to be created.
PrivateDnsZoneGroup EndpointPrivateDnsZoneGroup
A private_dns_zone_group block as defined below.
Tags map[string]string
A mapping of tags to assign to the resource.
privateServiceConnection EndpointPrivateServiceConnectionArgs
A private_service_connection block as defined below.
resourceGroupName string
Specifies the Name of the Resource Group within which the Private Endpoint should exist. Changing this forces a new resource to be created.
subnetId string
The ID of the Subnet from which Private IP Addresses will be allocated for this Private Endpoint. Changing this forces a new resource to be created.
location string
The supported Azure location where the resource exists. Changing this forces a new resource to be created.
name string
Specifies the Name of the Private Endpoint. Changing this forces a new resource to be created.
privateDnsZoneGroup EndpointPrivateDnsZoneGroupArgs
A private_dns_zone_group block as defined below.
tags {[key: string]: string}
A mapping of tags to assign to the resource.
private_service_connection EndpointPrivateServiceConnectionArgs
A private_service_connection block as defined below.
resource_group_name str
Specifies the Name of the Resource Group within which the Private Endpoint should exist. Changing this forces a new resource to be created.
subnet_id str
The ID of the Subnet from which Private IP Addresses will be allocated for this Private Endpoint. Changing this forces a new resource to be created.
location str
The supported Azure location where the resource exists. Changing this forces a new resource to be created.
name str
Specifies the Name of the Private Endpoint. Changing this forces a new resource to be created.
private_dns_zone_group EndpointPrivateDnsZoneGroupArgs
A private_dns_zone_group block as defined below.
tags Mapping[str, str]
A mapping of tags to assign to the resource.

Outputs

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

CustomDnsConfigs []EndpointCustomDnsConfig
Id string
The provider-assigned unique ID for this managed resource.
PrivateDnsZoneConfigs []EndpointPrivateDnsZoneConfig
customDnsConfigs EndpointCustomDnsConfig[]
id string
The provider-assigned unique ID for this managed resource.
privateDnsZoneConfigs EndpointPrivateDnsZoneConfig[]

Look up an Existing Endpoint Resource

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

public static get(name: string, id: Input<ID>, state?: EndpointState, opts?: CustomResourceOptions): Endpoint
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        custom_dns_configs: Optional[Sequence[EndpointCustomDnsConfigArgs]] = None,
        location: Optional[str] = None,
        name: Optional[str] = None,
        private_dns_zone_configs: Optional[Sequence[EndpointPrivateDnsZoneConfigArgs]] = None,
        private_dns_zone_group: Optional[EndpointPrivateDnsZoneGroupArgs] = None,
        private_service_connection: Optional[EndpointPrivateServiceConnectionArgs] = None,
        resource_group_name: Optional[str] = None,
        subnet_id: Optional[str] = None,
        tags: Optional[Mapping[str, str]] = None) -> Endpoint
func GetEndpoint(ctx *Context, name string, id IDInput, state *EndpointState, opts ...ResourceOption) (*Endpoint, error)
public static Endpoint Get(string name, Input<string> id, EndpointState? state, CustomResourceOptions? opts = null)
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.

The following state arguments are supported:

CustomDnsConfigs List<EndpointCustomDnsConfigArgs>
Location string
The supported Azure location where the resource exists. Changing this forces a new resource to be created.
Name string
Specifies the Name of the Private Endpoint. Changing this forces a new resource to be created.
PrivateDnsZoneConfigs List<EndpointPrivateDnsZoneConfigArgs>
PrivateDnsZoneGroup EndpointPrivateDnsZoneGroupArgs
A private_dns_zone_group block as defined below.
PrivateServiceConnection EndpointPrivateServiceConnectionArgs
A private_service_connection block as defined below.
ResourceGroupName string
Specifies the Name of the Resource Group within which the Private Endpoint should exist. Changing this forces a new resource to be created.
SubnetId string
The ID of the Subnet from which Private IP Addresses will be allocated for this Private Endpoint. Changing this forces a new resource to be created.
Tags Dictionary<string, string>
A mapping of tags to assign to the resource.
CustomDnsConfigs []EndpointCustomDnsConfig
Location string
The supported Azure location where the resource exists. Changing this forces a new resource to be created.
Name string
Specifies the Name of the Private Endpoint. Changing this forces a new resource to be created.
PrivateDnsZoneConfigs []EndpointPrivateDnsZoneConfig
PrivateDnsZoneGroup EndpointPrivateDnsZoneGroup
A private_dns_zone_group block as defined below.
PrivateServiceConnection EndpointPrivateServiceConnection
A private_service_connection block as defined below.
ResourceGroupName string
Specifies the Name of the Resource Group within which the Private Endpoint should exist. Changing this forces a new resource to be created.
SubnetId string
The ID of the Subnet from which Private IP Addresses will be allocated for this Private Endpoint. Changing this forces a new resource to be created.
Tags map[string]string
A mapping of tags to assign to the resource.
customDnsConfigs EndpointCustomDnsConfigArgs[]
location string
The supported Azure location where the resource exists. Changing this forces a new resource to be created.
name string
Specifies the Name of the Private Endpoint. Changing this forces a new resource to be created.
privateDnsZoneConfigs EndpointPrivateDnsZoneConfigArgs[]
privateDnsZoneGroup EndpointPrivateDnsZoneGroupArgs
A private_dns_zone_group block as defined below.
privateServiceConnection EndpointPrivateServiceConnectionArgs
A private_service_connection block as defined below.
resourceGroupName string
Specifies the Name of the Resource Group within which the Private Endpoint should exist. Changing this forces a new resource to be created.
subnetId string
The ID of the Subnet from which Private IP Addresses will be allocated for this Private Endpoint. Changing this forces a new resource to be created.
tags {[key: string]: string}
A mapping of tags to assign to the resource.
custom_dns_configs Sequence[EndpointCustomDnsConfigArgs]
location str
The supported Azure location where the resource exists. Changing this forces a new resource to be created.
name str
Specifies the Name of the Private Endpoint. Changing this forces a new resource to be created.
private_dns_zone_configs Sequence[EndpointPrivateDnsZoneConfigArgs]
private_dns_zone_group EndpointPrivateDnsZoneGroupArgs
A private_dns_zone_group block as defined below.
private_service_connection EndpointPrivateServiceConnectionArgs
A private_service_connection block as defined below.
resource_group_name str
Specifies the Name of the Resource Group within which the Private Endpoint should exist. Changing this forces a new resource to be created.
subnet_id str
The ID of the Subnet from which Private IP Addresses will be allocated for this Private Endpoint. Changing this forces a new resource to be created.
tags Mapping[str, str]
A mapping of tags to assign to the resource.

Supporting Types

EndpointCustomDnsConfig

Fqdn string
The fully qualified domain name to the private_dns_zone.
IpAddresses List<string>
A list of all IP Addresses that map to the private_dns_zone fqdn.
Fqdn string
The fully qualified domain name to the private_dns_zone.
IpAddresses []string
A list of all IP Addresses that map to the private_dns_zone fqdn.
fqdn string
The fully qualified domain name to the private_dns_zone.
ipAddresses string[]
A list of all IP Addresses that map to the private_dns_zone fqdn.
fqdn str
The fully qualified domain name to the private_dns_zone.
ip_addresses Sequence[str]
A list of all IP Addresses that map to the private_dns_zone fqdn.

EndpointPrivateDnsZoneConfig

Id string
The ID of the Private DNS Zone Config.
Name string
Specifies the Name of the Private Endpoint. Changing this forces a new resource to be created.
PrivateDnsZoneId string
A list of IP Addresses
RecordSets List<EndpointPrivateDnsZoneConfigRecordSetArgs>
A record_sets block as defined below.
Id string
The ID of the Private DNS Zone Config.
Name string
Specifies the Name of the Private Endpoint. Changing this forces a new resource to be created.
PrivateDnsZoneId string
A list of IP Addresses
RecordSets []EndpointPrivateDnsZoneConfigRecordSet
A record_sets block as defined below.
id string
The ID of the Private DNS Zone Config.
name string
Specifies the Name of the Private Endpoint. Changing this forces a new resource to be created.
privateDnsZoneId string
A list of IP Addresses
recordSets EndpointPrivateDnsZoneConfigRecordSetArgs[]
A record_sets block as defined below.
id str
The ID of the Private DNS Zone Config.
name str
Specifies the Name of the Private Endpoint. Changing this forces a new resource to be created.
private_dns_zone_id str
A list of IP Addresses
record_sets Sequence[EndpointPrivateDnsZoneConfigRecordSetArgs]
A record_sets block as defined below.

EndpointPrivateDnsZoneConfigRecordSet

Fqdn string
The fully qualified domain name to the private_dns_zone.
IpAddresses List<string>
A list of all IP Addresses that map to the private_dns_zone fqdn.
Name string
Specifies the Name of the Private Endpoint. Changing this forces a new resource to be created.
Ttl int
The time to live for each connection to the private_dns_zone.
Type string
The type of DNS record.
Fqdn string
The fully qualified domain name to the private_dns_zone.
IpAddresses []string
A list of all IP Addresses that map to the private_dns_zone fqdn.
Name string
Specifies the Name of the Private Endpoint. Changing this forces a new resource to be created.
Ttl int
The time to live for each connection to the private_dns_zone.
Type string
The type of DNS record.
fqdn string
The fully qualified domain name to the private_dns_zone.
ipAddresses string[]
A list of all IP Addresses that map to the private_dns_zone fqdn.
name string
Specifies the Name of the Private Endpoint. Changing this forces a new resource to be created.
ttl number
The time to live for each connection to the private_dns_zone.
type string
The type of DNS record.
fqdn str
The fully qualified domain name to the private_dns_zone.
ip_addresses Sequence[str]
A list of all IP Addresses that map to the private_dns_zone fqdn.
name str
Specifies the Name of the Private Endpoint. Changing this forces a new resource to be created.
ttl int
The time to live for each connection to the private_dns_zone.
type str
The type of DNS record.

EndpointPrivateDnsZoneGroup

Name string
Specifies the Name of the Private DNS Zone Group. Changing this forces a new private_dns_zone_group resource to be created.
PrivateDnsZoneIds List<string>
Specifies the list of Private DNS Zones to include within the private_dns_zone_group.
Id string
The ID of the Private DNS Zone Config.
Name string
Specifies the Name of the Private DNS Zone Group. Changing this forces a new private_dns_zone_group resource to be created.
PrivateDnsZoneIds []string
Specifies the list of Private DNS Zones to include within the private_dns_zone_group.
Id string
The ID of the Private DNS Zone Config.
name string
Specifies the Name of the Private DNS Zone Group. Changing this forces a new private_dns_zone_group resource to be created.
privateDnsZoneIds string[]
Specifies the list of Private DNS Zones to include within the private_dns_zone_group.
id string
The ID of the Private DNS Zone Config.
name str
Specifies the Name of the Private DNS Zone Group. Changing this forces a new private_dns_zone_group resource to be created.
private_dns_zone_ids Sequence[str]
Specifies the list of Private DNS Zones to include within the private_dns_zone_group.
id str
The ID of the Private DNS Zone Config.

EndpointPrivateServiceConnection

IsManualConnection bool
Does the Private Endpoint require Manual Approval from the remote resource owner? Changing this forces a new resource to be created.
Name string
Specifies the Name of the Private Service Connection. Changing this forces a new resource to be created.
PrivateConnectionResourceAlias string
The Service Alias of the Private Link Enabled Remote Resource which this Private Endpoint should be connected to. One of private_connection_resource_id or private_connection_resource_alias must be specified. Changing this forces a new resource to be created.
PrivateConnectionResourceId string
The ID of the Private Link Enabled Remote Resource which this Private Endpoint should be connected to. One of private_connection_resource_id or private_connection_resource_alias must be specified. Changing this forces a new resource to be created.
PrivateIpAddress string
(Computed) The private IP address associated with the private endpoint, note that you will have a private IP address assigned to the private endpoint even if the connection request was Rejected.
RequestMessage string
A message passed to the owner of the remote resource when the private endpoint attempts to establish the connection to the remote resource. The request message can be a maximum of 140 characters in length. Only valid if is_manual_connection is set to true.
SubresourceNames List<string>
A list of subresource names which the Private Endpoint is able to connect to. subresource_names corresponds to group_id. Changing this forces a new resource to be created.
IsManualConnection bool
Does the Private Endpoint require Manual Approval from the remote resource owner? Changing this forces a new resource to be created.
Name string
Specifies the Name of the Private Service Connection. Changing this forces a new resource to be created.
PrivateConnectionResourceAlias string
The Service Alias of the Private Link Enabled Remote Resource which this Private Endpoint should be connected to. One of private_connection_resource_id or private_connection_resource_alias must be specified. Changing this forces a new resource to be created.
PrivateConnectionResourceId string
The ID of the Private Link Enabled Remote Resource which this Private Endpoint should be connected to. One of private_connection_resource_id or private_connection_resource_alias must be specified. Changing this forces a new resource to be created.
PrivateIpAddress string
(Computed) The private IP address associated with the private endpoint, note that you will have a private IP address assigned to the private endpoint even if the connection request was Rejected.
RequestMessage string
A message passed to the owner of the remote resource when the private endpoint attempts to establish the connection to the remote resource. The request message can be a maximum of 140 characters in length. Only valid if is_manual_connection is set to true.
SubresourceNames []string
A list of subresource names which the Private Endpoint is able to connect to. subresource_names corresponds to group_id. Changing this forces a new resource to be created.
isManualConnection boolean
Does the Private Endpoint require Manual Approval from the remote resource owner? Changing this forces a new resource to be created.
name string
Specifies the Name of the Private Service Connection. Changing this forces a new resource to be created.
privateConnectionResourceAlias string
The Service Alias of the Private Link Enabled Remote Resource which this Private Endpoint should be connected to. One of private_connection_resource_id or private_connection_resource_alias must be specified. Changing this forces a new resource to be created.
privateConnectionResourceId string
The ID of the Private Link Enabled Remote Resource which this Private Endpoint should be connected to. One of private_connection_resource_id or private_connection_resource_alias must be specified. Changing this forces a new resource to be created.
privateIpAddress string
(Computed) The private IP address associated with the private endpoint, note that you will have a private IP address assigned to the private endpoint even if the connection request was Rejected.
requestMessage string
A message passed to the owner of the remote resource when the private endpoint attempts to establish the connection to the remote resource. The request message can be a maximum of 140 characters in length. Only valid if is_manual_connection is set to true.
subresourceNames string[]
A list of subresource names which the Private Endpoint is able to connect to. subresource_names corresponds to group_id. Changing this forces a new resource to be created.
is_manual_connection bool
Does the Private Endpoint require Manual Approval from the remote resource owner? Changing this forces a new resource to be created.
name str
Specifies the Name of the Private Service Connection. Changing this forces a new resource to be created.
private_connection_resource_alias str
The Service Alias of the Private Link Enabled Remote Resource which this Private Endpoint should be connected to. One of private_connection_resource_id or private_connection_resource_alias must be specified. Changing this forces a new resource to be created.
private_connection_resource_id str
The ID of the Private Link Enabled Remote Resource which this Private Endpoint should be connected to. One of private_connection_resource_id or private_connection_resource_alias must be specified. Changing this forces a new resource to be created.
private_ip_address str
(Computed) The private IP address associated with the private endpoint, note that you will have a private IP address assigned to the private endpoint even if the connection request was Rejected.
request_message str
A message passed to the owner of the remote resource when the private endpoint attempts to establish the connection to the remote resource. The request message can be a maximum of 140 characters in length. Only valid if is_manual_connection is set to true.
subresource_names Sequence[str]
A list of subresource names which the Private Endpoint is able to connect to. subresource_names corresponds to group_id. Changing this forces a new resource to be created.

Import

Private Endpoints can be imported using the resource id, e.g.

 $ pulumi import azure:privatelink/endpoint:Endpoint example /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Network/privateEndpoints/endpoint1

Package Details

Repository
https://github.com/pulumi/pulumi-azure
License
Apache-2.0
Notes
This Pulumi package is based on the azurerm Terraform Provider.