Skip to content

Commit 3de60b0

Browse files
authored
Merge pull request #293867 from dlepow/peupd
[APIM] PE scenarios
2 parents 9611be0 + 2c2fb1e commit 3de60b0

File tree

4 files changed

+75
-79
lines changed

4 files changed

+75
-79
lines changed

articles/api-management/integrate-vnet-outbound.md

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,20 @@ author: dlepow
55
ms.author: danlep
66
ms.service: azure-api-management
77
ms.topic: how-to
8-
ms.date: 03/20/2025
8+
ms.date: 04/03/2025
99
---
1010

1111
# Integrate an Azure API Management instance with a private virtual network for outbound connections
1212

1313
[!INCLUDE [api-management-availability-standardv2-premiumv2](../../includes/api-management-availability-standardv2-premiumv2.md)]
1414

15-
This article guides you through the process of configuring *virtual network integration* for your Standard v2 or Premium v2 (preview) Azure API Management instance. With virtual network integration, your instance can make outbound requests to APIs hosted in a delegated subnet of a single connected virtual network.
15+
This article guides you through the process of configuring *virtual network integration* for your Standard v2 or Premium v2 (preview) Azure API Management instance. With virtual network integration, your instance can make outbound requests to APIs that are isolated in a single connected virtual network.
1616

1717
When an API Management instance is integrated with a virtual network for outbound requests, the gateway and developer portal endpoints remain publicly accessible. The API Management instance can reach both public and network-isolated backend services.
1818

1919
:::image type="content" source="./media/integrate-vnet-outbound/vnet-integration.png" alt-text="Diagram of integrating API Management instance with a virtual network for outbound traffic." :::
2020

21-
If you want to inject a Premium v2 API Management instance into a virtual network to isolate both inbound and outbound traffic, see [Inject a Premium v2 instance into a virtual network](inject-vnet-v2.md).
21+
If you want to inject a Premium v2 (preview) API Management instance into a virtual network to isolate both inbound and outbound traffic, see [Inject a Premium v2 instance into a virtual network](inject-vnet-v2.md).
2222

2323
> [!IMPORTANT]
2424
> * Outbound virtual network integration described in this article is available only for API Management instances in the Standard v2 and Premium v2 tiers. For networking options in the different tiers, see [Use a virtual network with Azure API Management](virtual-network-concepts.md).
@@ -48,7 +48,7 @@ If you want to inject a Premium v2 API Management instance into a virtual networ
4848

4949
### Network security group
5050

51-
A network security group must be associated with the subnet. No specific rules are required. To set up a network security group, see [Create a network security group](../virtual-network/manage-network-security-group.md).
51+
A network security group must be associated with the subnet. Configure any network security group rules that you need for the gateway to access your API backends. To set up a network security group, see [Create a network security group](../virtual-network/manage-network-security-group.md).
5252

5353
### Subnet delegation
5454

@@ -76,21 +76,14 @@ You must have at least the following role-based access control permissions on th
7676

7777
## Configure virtual network integration
7878

79-
This section guides you through the process of configure external virtual network integration for an existing Azure API Management instance.
79+
This section guides you through the process to configure external virtual network integration for an existing Azure API Management instance. You can also configure virtual network integration when you create a new API Management instance.
8080

8181

8282
1. In the [Azure portal](https://portal.azure.com), navigate to your API Management instance.
83-
1. In the left menu, under **Deployment + Infrastructure**, select **Network**.
84-
1. On the **Outbound traffic** card, select **virtual network integration**.
85-
86-
:::image type="content" source="media/integrate-vnet-outbound/integrate-vnet.png" lightbox="media/integrate-vnet-outbound/integrate-vnet.png" alt-text="Screenshot of virtual network integration in the portal.":::
87-
88-
1. In the **Virtual network** blade, enable the **Virtual network** checkbox.
89-
1. Select the location of your API Management instance.
90-
1. In **Virtual network**, select the virtual network and the delegated subnet that you want to integrate.
91-
1. Select **Apply**, and then select **Save**. The virtual network is integrated.
92-
93-
:::image type="content" source="media/integrate-vnet-outbound/vnet-settings.png" lightbox="media/integrate-vnet-outbound/vnet-settings.png" alt-text="Screenshot of virtual network settings in the portal.":::
83+
1. In the left menu, under **Deployment + Infrastructure**, select **Network** > **Edit**.
84+
1. On the **Network configuration** page, under **Outbound features**, select **Enable** virtual network integration.
85+
1. Select the virtual network and the delegated subnet that you want to integrate.
86+
1. Select **Save**. The virtual network is integrated.
9487

9588
## (Optional) Test virtual network integration
9689

Binary file not shown.
Binary file not shown.

articles/api-management/private-endpoint.md

Lines changed: 66 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ ms.service: azure-api-management
55
author: dlepow
66
ms.author: danlep
77
ms.topic: how-to
8-
ms.date: 12/13/2024
8+
ms.date: 04/04/2025
99
---
1010

1111
# Connect privately to API Management using an inbound private endpoint
@@ -15,7 +15,7 @@ ms.date: 12/13/2024
1515
You can configure an inbound [private endpoint](../private-link/private-endpoint-overview.md) for your API Management instance to allow clients in your private network to securely access the instance over [Azure Private Link](../private-link/private-link-overview.md).
1616

1717
> [!NOTE]
18-
> Private endpoint support in the Standard v2 tier is currently in limited preview. To sign up, fill [this form](https://aka.ms/privateendpointpreview).
18+
> Private endpoint support in the Standard v2 tier is currently in preview.
1919
2020
* The private endpoint uses an IP address from an Azure virtual network in which it's hosted.
2121

@@ -29,11 +29,20 @@ You can configure an inbound [private endpoint](../private-link/private-endpoint
2929

3030
## Limitations
3131

32-
* Only the API Management instance's Gateway endpoint supports inbound Private Link connections.
32+
* Only the API Management instance's **Gateway endpoint** supports inbound Private Link connections.
3333
* Each API Management instance supports at most 100 Private Link connections.
3434
* Connections aren't supported on the [self-hosted gateway](self-hosted-gateway-overview.md) or on a [workspace gateway](workspaces-overview.md#workspace-gateway).
3535
* In the classic API Management tiers, private endpoints aren't supported in instances injected in an internal or external virtual network.
3636

37+
## Typical scenarios
38+
39+
Use an inbound private endpoint to enable private-only access directly to the API Management gateway to limit exposure of sensitive data or backends.
40+
41+
Supported configurations include:
42+
43+
* Pass client requests through a firewall and configure rules to route requests privately to the API Management gateway.
44+
* Configure Azure Front Door (or Azure Front Door with Azure Application Gateway) to receive external traffic and then route traffic privately to the API Management gateway. For example, see [Connect Azure Front Door Premium to an Azure API Management with Private Link](../frontdoor/standard-premium/how-to-enable-private-link-apim.md).
45+
3746

3847
## Prerequisites
3948

@@ -94,11 +103,11 @@ When you use the Azure portal to create a private endpoint, as shown in the next
94103

95104
### Create private endpoint - portal
96105

97-
You can create a private endpoint for your API Management instance in the Azure portal.
106+
You can create a private endpoint when you create an API Management instance in the Azure portal, or you can add a private endpoint to an existing instance. You can also create a private endpoint using the [Private Link Center](/azure/private-link/create-private-endpoint-portal).
98107

99108
#### [Classic](#tab/classic)
100109

101-
In the classic API Management tiers, you can create a private endpoint when you create the instance. In an existing instance, use the instance's **Network** blade in the Azure portal.
110+
To add a private endpoint to an existing API Management instance:
102111

103112
1. Navigate to your API Management service in the [Azure portal](https://portal.azure.com/).
104113

@@ -108,7 +117,7 @@ In the classic API Management tiers, you can create a private endpoint when you
108117

109118
:::image type="content" source="media/private-endpoint/add-endpoint-from-instance.png" alt-text="Screenshot showing how to add a private endpoint using the Azure portal.":::
110119

111-
1. In the **Basics** tab of **Create a private endpoint**, enter or select the following information:
120+
1. In the **Basics** tab, enter or select the following information:
112121

113122
| Setting | Value |
114123
| ------- | ----- |
@@ -158,94 +167,93 @@ In the classic API Management tiers, you can create a private endpoint when you
158167

159168
1. Select the **Next: Review + create** button at the bottom of the screen. Select **Create**.
160169

170+
161171
### List private endpoint connections to the instance
162172

163173
After the private endpoint is created and the service updated, it appears in the list on the API Management instance's **Inbound private endpoint connections** page in the portal.
164174

165175

166-
Note the endpoint's **Connection status**:
176+
Note the endpoint's **Connection state**:
167177

168178
* **Approved** indicates that the API Management resource automatically approved the connection.
169179
* **Pending** indicates that the connection must be manually approved by the resource owner.
170180

171181
### Approve pending private endpoint connections
172182

173-
If a private endpoint connection is in pending status, an owner of the API Management instance must manually approve it before it can be used.
183+
If a private endpoint connection is in a pending state, an owner of the API Management instance must manually approve it before it can be used.
174184

175185
If you have sufficient permissions, approve a private endpoint connection on the API Management instance's **Private endpoint connections** page in the portal. In the connection's context (...) menu, select **Approve**.
176186

177187
You can also use the API Management [Private Endpoint Connection - Create Or Update](/rest/api/apimanagement/private-endpoint-connection/create-or-update) REST API to approve pending private endpoint connections.
178188

179189
#### [Standard v2](#tab/v2)
180190

181-
> [!NOTE]
182-
> * Currently you can't set up a private endpoint when creating a Standard v2 instance or using the instances's **Network** blade in the Azure portal.
183-
> * As shown in this article, you must create and manage private endpoint resources separately from an API Management Standard v2 instance.
191+
### Create private endpoint when creating API Management Standard v2 instance
184192

185-
1. In the [Azure portal](https://portal.azure.com/), go to the **Private Link Center**.
193+
1. In the **Create API Management service wizard**, select the **Networking** tab.
186194

187-
1. Select **Private endpoints** > **+ Create**.
195+
1. In **Network configuration**, select **Inbound private link and/or outbound virtual network integration**.
188196

189-
1. In the **Basics** tab of **Create a private endpoint**, enter or select the following information:
197+
1. Next to **Private endpoints**, select **Create new**.
198+
199+
1. On the **Create private endpoint** page, enter or select the following information:
190200

191201
| Setting | Value |
192202
| ------- | ----- |
193-
| **Project details** | |
194203
| Subscription | Select your subscription. |
195204
| Resource group | Select an existing resource group, or create a new one. It must be in the same region as your virtual network.|
196-
| **Instance details** | |
205+
| Location | Select a location for the private endpoint. It must be in the same region as your virtual network. It may differ from the region where your API Management instance is hosted. |
197206
| Name | Enter a name for the endpoint such as *myPrivateEndpoint*. |
198-
| Network Interface Name | Enter a name for the network interface, such as *myInterface* |
199-
| Region | Select a location for the private endpoint. It must be in the same region as your virtual network. It may differ from the region where your API Management instance is hosted. |
207+
| Sub-resource | Select **Gateway**. |
200208

201-
1. Select the **Next: Resource** button at the bottom of the screen.
209+
1. Under **Networking**, enter or select the virtual network and subnet for your private endpoint.
202210

203-
1. In **Resource**, enter or select this information:
211+
1. Under **Private DNS integration**, select **Integrate with private DNS zone**. The default DNS zone is displayed: **privatelink.azure-api.net**.
204212

205-
| Setting | Value |
206-
| ------- | ----- |
207-
| Subscription | Your subscription is selected. |
208-
| Resource type | Select **Microsoft.ApiManagement/service**. |
209-
| Resource | Select your API Management Standard v2 instance. |
210-
| Target sub-resource | Select **Gateway**. |
211-
212-
:::image type="content" source="media/private-endpoint/create-private-endpoint.png" alt-text="Screenshot showing settings to create a private endpoint in the Azure portal.":::
213+
1. Select **OK**.
213214

214-
> [!IMPORTANT]
215-
> Only the **Gateway** sub-resource is supported for API Management. Other sub-resources aren't supported.
215+
1. Optionally configure settings for [outbound virtual network integration](integrate-vnet-outbound.md).
216216

217-
1. Select the **Next: Virtual Network** button at the bottom of the screen.
217+
1. Continue with the creation of the API Management instance.
218218

219-
1. In **Virtual Network**, enter or select this information:
219+
### Create private endpoint for existing API Management Standard v2 instance
220220

221-
| Setting | Value |
222-
| ------- | ----- |
223-
| Virtual network | Select your virtual network. |
224-
| Subnet | Select your subnet. |
225-
| Network policy for private endpoints | Leave the default of **Disabled**. |
226-
| Private IP configuration | In most cases, select **Dynamically allocate IP address.** |
227-
| Application security group | Optionally select an [application security group](../virtual-network/application-security-groups.md). |
221+
1. In the [Azure portal](https://portal.azure.com/), navigate to your API Management Standard v2 instance.
228222

229-
1. Select the **Next: DNS** button at the bottom of the screen.
223+
1. In the left-hand menu, under **Deployment + infrastructure**, select **Network** > **Edit**.
230224

231-
1. In **Private DNS integration**, enter or select this information:
225+
1. Under **Inbound features**, next to **Private endpoints**, select **Create new**.
226+
227+
1. On the **Create private endpoint** page, enter or select the following information:
232228

233229
| Setting | Value |
234230
| ------- | ----- |
235-
| Integrate with private DNS zone | Leave the default of **Yes**. |
236231
| Subscription | Select your subscription. |
237-
| Resource group | Select your resource group. |
238-
| Private DNS zones | The default value is displayed: **(new) privatelink.azure-api.net**.
232+
| Resource group | Select an existing resource group, or create a new one. It must be in the same region as your virtual network.|
233+
| Location | Select a location for the private endpoint. It must be in the same region as your virtual network. It may differ from the region where your API Management instance is hosted. |
234+
| Name | Enter a name for the endpoint such as *myPrivateEndpoint*. |
235+
| Sub-resource | Select **Gateway**. |
239236

240-
1. Select the **Next: Tabs** button at the bottom of the screen. If you desire, enter tags to organize your Azure resources.
237+
1. Under **Configure virtual network**, enter or select the virtual network and subnet for your private endpoint.
238+
239+
1. Under **Private DNS integration**, select **Enable**, and select your **Subscription** and **Resource group**. The default DNS zone is displayed: **privatelink.azure-api.net**.
240+
241+
1. Select **Create**. By default, the endpoint's **Connection state** is **Approved**.
241242

242-
1. Select the **Next: Review + create** button at the bottom of the screen. Select **Create**.
243243

244244
### List private endpoint connections
245245

246-
After the private endpoint is created and the service updated, it appears in the list on the **Private endpoints** page in the **Private Link Center**.
246+
To list private endpoint connections to the API Management instance:
247+
248+
1. In the [Azure portal](https://portal.azure.com/), navigate to your API Management Standard v2 instance.
249+
250+
1. In the left-hand menu, under **Deployment + infrastructure**, select **Network**.
251+
252+
1. Next to **Private endpoints**, select the link.
253+
254+
1. On the **Private endpoints** page, review the private endpoints to the API Management instance.
247255

248-
Confirm that the endpoint's **Connection status** is **Approved**.
256+
1. To change the connection state or delete the endpoint, select an endpoint, then select the context **(...)** menu. Choose the appropriate command on the menu.
249257

250258
---
251259

@@ -258,7 +266,7 @@ To optionally limit incoming traffic to the API Management instance only to priv
258266
259267
#### [Classic](#tab/classic)
260268

261-
To disable the public network access property using the Azure CLI, run the following [az apim update](/cli/azure/apim#az-apim-update) command, substituting the names of your API Management instance and resource group:
269+
To disable the public network access property in the classic tiers using the Azure CLI, run the following [az apim update](/cli/azure/apim#az-apim-update) command, substituting the names of your API Management instance and resource group:
262270

263271
```azurecli
264272
az apim update --name my-apim-service --resource-group my-resource-group --public-network-access false
@@ -268,23 +276,19 @@ You can also use the [API Management Service - Update](/rest/api/apimanagement/a
268276

269277
#### [Standard v2](#tab/v2)
270278

271-
To disable the public network access property in a Standard v2 instance using the Azure CLI, run the following [az rest](/cli/azure/reference-index#az-rest) command.
279+
You can use the portal to disable the public network access property in a Standard v2 instance.
272280

281+
1. In the [Azure portal](https://portal.azure.com/), navigate to your API Management Standard v2 instance.
273282

274-
```azurecli
275-
SUBSCRIPTION_ID=<your-subscription-id>
276-
RESOURCE_GROUP=<your-resource-group>
277-
SERVICE_NAME=<your-api-management-service-name>
283+
1. In the left-hand menu, under **Deployment + infrastructure**, select **Network** > **Edit**.
284+
285+
1. Under **Inbound features**, in the **Public network access** section, select **Disable**.
278286

279-
az rest --method patch \
280-
--uri "https://management.azure.com/subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RESOURCE_GROUP/providers/Microsoft.ApiManagement/service/$SERVICE_NAME?api-version=2024-05-01" \
281-
--body "{ \"properties\": { \"publicNetworkAccess\": \"Disabled\" } }"
282-
```
283287
---
284288

285289
## Validate private endpoint connection
286290

287-
After the private endpoint is created, confirm its DNS settings in the portal:
291+
After the private endpoint is created, confirm its DNS settings in the portal.
288292

289293
#### [Classic](#tab/classic)
290294

@@ -299,11 +303,11 @@ After the private endpoint is created, confirm its DNS settings in the portal:
299303

300304
#### [Standard v2](#tab/v2)
301305

302-
1. In the **Private Link Center**, select **Private endpoints** and then the name of your private endpoint.
306+
1. Navigate to your API Management service in the [Azure portal](https://portal.azure.com/).
303307

304-
1. In the left-hand navigation, under **Settings**, select **DNS configuration**.
308+
1. In the left-hand menu, under **Deployment + infrastructure**, select **Network** > **Edit**, and select the private endpoint you created.
305309

306-
1. Review the DNS records and IP address of the private endpoint. The IP address is a private address in the address space of the subnet where the private endpoint is configured.
310+
1. On the **Private endpoint** page, review the endpoint's virtual network and private DNS integration settings.
307311

308312
---
309313

@@ -338,4 +342,3 @@ To connect to 'Microsoft.ApiManagement/service/my-apim-service', please use the
338342
* [Manage private endpoint connections](../private-link/manage-private-endpoint.md).
339343
* [Troubleshoot Azure private endpoint connectivity problems](../private-link/troubleshoot-private-endpoint-connectivity.md).
340344
* Use a [Resource Manager template](https://azure.microsoft.com/resources/templates/api-management-private-endpoint/) to create a classic API Management instance and a private endpoint with private DNS integration.
341-
* [Connect Azure Front Door Premium to an Azure API Management with Private Link (Preview)](../frontdoor/standard-premium/how-to-enable-private-link-apim.md).

0 commit comments

Comments
 (0)