Skip to content

Commit c92121d

Browse files
committed
Merge branch 'main' of https://github.com/MicrosoftDocs/azure-docs-pr into waf-crs
2 parents 56a10b7 + 73562c7 commit c92121d

1,181 files changed

Lines changed: 14786 additions & 8757 deletions

File tree

Some content is hidden

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

.openpublishing.publish.config.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -506,6 +506,18 @@
506506
"branch": "dev",
507507
"branch_mapping": {}
508508
},
509+
{
510+
"path_to_root": "functions-nodejs-extensions",
511+
"url": "https://github.com/Azure/azure-functions-nodejs-extensions",
512+
"branch": "main",
513+
"branch_mapping": {}
514+
},
515+
{
516+
"path_to_root": "functions-node-sdk-bindings-blob",
517+
"url": "https://github.com/Azure-Samples/azure-functions-blob-sdk-bindings-nodejs",
518+
"branch": "main",
519+
"branch_mapping": {}
520+
},
509521
{
510522
"path_to_root": "functions-python-tensorflow-tutorial",
511523
"url": "https://github.com/Azure-Samples/functions-python-tensorflow-tutorial",

.openpublishing.redirection.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6559,6 +6559,11 @@
65596559
"source_path": "articles/dns/dns-sdk.md",
65606560
"redirect_url": "https://learn.microsoft.com/dotnet/api/overview/azure/resourcemanager.dns-readme",
65616561
"redirect_document_id": false
6562+
},
6563+
{
6564+
"source_path": "articles/oracle/oracle-db/exadata-vm-clusters.md",
6565+
"redirect_url": "/azure/oracle/oracle-db/database-overview",
6566+
"redirect_document_id": false
65626567
}
65636568

65646569
]

articles/api-management/api-management-howto-aad.md

Lines changed: 71 additions & 109 deletions
Large diffs are not rendered by default.

articles/api-management/api-management-howto-api-inspector.md

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -173,8 +173,10 @@ To help automate these steps with the [Visual Studio Code REST Client](https://m
173173
@apiEndPoint = // API URL
174174
@requestBody = // Data to send
175175
@tenantId = // Tenant ID
176-
177-
POST https://login.microsoftonline.com/{tenantId}/oauth2/token
176+
@apiId = // Api Id for which trace log is to be generated.
177+
178+
# @name login
179+
POST https://login.microsoftonline.com/{{tenantId}}/oauth2/token
178180
content-type: application/x-www-form-urlencoded
179181
180182
grant_type=client_credentials&client_id={{clientId}}&client_secret={{clientSecret}}&resource=https%3A%2F%2Fmanagement.azure.com%2F
@@ -185,6 +187,7 @@ grant_type=client_credentials&client_id={{clientId}}&client_secret={{clientSecre
185187
# @name listDebugCredentials
186188
POST https://management.azure.com/subscriptions/{{subscriptionId}}/resourceGroups/{{resourceGroup}}/providers/Microsoft.ApiManagement/service/{{apimName}}/gateways/managed/listDebugCredentials?api-version=2023-05-01-preview
187189
Authorization: Bearer {{authToken}}
190+
188191
Content-Type: application/json
189192
{
190193
"credentialsExpireAfter": "PT1H",
@@ -197,7 +200,13 @@ Content-Type: application/json
197200
198201
###
199202
# @name callApi
200-
curl -k -H "Apim-Debug-Authorization: {{debugToken}}" -H 'Host: {{externalHost}}' -H 'Ocp-Apim-Subscription-Key: {{subscriptionKey}}' -H 'Content-Type: application/json' '{{apiEndPoint}}' -d '{{requestBody}}'
203+
POST {{apiEndPoint}} HTTP/1.1
204+
Host: {{externalHost}}
205+
Apim-Debug-Authorization: {{debugToken}}
206+
Ocp-Apim-Subscription-Key: {{subscriptionKey}}
207+
Content-Type: application/json
208+
209+
{{requestBody}}
201210
202211
###
203212
@traceId = {{callApi.response.headers.Apim-Trace-Id}}

articles/api-management/api-management-howto-create-subscriptions.md

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,34 +6,41 @@ author: dlepow
66

77
ms.service: azure-api-management
88
ms.topic: how-to
9-
ms.date: 09/30/2025
9+
ms.date: 12/09/2025
1010
ms.author: danlep
1111
---
12+
1213
# Create subscriptions in Azure API Management
1314

1415
[!INCLUDE [api-management-availability-all-tiers](../../includes/api-management-availability-all-tiers.md)]
1516

16-
When you publish APIs through Azure API Management, it's easy and common to secure access to those APIs by using subscription keys. Client applications that need to consume the published APIs must include a valid subscription key in HTTP requests when they make calls to those APIs. To get a subscription key for accessing APIs, a subscription is required. For more information about subscriptions, see [Subscriptions in Azure API Management](api-management-subscriptions.md).
17+
When you publish APIs through Azure API Management, you can secure access to those APIs by using subscription keys. Client applications that need to consume the published APIs must then include a valid subscription key in HTTP requests when they make calls to those APIs. To get a subscription key for accessing APIs, you need a subscription. For more information about subscriptions, see [Subscriptions in Azure API Management](api-management-subscriptions.md).
1718

18-
This article walks through the steps for creating subscriptions in the Azure portal.
19+
This article walks you through the steps for creating subscriptions in the Azure portal.
1920

2021
> [!IMPORTANT]
21-
> The **Allow tracing** setting in subscriptions to enable debug traces is deprecated. To improve security, tracing can now be enabled for specific API requests to API Management. To learn more, see [Enable tracing for an API](api-management-howto-api-inspector.md#enable-tracing-for-an-api).
22+
> The **Allow tracing** setting in subscriptions to enable debug traces is deprecated. To improve security, you can now enable tracing for specific API requests to API Management. To learn more, see [Enable tracing for an API](api-management-howto-api-inspector.md#enable-tracing-for-an-api).
2223
2324
## Prerequisites
2425

25-
To take the steps in this article, the prerequisites are as follows:
26+
To complete the steps in this article, you need the following prerequisites:
2627

2728
* [Create an API Management instance](get-started-create-service-instance.md).
2829
* Understand [subscriptions in API Management](api-management-subscriptions.md).
2930

3031
## Create a new subscription
3132

32-
1. Navigate to your API Management instance in the [Azure portal](https://portal.azure.com).
33+
> [!NOTE]
34+
> API publishers (administrators or users with appropriate permissions to the API Management instance) create and manage subscriptions. API consumers typically request subscriptions through the developer portal or receive them directly from API publishers.
35+
36+
1. Go to your API Management instance in the [Azure portal](https://portal.azure.com).
3337
1. Under **APIs** in the sidebar menu, select **Subscriptions**, then choose **Add subscription**.
34-
1. Provide a **Name** and optional **Display name** for the subscription.
35-
1. Select a **Scope** of the subscription from the dropdown list. To learn more, see [Scope of subscriptions](api-management-subscriptions.md#scope-of-subscriptions).
36-
1. Optionally, choose if the subscription should be associated with a **User** and whether to send a notification for use with the developer portal.
38+
1. Enter a **Name** and optional **Display name** for the subscription.
39+
1. Select a **Scope** of the subscription from the dropdown list. For more information, see [Scope of subscriptions](api-management-subscriptions.md#scope-of-subscriptions).
40+
1. Optionally, choose if the subscription should be associated with a **User**.
41+
* If you don't associate the subscription with a specific user, it becomes a standalone subscription that can be shared among multiple developers or teams.
42+
* You can't directly assign subscriptions to Microsoft Entra ID security groups. To provide access to group members, create a standalone subscription and distribute the keys, or use Microsoft Entra ID authentication with policies for group-based access control.
43+
1. Optionally, choose whether to send a notification for use with the developer portal.
3744
1. Select **Create**.
3845

3946
:::image type="content" source="media/api-management-howto-create-subscriptions/create-subscription.png" alt-text="Screenshot showing how to create an API Management subscription in the portal." lightbox="media/api-management-howto-create-subscriptions/create-subscription.png":::
@@ -45,3 +52,4 @@ After you create the subscription, it appears in the list on the **Subscriptions
4552
* [Azure API Management terminology](api-management-terminology.md)
4653
* [Tutorial: Import and publish your first API](import-and-publish.md)
4754
* [Azure API Management FAQs](api-management-faq.yml)
55+
* [Securely access products and APIs with Microsoft Entra applications](applications.md)

articles/api-management/api-management-howto-entra-external-id.md

Lines changed: 24 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -1,120 +1,79 @@
11
---
22
title: Authorize Access to API Management Developer Portal by using Microsoft Entra External ID
33
titleSuffix: Azure API Management
4-
description: Learn how to authorize users of the developer portal in Azure API Management by using Microsoft Entra External ID
4+
description: Learn how to authorize external users of the developer portal in Azure API Management by using Microsoft Entra External ID
55
services: api-management
66
author: dlepow
77

88
ms.service: azure-api-management
99
ms.topic: how-to
10-
ms.date: 09/30/2025
10+
ms.date: 12/08/2025
1111
ms.author: danlep
1212
ms.custom:
1313

1414
---
1515

16-
# How to authorize developer accounts by using Microsoft Entra External ID
16+
# How to authorize developer accounts by using external identity providers in Microsoft Entra External ID
1717

1818
[!INCLUDE [premium-dev-standard-premiumv2-standardv2-basicv2.md](../../includes/api-management-availability-premium-dev-standard-premiumv2-standardv2-basicv2.md)]
1919

2020
[Microsoft Entra External ID](/entra/external-id/external-identities-overview) is a cloud identity management solution that allows external identities to securely access your apps and resources. You can use it to manage access to your API Management developer portal by external identities.
2121

22-
In this article, you learn the configuration of the Microsoft Entra ID identity provider for the following scenarios that are supported by the API Management developer portal:
23-
24-
* Integration with Microsoft Entra External ID in your *workforce tenant*. For example, if your workforce tenant is for the Contoso organization, you might want to configure Google or Facebook as an external identity provider so that these external users can also sign in using their accounts.
25-
* Integration with Microsoft Entra External ID in a separate *external tenant*. This configuration only allows external users from that tenant to sign in to the developer portal.
22+
For an overview of options to secure access to the developer portal, see [Secure access to the API Management developer portal](secure-developer-portal-access.md).
2623

27-
> [!NOTE]
28-
> Currently, you can't configure more than one Microsoft Entra ID identity provider for the developer portal.
24+
Currently, API Management supports external identity providers in Microsoft Entra External ID when configured in a Microsoft Entra ID *workforce tenant*. For example, if you're enabling access to the developer portal by users in your workforce tenant, such as the Contoso organization, you might want to configure Google or Facebook as an external identity provider so that these external users can also sign in using their accounts. [Learn more about workforce and external tenant configurations in Microsoft External ID](/entra/external-id/tenant-configurations).
2925

30-
For an overview of options to secure access to the developer portal, see [Secure access to the API Management developer portal](secure-developer-portal-access.md).
26+
[!INCLUDE [api-management-developer-portal-entra-tenants.md](../../includes/api-management-developer-portal-entra-tenants.md)]
3127

3228
[!INCLUDE [api-management-active-directory-b2c-support](../../includes/api-management-active-directory-b2c-support.md)]
3329

3430
[!INCLUDE [active-directory-b2c-end-of-sale-notice-b](../../includes/active-directory-b2c-end-of-sale-notice-b.md)]
3531

3632
## Prerequisites
3733

38-
* A Microsoft Entra ID tenant (workforce tenant) in which to enable external access, or a separate [external tenant](/entra/external-id/customers/how-to-create-external-tenant-portal)
34+
* A Microsoft Entra ID tenant (workforce tenant) in which to enable external access.
3935
* Permissions to create an application and configure user flows in the workforce tenant.
4036
* An API Management instance. If you don't already have one, [create an Azure API Management instance](get-started-create-service-instance.md).
4137
* If you created your instance in a v2 tier, enable the developer portal. For more information, see [Tutorial: Access and customize the developer portal](api-management-howto-developer-portal-customize.md).
4238

4339
## Add external identity provider to your tenant
4440

45-
If you're using a workforce tenant, an external identity provider must be enabled in your workforce tenant. Configuring the external identity provider is outside the scope of this article. For more information, see [Identity providers for External ID in workforce tenant](/entra/external-id/identity-providers).
46-
47-
## Create Microsoft Entra app registration
48-
49-
Create an app registration in your Microsoft Entra ID tenant. The app registration represents the developer portal application in Microsoft Entra and enables the portal to sign in users by using Microsoft Entra ID.
50-
51-
1. In the Azure portal, go to Microsoft Entra ID.
52-
1. In the sidebar menu, under **Manage**, select **App registrations** > **+ New registration**.
53-
1. In the **Register an application** page, enter your application's registration information.
54-
* In the **Name** section, enter an application name of your choosing.
55-
* In the **Supported account types** section, select **Accounts in this organizational directory only**.
56-
* In **Redirect URI**, select **Single-page application (SPA)** and enter the following URL: `https://{your-api-management-service-name}.developer.azure-api.net/signin`, where `{your-api-management-service-name}` is the name of your API Management instance.
57-
* Select **Register** to create the application.
58-
1.On the app **Overview** page, find the **Application (client) ID** and **Directory (tenant) ID** and copy these values to a safe location. You need them later.
59-
1. In the sidebar menu, under **Manage**, select **Certificates & secrets**.
60-
1. From the **Certificates & secrets** page, on the **Client secrets** tab, select **+ New client secret**.
61-
* Enter a **Description**.
62-
* Select any option for **Expires**.
63-
* Choose **Add**.
64-
1. Copy the client **Secret value** to a safe location before leaving the page. You need it later.
65-
1. In the sidebar menu, under **Manage**, select **Token configuration** > **+ Add optional claim**.
66-
1. In **Token type**, select **ID**.
67-
1. Select (check) the following claims: **email**, **family_name**, **given_name**.
68-
1. Select **Add**. If prompted, select **Turn on the Microsoft Graph email, profile permission**.
41+
For this scenario, you must enable an identity provider for External ID in your workforce tenant. Configuring the external identity provider depends on the specific provider and is outside the scope of this article. For options and links to steps, see [Identity providers for External ID in workforce tenants](/entra/external-id/identity-providers).
42+
43+
[!INCLUDE [api-management-developer-portal-entra-app.md](../../includes/api-management-developer-portal-entra-app.md)]
6944

7045
## Enable self-service sign-up for your tenant
7146

72-
For external users to sign up for access to the developer portal, you must complete these steps:
47+
To allow external users to register for access to the developer portal, complete the following steps:
7348

74-
* Enable self-service sign-up for your tenant.
49+
* Enable self-service sign-up for the external tenant.
7550
* Add your app to the self-service sign-up user flow.
7651

77-
For more information and detailed steps, see the following articles, depending on whether you're using a workforce or an external tenant:
78-
79-
- Workforce tenant: [Add self-service sign-up user flows for B2B collaboration](/entra/external-id/self-service-sign-up-user-flow)
80-
- External tenant: [Create a sign-up and sign-in user flow for an external tenant app](/entra/external-id/customers/how-to-user-flow-sign-up-sign-in-customers) and [Add an app to the user flow](/entra/external-id/customers/how-to-user-flow-add-application)
81-
82-
## Configure Microsoft Entra ID as an identity provider for developer portal
83-
84-
In your API Management instance, configure the Microsoft Entra ID identity provider. You need the values you copied from your app registration in a previous section.
52+
For more information and detailed steps, see [Add self-service sign-up user flows for B2B collaboration](/entra/external-id/self-service-sign-up-user-flow).
8553

86-
1. In the [Azure portal](https://portal.azure.com) tab, navigate to your API Management instance.
87-
1. In the sidebar menu, under **Developer portal**, select **Identities** > **+ Add**.
88-
1. In the **Add identity provider** page, select **Microsoft Entra ID**. Once selected, you're able to enter other necessary information.
89-
1. In **client id**, enter the **Application (client) ID** from your app registration.
90-
1. In **Client secret**, enter the **Secret value** from your app registration.
91-
1. In **Signin tenant**, enter the **Directory (tenant) ID** from your app registration.
92-
* In the **Client library** dropdown, select **MSAL**.
93-
1. Select **Add**.
9454

95-
:::image type="content" source="media/api-management-howto-external-id/entra-id-identity-provider.png" alt-text="Screenshot of the Microsoft Entra ID identity provider configuration in the portal.":::
96-
1. Republish the developer portal for the Microsoft Entra configuration to take effect. In the sidebar menu, under **Developer portal**, select **Portal overview** > **Publish**.
55+
## <a id="log_in_to_dev_portal"></a> Sign in to developer portal with Microsoft Entra External ID
9756

98-
> [!IMPORTANT]
99-
> You need to [republish the developer portal](developer-portal-overview.md#publish-the-portal) when you create or update the identity provider's configuration settings for the changes to take effect.
57+
In the developer portal, you can enable sign in with Microsoft Entra External ID by using the **Sign-in button: OAuth** widget. The widget is already included on the sign-in page of the default developer portal content.
10058

101-
## Sign in to developer portal with Microsoft Entra External ID
59+
A user can then sign in with Microsoft Entra External ID as follows:
10260

103-
In the developer portal, sign-in with Microsoft Entra External ID is possible with the **Sign-in button: OAuth** widget. The widget is already included on the sign-in page of the default developer portal content.
61+
1. Go to the developer portal. Select **Sign in**.
10462

105-
1. To sign in by using Microsoft Entra External ID, open a new browser window and go to the developer portal. Select **Sign in**.
63+
1. On the **Sign in** page, select **Microsoft Entra ID**.
10664

107-
1. On the **Sign in** page, select **Azure Active Directory**.
65+
:::image type="content" source="media/api-management-howto-external-id/developer-portal-sign-in.png" alt-text="Screenshot of selecting Microsoft Entra ID on Sign in page in developer portal.":::
10866

109-
:::image type="content" source="media/api-management-howto-external-id/developer-portal-sign-in.png" alt-text="Screenshot of select Azure Active Directory on Sign in page in developer portal.":::
67+
> [!TIP]
68+
> If you configure more than one Microsoft Entra tenant for access, more than one Microsoft Entra ID button appears on the sign-in page. Each button is labeled with the tenant name.
11069
111-
1. In the sign-in window for your Microsoft Entra tenant, select **Sign-in options**. Select the identity provider you configured in your Microsoft Entra tenant to sign in. For example, if you configured Google as an identity provider, select **Sign in with Google**.
70+
1. In the sign-in window for your Microsoft Entra tenant, select **Sign-in options**. Select the external identity provider configured in your Microsoft Entra tenant to sign in. For example, if you configured Google as an identity provider, select **Sign in with Google**.
11271

11372
:::image type="content" source="media/api-management-howto-external-id/sign-in-options.png" alt-text="Screenshot of select external identity provider in Microsoft Entra.":::
11473

115-
To continue sign-in, respond to the prompts. After sign-in is complete, you're redirected back to the developer portal.
74+
1. To continue sign-in, respond to the prompts. After sign-in is complete, the user is redirected back to the developer portal.
11675

117-
You're now signed in to the developer portal for your API Management service instance. You're added as a new API Management user identity in Users, and a new external tenant user in Microsoft Entra ID.
76+
The user is now signed in to the developer portal, added as a new API Management user identity in **Users**, and added as a new external tenant user in Microsoft Entra ID.
11877

11978
## Related content
12079

0 commit comments

Comments
 (0)