Skip to content

Commit 127766a

Browse files
committed
Merge branch 'main' of https://github.com/MicrosoftDocs/azure-docs-pr into waf-agc
2 parents 881a0e9 + 6df970e commit 127766a

File tree

234 files changed

+2624
-3342
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

234 files changed

+2624
-3342
lines changed

.openpublishing.publish.config.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@
7070
},
7171
{
7272
"path_to_root": "azure_cli_scripts",
73-
"url": "https://github.com/Azure-Samples/azure-cli-samples",
73+
"url": "https://github.com/ggailey777/azure-cli-samples",
7474
"branch": "master",
7575
"branch_mapping": {}
7676
},

.openpublishing.redirection.json

Lines changed: 5 additions & 335 deletions
Large diffs are not rendered by default.

articles/api-management/api-management-howto-use-azure-monitor.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ ms.custom:
1010
- devdivchpfy22
1111
- build-2025
1212
ms.topic: tutorial
13-
ms.date: 05/14/2025
13+
ms.date: 07/09/2025
1414
ms.author: danlep
1515
---
1616
# Tutorial: Monitor published APIs

articles/api-management/applications.md

Lines changed: 29 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ author: dlepow
77

88
ms.service: azure-api-management
99
ms.topic: how-to
10-
ms.date: 05/19/2025
10+
ms.date: 07/11/2025
1111
ms.author: danlep
1212
ms.custom:
1313
- build-2025
@@ -22,9 +22,9 @@ API Management now supports built-in OAuth 2.0 application-based access to produ
2222
> Applications are currently in limited preview. To sign up, fill [this form](https://aka.ms/apimappspreview).
2323
2424
With this feature:
25-
2625
* API managers set a product property to enable application-based access.
2726
* API managers register client applications in Microsoft Entra ID to limit access to specific products.
27+
* Developers can access client application credentials using the API Management developer portal.
2828
* Using the OAuth 2.0 client credentials flow, developers or apps obtain tokens that they can include in API requests
2929
* Tokens presented in API requests are validated by the API Management gateway to authorize access to the product's APIs.
3030

@@ -61,7 +61,8 @@ Follow these steps to enable **Application based access** for a product. A produ
6161

6262
The following example uses the **Starter** product, but choose any published product that has at least one API assigned to it.
6363

64-
1. Sign in to the [portal](https://portal.azure.com) and navigate to your API Management instance.
64+
1. Sign in to the portal at the following custom URL for the applications feature: [https://portal.azure.com/?feature.customPortal=false&Microsoft_Azure_ApiManagement=applications](https://portal.azure.com/?feature.customPortal=false&Microsoft_Azure_ApiManagement=applications)
65+
1. Navigate to your API Management instance.
6566
1. In the left menu, under **APIs**, select **Products**.
6667
1. Choose the product that you want to configure, such as the **Starter** product.
6768
1. In the left menu, under **Product**, select **Properties**.
@@ -103,10 +104,13 @@ To review application settings in **App registrations**:
103104
Now register a client application that limits access to one or more products.
104105

105106
* A product must have **Application based access** enabled to be associated with a client application.
106-
* Each client application has a single user (owner) in the API Management instance. One the owner can access product APIs through the application.
107+
* Each client application has a single user (owner) in the API Management instance. Only the owner can access product APIs through the application.
107108
* A product can be associated with more than one client application.
108109

109-
1. Sign in to the [portal](https://portal.azure.com) and navigate to your API Management instance.
110+
To register a client application:
111+
112+
1. Sign in to the portal at the following custom URL for the applications feature: [https://portal.azure.com/?feature.customPortal=false&Microsoft_Azure_ApiManagement=applications](https://portal.azure.com/?feature.customPortal=false&Microsoft_Azure_ApiManagement=applications)
113+
1. Navigate to your API Management instance.
110114
1. In the left menu, under **APIs**, select **Applications** > **+ Register application**.
111115
1. In the **Register an application** page, enter the following application settings:
112116
* **Name**: Enter a name for the application.
@@ -152,6 +156,16 @@ To review application settings in **App registrations**:
152156

153157
:::image type="content" source="media/applications/client-api-permissions.png" alt-text="Screenshot of API permissions in the portal.":::
154158

159+
## Get application settings in developer portal
160+
161+
Users can sign in to the developer portal to view the client applications that they own.
162+
163+
1. Sign in to the developer portal (`https://<your-apim-instance-name>.developer.azure-api.net`) using a user account that was set as the owner of a client application.
164+
1. In the top navigation menu, select **Applications**.
165+
1. Applications that the user owns appear in the list.
166+
1. Select an application to view its details, such as the **Client ID**, **Client secret**, and **Scope**. These values are needed to generate a token to call the product APIs.
167+
168+
:::image type="content" source="media/applications/applications-developer-portal.png" alt-text="Screenshot of client applications in the developer portal.":::
155169

156170
## Create token and use with API call
157171

@@ -204,6 +218,16 @@ Write-Host "Response:"
204218
$getresponse | ConvertTo-Json -Depth 5
205219
```
206220

221+
## Troubleshooting
222+
223+
### Internal server error when registering applications in the portal
224+
225+
If you're unable to list applications, or you receive an internal server error when registering applications in the portal, check the following:
226+
227+
* The **Application Administrator** role is assigned to the API Management instance's managed identity in Microsoft Entra ID.
228+
* You're signed in to the portal at the following custom URL for the applications feature: [https://portal.azure.com/?feature.customPortal=false&Microsoft_Azure_ApiManagement=applications](https://portal.azure.com/?feature.customPortal=false&Microsoft_Azure_ApiManagement=applications). This URL is required to access the applications feature in API Management.
229+
230+
207231
## Related content
208232

209233
* [Create and publish a product](api-management-howto-add-products.md)

articles/api-management/inject-vnet-v2.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,8 @@ If you want to enable *public* inbound access to an API Management instance in t
5454
* Minimum: /27 (32 addresses)
5555
* Recommended: /24 (256 addresses) - to accommodate scaling of API Management instance
5656

57+
### Network security group
58+
5759
[!INCLUDE [api-management-virtual-network-v2-nsg-rules](../../includes/api-management-virtual-network-v2-nsg-rules.md)]
5860

5961
### Subnet delegation

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

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,8 +46,14 @@ If you want to inject a Premium v2 (preview) API Management instance into a virt
4646
* Minimum: /27 (32 addresses)
4747
* Recommended: /24 (256 addresses) - to accommodate scaling of API Management instance
4848

49+
### Network security group
50+
4951
[!INCLUDE [api-management-virtual-network-v2-nsg-rules](../../includes/api-management-virtual-network-v2-nsg-rules.md)]
5052

53+
> [!IMPORTANT]
54+
> * Inbound NSG rules do not apply when a v2 tier instance is integrated in a virtual network for private outbound access. To enforce inbound NSG rules, use virtual network injection instead of integration.
55+
> * This differs from networking in the classic Premium tier, where inbound NSG rules are enforced in both external and internal virtual network injection modes. [Learn more](virtual-network-injection-resources.md)
56+
5157
### Subnet delegation
5258

5359
The subnet needs to be delegated to the **Microsoft.Web/serverFarms** service.
25.5 KB
Loading
10 Bytes
Loading

articles/api-management/monitor-api-management.md

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: Monitor Azure API Management
33
description: Learn how to monitor Azure API Management using Azure Monitor, including data collection, analysis, and alerting.
4-
ms.date: 05/14/2025
4+
ms.date: 07/09/2025
55
ms.custom:
66
- horz-monitor
77
- build-2025
@@ -49,27 +49,31 @@ Azure API Management provides analytics for your APIs so that you can analyze th
4949
5050
With API analytics, analyze the usage and performance of the APIs in your API Management instance across several dimensions, including:
5151

52-
- Time
52+
- Timeline
5353
- Geography
5454
- APIs
5555
- API operations
5656
- Products
5757
- Subscriptions
5858
- Users
5959
- Requests
60+
- Language models (for large language model APIs)
6061

6162
API analytics provides data on requests, including failed and unauthorized requests. Geography values are based on IP address mapping. There can be a delay in the availability of analytics data.
6263

6364
#### Azure Monitor-based dashboard
6465

6566
To use the Azure Monitor-based dashboard, you need a Log Analytics workspace as a data source for API Management gateway logs.
6667

67-
If you need to configure one, the following are brief steps to send gateway logs to a Log Analytics workspace. For more information, see [Tutorial: Monitor published APIs](api-management-howto-use-azure-monitor.md#resource-logs). This procedure is a one-time setup.
68+
If you need to configure one, the following are brief steps to send gateway logs to a Log Analytics workspace. For more information, see [Enable diagnostic setting for Azure Monitor logs](#enable-diagnostic-setting-for-azure-monitor-logs), later in this article. This procedure is a one-time setup.
6869

6970
1. In the [Azure portal](https://portal.azure.com), navigate to your API Management instance.
7071
1. In the left-hand menu, under **Monitoring**, select **Diagnostic settings** > **+ Add diagnostic setting**.
7172
1. Enter a descriptive name for the diagnostic setting.
7273
1. In **Logs**, select **Logs related to ApiManagement Gateway**.
74+
> [!TIP]
75+
> To collect logs for large language model (LLM) APIs for display on the Azure Monitor-based dashboard, also select **Logs related to generative AI gateway**.
76+
7377
1. In **Destination details**, select **Send to Log Analytics** and select a Log Analytics workspace in the same or a different subscription. If you need to create a workspace, see [Create a Log Analytics workspace](/azure/azure-monitor/logs/quick-create-workspace).
7478
1. Make sure **Resource specific** is selected as the destination table.
7579
1. Select **Save**.
@@ -111,7 +115,7 @@ This section shows you how to enable Azure Monitor logs for auditing and trouble
111115
|API Management gateway | Requests processed by the API Management gateway, including HTTP methods, protocols, request and response bodies, headers, timings, error details, and cache involvement. | Adjust settings for all APIs, or override them for individual APIs.<br/><br/>In API Management instances configured with [workspaces](workspaces-overview.md), gateway logs can be collected individually for each workspace and aggregated for centralized access by the platform team. |
112116
|WebSocket connections | Events for [WebSocket API](websocket-api.md) connections, starting from the handshake until the connection is terminated. |
113117
|Developer portal usage | Requests that are received and processed by the API Management [developer portal](developer-portal-overview.md), including user authentication actions, views of API details, and API testing in the interactive test console.|
114-
| Generative AI gateway | Requests processed by the API Management gateway for large language model (LLM) REST APIs such as Azure OpenAI APIs, including token usage, models, and optionally details of request prompts and response completions. | Enable logging of request messages and/or response messages for specific LLM APIs.
118+
| Generative AI gateway | Requests processed by the API Management gateway for large language model (LLM) REST APIs such as Azure AI Foundry APIs, including token usage, models, and optionally details of request prompts and response completions. | Enable logging of request messages and/or response messages for specific LLM APIs.
115119

116120
For more information, see [API Management monitoring data reference](monitor-api-management-reference.md).
117121

articles/api-management/virtual-network-workspaces-resources.md

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ author: dlepow
55

66
ms.service: azure-api-management
77
ms.topic: concept-article
8-
ms.date: 06/18/2025
8+
ms.date: 07/08/2025
99
ms.author: danlep
1010
---
1111

@@ -45,7 +45,6 @@ For information about configuring subnet delegation, see [Add or remove a subnet
4545

4646
#### [Virtual network integration](#tab/external)
4747

48-
4948
For virtual network integration, the subnet needs to be delegated to the **Microsoft.Web/serverFarms** service.
5049

5150
:::image type="content" source="media/virtual-network-injection-workspaces-resources/delegate-external.png" alt-text="Screenshot showing subnet delegation to Microsoft.Web/serverFarms in the portal.":::
@@ -65,21 +64,20 @@ For virtual network injection, the subnet needs to be delegated to the **Microso
6564
6665
---
6766

67+
## Network security group
6868

69-
## Network security group (NSG) rules
69+
#### [Virtual network integration](#tab/external)
7070

71-
A network security group (NSG) must be attached to the subnet to explicitly allow certain inbound or outbound connectivity. Configure the following rules in the NSG. Set the priority of these rules higher than that of the default rules.
71+
[!INCLUDE [api-management-virtual-network-v2-nsg-rules](../../includes/api-management-virtual-network-v2-nsg-rules.md)]
7272

73-
Configure other NSG rules to meet your organization's network access requirements.
7473

75-
#### [Virtual network integration](#tab/external)
74+
#### [Virtual network injection](#tab/internal)
7675

77-
| Direction | Source | Source port ranges | Destination | Destination port ranges | Protocol | Action | Purpose |
78-
|-------|--------------|----------|---------|------------|-----------|-----|--------|
79-
| Inbound | AzureLoadBalancer | * | Workspace gateway subnet range | 80 | TCP | Allow | Allow internal health ping traffic |
80-
| Inbound | Internet | * | Workspace gateway subnet range | 80,443 | TCP | Allow | Allow inbound traffic |
76+
A network security group (NSG) must be associated with the subnet. To set up a network security group, see [Create a network security group](../virtual-network/manage-network-security-group.md).
8177

82-
#### [Virtual network injection](#tab/internal)
78+
* Configure the following rules in the NSG. Set the priority of these rules higher than that of the default rules.
79+
* Configure other outbound rules you need for the gateway to reach your API backends.
80+
* Configure other NSG rules to meet your organization’s network access requirements. For example, NSG rules can also be used to block outbound traffic to the internet and allow access only to resources in your virtual network.
8381

8482
| Direction | Source | Source port ranges | Destination | Destination port ranges | Protocol | Action | Purpose |
8583
|-------|--------------|----------|---------|------------|-----------|-----|--------|
@@ -89,6 +87,10 @@ Configure other NSG rules to meet your organization's network access requirement
8987

9088
---
9189

90+
> [!IMPORTANT]
91+
> * Inbound NSG rules do not apply when you integrate a workspace gateway in a virtual network for private outbound access. To enforce inbound NSG rules, use virtual network injection instead of integration.
92+
> * This differs from networking in the classic Premium tier, where inbound NSG rules are enforced in both external and internal virtual network injection modes. [Learn more](virtual-network-injection-resources.md)
93+
9294
## DNS settings for virtual network injection
9395

9496
For virtual network injection, you have to manage your own DNS to enable inbound access to your workspace gateway.

0 commit comments

Comments
 (0)