Azure Private Link Reference
This section provides detailed reference information for Azure Private Link, including resource types, properties, and common configurations.
Azure Private Link Resource Types
Azure Private Link is built around several key resource types that you'll interact with when implementing private connectivity.
Private Endpoint
A private endpoint is a network interface that connects you privately and securely to a PaaS, application, or data service. It uses a private IP address from your virtual network, effectively bringing the service into your virtual network.
Key Properties:
- Name: Unique identifier for the private endpoint.
- Location: The Azure region where the private endpoint is deployed.
- Subnet: The subnet within your virtual network from which the private endpoint will obtain its private IP address.
- PrivateIPAddress: The IP address assigned to the private endpoint.
- Connection Status: Indicates the status of the connection between the private endpoint and the service.
- Manual or Automatic Approval: Determines if the connection requires explicit approval from the service provider.
Private Link Service
A Private Link service is an abstraction layer that enables you, as a service provider, to expose your Azure PaaS, customer-owned, or partner services to consumers over Azure Private Link.
Key Properties:
- Name: Unique identifier for the Private Link service.
- Location: The Azure region where the service is hosted.
- Resource ID: The Azure Resource Manager (ARM) ID of the service you want to expose (e.g., a Load Balancer).
- Load Balancer: The type of load balancer used for traffic distribution.
- Visibility: Controls who can access the service (e.g., all Azure subscriptions, specific subscriptions).
Connection Policies
Connection policies are used by service providers to manage access to their Private Link Services. They allow granular control over which consumers can connect.
Key Properties:
- Name: Unique identifier for the connection policy.
- Consumer Groups: Groups of consumers that are allowed to connect.
- Allowed Subscriptions: Specific subscription IDs permitted to connect.
Common Configuration Parameters
Below are some frequently used parameters and their descriptions when working with Azure Private Link.
| Parameter | Description | Example |
|---|---|---|
groupIds |
Specifies the group IDs of the target service that the private endpoint will connect to. This is crucial for routing traffic correctly to specific services within a larger Azure resource. | ["sql", "blob"] |
privateLinkServiceId |
The ARM ID of the Private Link Service to which the private endpoint will connect. | /subscriptions/{subscriptionId}/resourceGroups/{rgName}/providers/Microsoft.Network/privateLinkServices/{plsName} |
isManualConnection |
A boolean value indicating whether manual approval is required for the Private Link connection. Set to true for manual approval, false for automatic approval (if supported by the service). |
true |
fqdns |
A list of Fully Qualified Domain Names (FQDNs) that will resolve to the private IP address of the private endpoint. This is essential for applications to connect using their standard hostnames. | ["my-storage-account.privatelink.blob.core.windows.net"] |
natIpConfigurations |
An array of NAT IP configurations for the private endpoint. Each configuration includes a name and a primary IP address. | [{"name": "primary", "privateIpAddress": "10.0.0.4"}] |
Service-Specific Configurations
Different Azure services have unique requirements and configurations for Private Link integration. Here are a few examples:
Azure Storage (Blob Storage, File Storage)
groupIds: Typically"blob","file", or"dfs".privateLinkServiceId: Not directly used for storage accounts; you connect to the storage account's FQDN.fqdns: The FQDN of your storage account (e.g.,yourstorageaccount.privatelink.blob.core.windows.net).
Azure SQL Database
groupIds: Typically"sql".privateLinkServiceId: Not directly used for SQL Database; you connect to the SQL server's FQDN.fqdns: The FQDN of your SQL server (e.g.,your-sql-server.privatelink.database.windows.net).
Azure Key Vault
groupIds: Typically"vault".privateLinkServiceId: Not directly used for Key Vault; you connect to the Key Vault's FQDN.fqdns: The FQDN of your Key Vault (e.g.,your-key-vault.privatelink.vaultcore.azure-int.net).
API and CLI References
For programmatic management of Azure Private Link resources, you can refer to the following: