Skip to content

Commit 2106da6

Browse files
committed
Merge branch 'main' of https://github.com/MicrosoftDocs/azure-docs-pr into inspectionARS
2 parents 941db6c + 2dc9529 commit 2106da6

File tree

342 files changed

+8189
-3117
lines changed

Some content is hidden

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

342 files changed

+8189
-3117
lines changed

.openpublishing.redirection.json

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6913,6 +6913,11 @@
69136913
"source_path": "articles/nat-gateway/quickstart-create-nat-gateway-bicep.md",
69146914
"redirect_url": "/azure/nat-gateway/quickstart-create-nat-gateway",
69156915
"redirect_document_id": false
6916-
}
6916+
},
6917+
{
6918+
"source_path": "articles/defender-for-iot/organizations/eiot-sensor.md",
6919+
"redirect_url": "/azure/defender-for-iot/organizations/concept-enterprise",
6920+
"redirect_document_id": false
6921+
}
69176922
]
69186923
}

articles/api-management/api-management-gateways-overview.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -128,12 +128,11 @@ Managed and self-hosted gateways support all available [policies](api-management
128128
| [Get authorization context](get-authorization-context-policy.md) | ✔️ | ✔️ |✔️ |||
129129
| [Authenticate with managed identity](authentication-managed-identity-policy.md) | ✔️ | ✔️ |✔️ | ✔️ ||
130130
| [Azure OpenAI and LLM semantic caching](api-management-policies.md#caching) | ✔️ | ✔️ |✔️ |||
131-
| [Quota and rate limit](api-management-policies.md#rate-limiting-and-quotas) | ✔️ | ✔️<sup>2</sup> | ✔️<sup>3</sup> | ✔️<sup>4</sup> | ✔️ |
131+
| [Quota and rate limit](api-management-policies.md#rate-limiting-and-quotas) | ✔️ | ✔️ | ✔️<sup>2</sup> | ✔️<sup>3</sup> | ✔️ |
132132

133133
<sup>1</sup> Configured policies that aren't supported by the self-hosted gateway are skipped during policy execution.<br/>
134-
<sup>2</sup> The quota by key policy isn't available in the v2 tiers.<br/>
135-
<sup>3</sup> The rate limit by key, quota by key, and Azure OpenAI token limit policies aren't available in the Consumption tier.<br/>
136-
<sup>4</sup> [!INCLUDE [api-management-self-hosted-gateway-rate-limit](../../includes/api-management-self-hosted-gateway-rate-limit.md)] [Learn more](how-to-self-hosted-gateway-on-kubernetes-in-production.md#request-throttling)
134+
<sup>2</sup> The rate limit by key, quota by key, and AI token limit policies aren't available in the Consumption tier.<br/>
135+
<sup>3</sup> [!INCLUDE [api-management-self-hosted-gateway-rate-limit](../../includes/api-management-self-hosted-gateway-rate-limit.md)] [Learn more](how-to-self-hosted-gateway-on-kubernetes-in-production.md#request-throttling)
137136

138137

139138
### Monitoring

articles/api-management/api-management-howto-integrate-internal-vnet-appgateway.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ author: dlepow
88
ms.service: azure-api-management
99
ms.topic: how-to
1010
ms.author: danlep
11-
ms.date: 04/17/2023
11+
ms.date: 04/17/2025
1212
ms.custom: engagement-fy23, devx-track-azurepowershell
1313
---
1414
# Integrate API Management in an internal virtual network with Application Gateway
@@ -50,7 +50,7 @@ To follow the steps described in this article, you must have:
5050

5151
## Scenario
5252

53-
In this article, you learn how to use a single API Management instance for internal and external consumers and make it act as a single front end for both on-premises and cloud APIs. You create an API Management instance of the newer single-tenant version 2 (stv2) type. You learn how to use public and private listeners in Application Gateway. You understand how to expose only a subset of your APIs for external consumption by using routing functionality available in Application Gateway. In the example, the APIs are highlighted in green.
53+
In this article, you learn how to use a single API Management instance for internal and external consumers and make it act as a single front end for both on-premises and cloud APIs. You create an API Management instance and deploy it in an Azure virtual network. You learn how to use public and private listeners in Application Gateway. You understand how to expose only a subset of your APIs for external consumption by using routing functionality available in Application Gateway. In the example, the APIs are highlighted in green.
5454

5555
In the first setup example, all your APIs are managed only from within your virtual network. Internal consumers can access all your internal and external APIs. Traffic never goes out to the internet. High-performance connectivity can be delivered via Azure ExpressRoute circuits. In the example, the internal consumers are highlighted in orange.
5656

@@ -170,7 +170,7 @@ The following example shows how to create a virtual network by using Resource Ma
170170
"nsg-agw" -SecurityRules $appGwRule1, $appGwRule2
171171
```
172172
173-
1. Create a network security group (NSG) and NSG rules for the API Management subnet. [API Management stv2 requires several specific NSG rules](api-management-using-with-internal-vnet.md#enable-vnet-connection).
173+
1. Create a network security group (NSG) and NSG rules for the API Management subnet. [API Management requires several specific NSG rules](api-management-using-with-internal-vnet.md#enable-vnet-connection).
174174
175175
```powershell
176176
$apimRule1 = New-AzNetworkSecurityRuleConfig -Name APIM-Management -Description "APIM inbound" `
@@ -223,7 +223,7 @@ The following example shows how to create a virtual network by using Resource Ma
223223
224224
The following example shows how to create an API Management instance in a virtual network configured for internal access only.
225225
226-
1. API Management stv2 requires a public IP with a unique `DomainNameLabel`.
226+
1. API Management requires a public IP with a unique `DomainNameLabel`.
227227
228228
```powershell
229229
$apimPublicIpAddressId = New-AzPublicIpAddress -ResourceGroupName $resGroupName -name "pip-apim" -location $location `

articles/api-management/api-management-howto-ip-addresses.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ In the Developer, Basic, Standard, and Premium tiers of API Management, the publ
133133
* The service subscription is disabled or warned (for example, for nonpayment) and then reinstated. [Learn more about subscription states](/azure/cost-management-billing/manage/subscription-states)
134134
* (Developer and Premium tiers) Azure Virtual Network is added to or removed from the service.
135135
* (Developer and Premium tiers) API Management service is switched between external and internal VNet deployment mode.
136-
* (Developer and Premium tiers) API Management service is moved to a different subnet, [migrated](migrate-stv1-to-stv2.md) from the `stv1` to the `stv2` compute platform, or configured with a different public IP address resource.
136+
* (Developer and Premium tiers) API Management service is moved to a different subnet or configured with a different public IP address resource.
137137
* (Premium tier) [Availability zones](../reliability/migrate-api-mgt.md) are enabled, added, or removed.
138138
* (Premium tier) In [multi-regional deployments](api-management-howto-deploy-multi-region.md), the regional IP address changes if a region is vacated and then reinstated.
139139

articles/api-management/api-management-key-concepts.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ API Management integrates with many complementary Azure services to create enter
136136
* **[Azure Monitor](api-management-howto-use-azure-monitor.md)** for logging, reporting, and alerting on management operations, systems events, and API requests​
137137
* **[Application Insights](api-management-howto-app-insights.md)** for live metrics, end-to-end tracing, and troubleshooting
138138
* **[Virtual networks](virtual-network-concepts.md)**, **[private endpoints](private-endpoint.md)**, **[Application Gateway](api-management-howto-integrate-internal-vnet-appgateway.md)**, and **[Azure Front Door](front-door-api-management.md)** for network-level protection​
139-
* **[Azure Defender for APIs](protect-with-defender-for-apis.md)** and **[Azure DDoS Protection](protect-with-ddos-protection.md)** for runtime protection against malicious attacks​
139+
* **[Microsoft Defender for APIs](protect-with-defender-for-apis.md)** and **[Azure DDoS Protection](protect-with-ddos-protection.md)** for runtime protection against malicious attacks​
140140
* **Microsoft Entra ID** for [developer authentication](api-management-howto-aad.md) and [request authorization](api-management-howto-protect-backend-with-aad.md)
141141
* **[Event Hubs](api-management-howto-log-event-hubs.md)** for streaming events​
142142
* **[Azure Redis](api-management-howto-cache-external.md)** for caching responses​ with Azure Cache for Redis or Azure Managed Redis​

articles/api-management/api-management-policies.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ ms.service: azure-api-management
77
ms.custom:
88
- build-2024
99
ms.topic: reference
10-
ms.date: 10/02/2024
10+
ms.date: 05/06/2025
1111
ms.author: danlep
1212
---
1313

@@ -36,7 +36,7 @@ More information about policies:
3636
| [Limit call rate by subscription](rate-limit-policy.md) | Prevents API usage spikes by limiting call rate, on a per subscription basis. | Yes | Yes | Yes | Yes | Yes |
3737
| [Limit call rate by key](rate-limit-by-key-policy.md) | Prevents API usage spikes by limiting call rate, on a per key basis. | Yes | Yes | No | Yes | Yes |
3838
| [Set usage quota by subscription](quota-policy.md) | Allows you to enforce a renewable or lifetime call volume and/or bandwidth quota, on a per subscription basis. | Yes | Yes | Yes | Yes | Yes |
39-
| [Set usage quota by key](quota-by-key-policy.md) | Allows you to enforce a renewable or lifetime call volume and/or bandwidth quota, on a per key basis. | Yes | No | No | Yes | Yes |
39+
| [Set usage quota by key](quota-by-key-policy.md) | Allows you to enforce a renewable or lifetime call volume and/or bandwidth quota, on a per key basis. | Yes | Yes | No | Yes | Yes |
4040
| [Limit concurrency](limit-concurrency-policy.md) | Prevents enclosed policies from executing by more than the specified number of requests at a time. | Yes | Yes | Yes | Yes | Yes |
4141
| [Limit Azure OpenAI Service token usage](azure-openai-token-limit-policy.md) | Prevents Azure OpenAI API usage spikes by limiting large language model tokens per calculated key. | Yes | Yes | No | Yes | Yes |
4242
| [Limit large language model API token usage](llm-token-limit-policy.md) | Prevents large language model (LLM) API usage spikes by limiting LLM tokens per calculated key. | Yes | Yes | No | Yes | Yes |

articles/api-management/api-management-using-with-internal-vnet.md

Lines changed: 3 additions & 7 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: how-to
8-
ms.date: 05/15/2024
8+
ms.date: 04/17/2025
99
ms.author: danlep
1010
---
1111

@@ -46,7 +46,7 @@ For configurations specific to the *external* mode, where the API Management end
4646

4747
## Enable VNet connection
4848

49-
### Enable VNet connectivity using the Azure portal (`stv2` platform)
49+
### Enable VNet connectivity using the Azure portal
5050

5151
1. Go to the [Azure portal](https://portal.azure.com) to find your API management instance. Search for and select **API Management services**.
5252
1. Choose your API Management instance.
@@ -68,16 +68,12 @@ After successful deployment, you should see your API Management service's **priv
6868
> [!NOTE]
6969
> Since the gateway URL is not registered on the public DNS, the test console available on the Azure portal will not work for an **internal** VNet deployed service. Instead, use the test console provided on the **developer portal**.
7070
71-
### Enable connectivity using a Resource Manager template (`stv2` platform)
71+
### Enable connectivity using a Resource Manager template
7272

7373
* Azure Resource Manager [template](https://github.com/Azure/azure-quickstart-templates/tree/master/quickstarts/microsoft.apimanagement/api-management-create-with-internal-vnet-publicip) (API version 2021-08-01 )
7474

7575
:::image type="content" source="~/reusable-content/ce-skilling/azure/media/template-deployments/deploy-to-azure-button.svg" alt-text="Button to deploy the Resource Manager template to Azure." border="false" link="https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Fazure-quickstart-templates%2Fmaster%2Fquickstarts%2Fmicrosoft.apimanagement%2Fapi-management-create-with-internal-vnet-publicip%2Fazuredeploy.json":::
7676

77-
### Enable connectivity using Azure PowerShell cmdlets (`stv1` platform)
78-
79-
[Create](/powershell/module/az.apimanagement/new-azapimanagement) or [update](/powershell/module/az.apimanagement/update-azapimanagementregion) an API Management instance in a VNet.
80-
8177
[!INCLUDE [api-management-recommended-nsg-rules](../../includes/api-management-recommended-nsg-rules.md)]
8278

8379
## DNS configuration

articles/api-management/api-management-using-with-vnet.md

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ For configurations specific to the *internal* mode, where the endpoints are acce
3232

3333
## Enable VNet connection
3434

35-
### Enable VNet connectivity using the Azure portal (`stv2` compute platform)
35+
### Enable VNet connectivity using the Azure portal
3636

3737
1. Go to the [Azure portal](https://portal.azure.com) to find your API management instance. Search for and select **API Management services**.
3838
1. Choose your API Management instance.
@@ -53,16 +53,13 @@ For configurations specific to the *internal* mode, where the endpoints are acce
5353

5454
1. In the top navigation bar, select **Save**.
5555

56-
### Enable connectivity using a Resource Manager template (`stv2` compute platform)
56+
### Enable connectivity using a Resource Manager template
5757

5858
* Azure Resource Manager [template](https://github.com/Azure/azure-quickstart-templates/tree/master/quickstarts/microsoft.apimanagement/api-management-create-with-external-vnet-publicip) (API version 2021-08-01)
5959

6060
:::image type="content" source="~/reusable-content/ce-skilling/azure/media/template-deployments/deploy-to-azure-button.svg" alt-text="Button to deploy the Resource Manager template to Azure." border="false" link="https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FAzure%2Fazure-quickstart-templates%2Fmaster%2Fquickstarts%2Fmicrosoft.apimanagement%2Fapi-management-create-with-external-vnet-publicip%2Fazuredeploy.json":::
6161

6262

63-
### Enable connectivity using Azure PowerShell cmdlets (`stv1` platform)
64-
65-
[Create](/powershell/module/az.apimanagement/new-azapimanagement) or [update](/powershell/module/az.apimanagement/update-azapimanagementregion) an API Management instance in a VNet.
6663

6764
[!INCLUDE [api-management-recommended-nsg-rules](../../includes/api-management-recommended-nsg-rules.md)]
6865

articles/api-management/backends.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -334,3 +334,4 @@ Include a JSON snippet similar to the following in your ARM template for a load-
334334
* Blog: [Using Azure API Management circuit breaker and load balancing with Azure OpenAI Service](https://techcommunity.microsoft.com/t5/fasttrack-for-azure/using-azure-api-management-circuit-breaker-and-load-balancing/ba-p/4041003)
335335
* Set up a [Service Fabric backend](how-to-configure-service-fabric-backend.yml) using the Azure portal.
336336
* Quickstart [Create a Backend Pool in Azure API Management using Bicep for load balance OpenAI requests](https://github.com/Azure-Samples/apim-lbpool-openai-quickstart)
337+
* See [Azure API Management as an Event Grid source](/azure/event-grid/event-schema-api-management) for information about Event Grid events that are generated by the gateway when a circuit breaker is tripped or reset. Use these events to take action before backend issues escalate.

articles/api-management/how-to-event-grid.md

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ author: dlepow
55
ms.topic: how-to
66
ms.service: azure-api-management
77
ms.author: danlep
8-
ms.date: 11/2/2021
8+
ms.date: 05/07/2025
99
ms.custom: devx-track-azurecli
1010
---
1111

@@ -15,12 +15,19 @@ ms.custom: devx-track-azurecli
1515

1616
API Management integrates with [Azure Event Grid](../event-grid/overview.md) so that you can send event notifications to other services and trigger downstream processes. Event Grid is a fully managed event routing service that uses a publish-subscribe model. Event Grid has built-in support for Azure services like [Azure Functions](../azure-functions/functions-overview.md) and [Azure Logic Apps](../logic-apps/logic-apps-overview.md), and can deliver event alerts to non-Azure services using webhooks.
1717

18+
You can subscribe to the following types of API Management events:
19+
20+
* **Control plane events**: These events are generated when you create, update, or delete certain API Management resources. For example, you can receive an event when a new user or new product is created in your API Management instance.
21+
* **Data plane events** (preview): These events are generated during operation of the API Management gateway. Currently, API Management can generate events for [backend circuit breakers](backends.md#circuit-breaker) and for the lifecycle of self-hosted gateway [access tokens](self-hosted-gateway-overview.md#authentication-options).
22+
23+
For a complete list of available events, see the [Event Grid schema for API Management](../event-grid/event-schema-api-management.md).
24+
25+
:::image type="content" source="media/how-to-event-grid/event-grid-intro.png" alt-text="Diagram of API Management integration with Event Grid.":::
26+
1827
For example, using integration with Event Grid, you can build an application that updates a database, creates a billing account, and sends an email notification each time a user is added to your API Management instance.
1928

2029
In this article, you subscribe to Event Grid events in your API Management instance, trigger events, and send the events to an endpoint that processes the data. To keep it simple, you send events to a sample web app that collects and displays the messages:
2130

22-
:::image type="content" source="media/how-to-event-grid/event-grid-viewer-intro.png" alt-text="API Management events in Event Grid viewer":::
23-
2431
[!INCLUDE [azure-cli-prepare-your-environment.md](~/reusable-content/azure-cli/azure-cli-prepare-your-environment.md)]
2532
- If you don't already have an API Management service, complete the following quickstart: [Create an Azure API Management instance](get-started-create-service-instance.md)
2633
- Enable a [system-assigned managed identity](api-management-howto-use-managed-service-identity.md#create-a-system-assigned-managed-identity) in your API Management instance.

0 commit comments

Comments
 (0)