Skip to content

Commit e9b2e0f

Browse files
Merge pull request #309627 from MicrosoftDocs/main
Auto Publish – main to live - 2025-12-16 18:00 UTC
2 parents ed1928c + 8566075 commit e9b2e0f

71 files changed

Lines changed: 826 additions & 735 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.

articles/api-management/service-limits.md

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Learn about service limits in Azure API Management, including their
44
author: dlepow
55
ms.service: azure-api-management
66
ms.topic: concept-article
7-
ms.date: 10/22/2025
7+
ms.date: 12/15/2025
88
ms.author: danlep
99
ai-usage: ai-assisted
1010
---
@@ -27,21 +27,19 @@ Resource limits are interrelated and tuned to work together. They prevent any si
2727

2828
## Changes to service limits in Classic tiers
2929

30-
Starting March 2026, Azure API Management will apply updated limits to instances in the Classic tiers (Developer, Basic, Standard, and Premium) and the Consumption tier. These updates align with each tier’s capabilities and help customers choose the right option for their needs.
31-
32-
Current limits for Classic tiers are published [here](/azure/azure-resource-manager/management/azure-subscription-service-limits?toc=%2Fazure%2Fapi-management%2Ftoc.json&bc=%2Fazure%2Fapi-management%2Fbreadcrumb%2Ftoc.json#limits---api-management-classic-tiers). By March 2026, the scope of entities with limits could be reduced.
30+
Starting March 2026, Azure API Management will publish and apply updated limits to instances in the Classic tiers (Developer, Basic, Standard, and Premium) and the Consumption tier. These updates will align with each tier’s capabilities and help customers choose the right option for their needs.
3331

3432
### What's changing
3533

36-
* New limits for Classic tier resources are more easily compared with the limits in the [V2 service tiers](/azure/azure-resource-manager/management/azure-subscription-service-limits?toc=%2Fazure%2Fapi-management%2Ftoc.json&bc=%2Fazure%2Fapi-management%2Fbreadcrumb%2Ftoc.json#limits---api-management-v2-tiers).
37-
* Previously, limits for certain resources in Classic tiers weren't defined explicitly or enforced. In practice, these resources were always constrained by service configuration, service capacity, number of scale units, policy configuration, and other factors. The new limits make these constraints explicit and predictable.
34+
* New limits for Classic tier resources will be more easily compared with the limits in the [V2 service tiers](/azure/azure-resource-manager/management/azure-subscription-service-limits?toc=%2Fazure%2Fapi-management%2Ftoc.json&bc=%2Fazure%2Fapi-management%2Fbreadcrumb%2Ftoc.json#limits---api-management-v2-tiers).
35+
* Previously, limits for certain resources in Classic tiers weren't defined explicitly or enforced. In practice, these resources were always constrained by service configuration, service capacity, number of scale units, policy configuration, and other factors. The new limits will make these constraints explicit and predictable.
3836

3937
### Limits policy for existing customers
4038

41-
If your existing API Management instance already exceeds new Classic tier limits, you can continue using your resources without interruption. This means:
39+
After the new Classic tier limits take effect, you can continue using your resources without interruption. This means:
4240

43-
* Existing services that already exceed published limits aren't impacted.
44-
* You're able to make changes to existing resources and add new resources up to a small threshold above your current usage.
41+
* Existing Classic tier services that already exceed published limits won't be impacted.
42+
* You'll be able to make changes to existing resources and add new resources up to a small threshold above your current usage.
4543

4644
This approach ensures that existing workloads aren't disrupted while still encouraging alignment with the new limits over time.
4745

articles/app-service/configure-authentication-ai-foundry-openapi-tool.md

Lines changed: 55 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: Secure OpenAPI tool calls from Foundry Agent Service
33
description: Configure Microsoft Entra authentication to secure Microsoft Foundry tool calls with managed identity, step by step.
44
ms.topic: how-to
5-
ms.date: 10/28/2025
5+
ms.date: 12/04/2025
66
author: cephalin
77
ms.author: cephalin
88
ms.service: azure-app-service
@@ -28,13 +28,38 @@ This article shows you how to secure your App Service OpenAPI endpoints when the
2828

2929
You need both the object ID and the application ID of your Microsoft Foundry project's managed identity to configure App Service authentication. A system-assigned managed identity is automatically created for your Microsoft Foundry project when you create it. This identity is what Foundry Agent Service uses to authenticate with your app.
3030

31+
# [New Foundry portal](#tab/new-foundry)
32+
33+
1. In the [Foundry portal](https://ai.azure.com) make sure you select **New Foundry** in the top right corner. Note the new Foundry portal doesn't show agents created in the classic portal.
34+
35+
1. From the top right menu, select **Operate** > **Admin**. Then select your project's parent resource in the **Parent resource** column.
36+
37+
1. In the parent resource's details page, select **Manage this resource in the Azure Portal**.
38+
39+
> [!NOTE]
40+
> Before you move on, make sure you're on a Foundry resource page, *not* a Foundry project resource page.
41+
42+
1. In the Foundry resource's left menu, select **Resource Management** > **Identity**.
43+
44+
1. Under **System assigned**, copy the value of **Object (principal) ID** for later.
45+
46+
1. In the Azure portal, search for and select **Microsoft Entra ID**.
47+
48+
1. In the search box, search for the object ID you copied and select it in the search results.
49+
50+
1. On the **Overview** page, copy the value of **Application ID**.
51+
52+
Note the **Object ID** is the same as the one shown in the system-assigned managed identity. You need both the application ID and the object ID for configuring App Service authentication.
53+
54+
# [Classic Foundry portal](#tab/classic)
55+
3156
1. In the [Foundry portal](https://ai.azure.com), navigate to your project and select **Overview**.
3257

3358
1. In the **Project details** section on the right, select the link next to **Resource group** to open the resource group in the Azure portal.
3459

35-
1. In the resource group, find and select your Microsoft Foundry project resource.
60+
1. In the resource group, find and select the Foundry resource (*not* the Foundry project resource).
3661

37-
1. In the project resource's left menu, select **Resource Management** > **Identity**.
62+
1. In the Foundry resource's left menu, select **Resource Management** > **Identity**.
3863

3964
1. Under **System assigned**, copy the value of **Object (principal) ID** for later.
4065

@@ -46,6 +71,8 @@ You need both the object ID and the application ID of your Microsoft Foundry pro
4671

4772
Note the **Object ID** is the same as the one shown in the system-assigned managed identity. You need both the application ID and the object ID for configuring App Service authentication.
4873

74+
---
75+
4976
## Configure Microsoft Entra authentication for your app
5077

5178
1. In the Azure portal, navigate to your App Service app.
@@ -94,22 +121,38 @@ After enabling authentication, you need to update the app registration's Applica
94121
> [!NOTE]
95122
> This section assumes you already completed one of the tutorials in the [Prerequisites](#prerequisites) section, where you added your app as an OpenAPI tool in Microsoft Foundry using anonymous authentication. You now update the tool to use managed identity authentication.
96123
124+
# [New Foundry portal](#tab/new-foundry)
125+
126+
1. Back in the [Foundry portal](https://ai.azure.com), select your agent.
127+
128+
1. Find the OpenAPI tool and select **...** > **Edit**.
129+
130+
1. The **OpenAPI 3.0+ schema** box should have the schema from your App Service app. If not, paste in your OpenAPI schema. For more information, see [How to use OpenAPI with Foundry Agent Service](/azure/ai-services/agents/how-to/tools/openapi-spec).
131+
132+
1. For **Authentication method**, select **Managed identity**.
133+
134+
1. For **Audience**, enter your App Service app's URL. This URL must match the **Application ID URI** that you configured earlier.
135+
136+
1. Select **Update tool**.
137+
138+
# [Classic Foundry portal](#tab/classic)
139+
97140
1. Back in the [Foundry portal](https://ai.azure.com), select your agent.
98141

99142
1. Find the OpenAPI tool and select it to edit.
100143

101-
1. In the **Define the schema for this tool** page:
144+
1. In the **Define the schema for this tool** page, paste your OpenAPI schema. For more information, see [How to use OpenAPI with Foundry Agent Service](/azure/ai-services/agents/how-to/tools/openapi-spec).
102145

103-
1. Paste your OpenAPI schema. For more information, see [How to use OpenAPI with Foundry Agent Service](/azure/ai-services/agents/how-to/tools/openapi-spec).
104-
105-
1. For **Authentication method**, select **Managed Identity**.
106-
107-
1. For **Audience**, enter your App Service app's URL. This URL must match the **Application ID URI** that you configured earlier.
146+
1. For **Authentication method**, select **Managed Identity**.
108147

109-
> [!TIP]
110-
> Foundry Agent Service uses the system-assigned managed identity to authenticate with your app. Because you added the identity's client ID as an allowed client application and an allowed identity in your app's authentication provider configuration, the agent service is authorized to call your app's APIs.
148+
1. For **Audience**, enter your App Service app's URL. This URL must match the **Application ID URI** that you configured earlier.
149+
150+
1. Save the tool.
151+
152+
---
111153

112-
1. Review and save the tool.
154+
> [!TIP]
155+
> Foundry Agent Service uses the system-assigned managed identity to authenticate with your app. Because you added the identity's client ID as an allowed client application and an allowed identity in your app's authentication provider configuration, the agent service is authorized to call your app's APIs.
113156
114157
## Test the agent
115158

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
---
2+
title: Configure permissions for Foundry project resource
3+
description: Steps to assign the required Azure role for your App Service app to access the Foundry project resource.
4+
ms.author: cephalin
5+
ms.topic: include
6+
ms.date: 12/08/2025
7+
ms.service: azure-app-service
8+
---
9+
10+
1. From the top menu of the new Foundry portal, select **Operate**, then select **Admin**. In the row for your Foundry project, you should see two links. The one in the **Name** column is the Foundry project resource, and the one in the **Parent resource** column is the Foundry resource.
11+
12+
:::image type="content" source="../../media/tutorial-ai-agent-web-app-semantic-kernel-foundry-dotnet/select-foundry-and-foundry-project.png" alt-text="Screenshot showing how to quickly go to the foundry resource or foundry project resource.":::
13+
14+
1. Select the Foundry project resource in the **Name** column and then select **Manage this resource in the Azure portal**. From the Azure portal, you can assign role-based access for the resource to the deployed web app.
15+
16+
1. Add the following role for the App Service app's managed identity:
17+
18+
| Target resource | Required role | Needed for |
19+
|--------------------------------|-------------------------------------|-------------------------|
20+
| Foundry Project | Azure AI User | Reading and calling the Foundry agent. |
21+
22+
For instructions, see [Assign Azure roles using the Azure portal](/azure/role-based-access-control/role-assignments-portal).
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
---
2+
title: Configure permissions for Microsoft Foundry resource
3+
description: Steps to assign the required Azure role for your App Service app to access the Microsoft Foundry resource.
4+
ms.author: cephalin
5+
ms.topic: include
6+
ms.date: 12/08/2025
7+
ms.service: azure-app-service
8+
---
9+
10+
1. From the top menu of the new Foundry portal, select **Operate**, then select **Admin**. In the row for your Foundry project, you should see two links. The one in the **Name** column is the Foundry project resource, and the one in the **Parent resource** column is the Foundry resource.
11+
12+
:::image type="content" source="../../media/tutorial-ai-agent-web-app-semantic-kernel-foundry-dotnet/select-foundry-and-foundry-project.png" alt-text="Screenshot showing how to quickly go to the foundry resource or foundry project resource.":::
13+
14+
1. Select the Foundry resource in the **Parent resource** and then select **Manage this resource in the Azure portal**. From the Azure portal, you can assign role-based access for the resource to the deployed web app.
15+
16+
1. Add the following role for the App Service app's managed identity:
17+
18+
| Target resource | Required role | Needed for |
19+
|--------------------------------|-------------------------------------|-------------------------|
20+
| Foundry | Cognitive Services OpenAI User | The chat completion service in Microsoft Agent Framework. |
21+
22+
For instructions, see [Assign Azure roles using the Azure portal](/azure/role-based-access-control/role-assignments-portal).
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
---
2+
title: Create a Foundry agent with OpenAPI tool
3+
description: Steps to create a Foundry agent in the portal and configure it with an OpenAPI tool to call your web app.
4+
ms.author: cephalin
5+
ms.topic: include
6+
ms.date: 12/08/2025
7+
ms.service: azure-app-service
8+
---
9+
10+
1. In the [Foundry portal](https://ai.azure.com), make sure the top **New Foundry** radio button is set to active and create a project.
11+
12+
1. In the home page, copy the **Project endpoint** for later.
13+
14+
1. Select **Start building** > **Create agent** and follow the prompt.
15+
16+
1. In the new agent's playground, create an OpenAPI tool to call your web app by selecting **Tools** > **Add** > **Custom** > **OpenAPI tool** > **Create**. In the **Setup** pane, add an action with the OpenAPI spec tool. Use the OpenAPI schema that you get from the deployed web app and **anonymous** authentication. For detailed steps, see [How to use the OpenAPI spec tool](/azure/ai-foundry/agents/how-to/tools/openapi?view=foundry&preserve-view=true).
17+
18+
Your application code is already configured to include the server's `url` and `operationId`, which are needed by the agent. For more information, see [Connect to OpenAPI Specification](/azure/ai-foundry/agents/how-to/tools/openapi?view=foundry&preserve-view=true#prerequisites).
19+
20+
1. Be sure to select **Save**.
21+
22+
1. Select **Try in playground** and test your Foundry agent with prompts like "*Show me all the tasks*" and "*Please add a task.*"
23+
24+
If you get a valid response, the agent is making tool calls to the OpenAPI endpoint on your deployed web app.
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
---
2+
title: Create and deploy a model in Microsoft Foundry
3+
description: Steps to create a Microsoft Foundry project and deploy a model for use with your agent.
4+
ms.author: cephalin
5+
ms.topic: include
6+
ms.date: 12/08/2025
7+
ms.service: azure-app-service
8+
---
9+
10+
1. In the [Foundry portal](https://ai.azure.com), make sure the top **New Foundry** radio button is set to active and create a project.
11+
12+
1. Deploy a model of your choice (see [Microsoft Foundry Quickstart: Create resources](/azure/ai-foundry/quickstarts/get-started-code?view=foundry&preserve-view=true#create-resources)).
13+
14+
1. From top of the model playground, copy the model name.
15+
16+
1. The easiest way to get the Azure OpenAI endpoint is still from the classic portal. Select the **New Foundry** radio button, then **Azure OpenAI**, and then copy the URL in **Azure OpenAI endpoint** for later.
17+
18+
:::image type="content" source="../../media/tutorial-ai-agent-web-app-semantic-kernel-foundry-dotnet/foundry-project-openai-endpoint.png" alt-text="Screenshot showing how to copy the OpenAI endpoint and the foundry project endpoint in the foundry portal.":::
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
---
2+
title: Create an agent in Microsoft Foundry
3+
description: Steps to create an agent in the Microsoft Foundry portal and add an OpenAPI tool.
4+
ms.author: cephalin
5+
ms.topic: include
6+
ms.date: 12/03/2025
7+
ms.service: azure-app-service
8+
---
9+
10+
> [!NOTE]
11+
> These steps use the new Foundry portal.
12+
13+
1. In the [Foundry portal](https://ai.azure.com/), in the top right menu, select **New Foundry**.
14+
1. If this is your first time in the new Foundry portal, select the project name and select **Create new project**.
15+
1. Give your project a name and select **Create**.
16+
1. Select **Start building**, then **Create agent**.
17+
1. Give your agent a name and select **Create**. When the agent is ready, you should see the agent playground.
18+
19+
Note the [models you can use and the available regions](/azure/ai-foundry/agents/concepts/model-region-support?view=foundry&tabs=global-standard&preserve-view=true).
20+
21+
1. In the agent playground, expand **Tools** and select **Add** > **Custom** > **OpenAPI tool** > **Create**.
22+
1. Give the tool a name and a description. In the **OpenAPI 3.0+ schema** box, paste the schema that you copied earlier.
23+
1. Select **Create tool**.
24+
1. Select **Save**.
25+
26+
> [!TIP]
27+
> In this tutorial, the OpenAPI tool is configured to call your app anonymously without authentication. For production scenarios, you should secure the tool with managed identity authentication. For step-by-step instructions, see [Secure OpenAPI endpoints for Foundry Agent Service](../../configure-authentication-ai-foundry-openapi-tool.md).
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
---
2+
title: Test the Foundry agent
3+
description: Test your Foundry agent in the playground with sample prompts to verify the OpenAPI tool integration.
4+
ms.author: cephalin
5+
ms.topic: include
6+
ms.date: 12/03/2025
7+
ms.service: azure-app-service
8+
---
9+
10+
1. In **Instructions**, give some simple instructions, like *"Please use the todosApp tool to help manage tasks."*
11+
12+
1. Chat with the agent with the following prompt suggestions:
13+
14+
- Show me all the tasks.
15+
- Create a task called "Come up with three lettuce jokes."
16+
- Change that to "Come up with three knock-knock jokes."
17+
18+
:::image type="content" source="../../media/tutorial-ai-integrate-azure-ai-agent-dotnet/agents-playground.png" alt-text="Screenshot showing the agents playground in the middle of a conversation that takes actions by using the OpenAPI tool.":::

articles/app-service/index.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,8 +72,6 @@ landingContent:
7272
url: tutorial-ai-openai-chatbot-java.md
7373
- text: Run a chatbot with a local SLM (Express.js)
7474
url: tutorial-ai-slm-expressjs.md
75-
- text: Invoke a web app from Azure AI Agent
76-
url: invoke-openapi-web-app-from-azure-ai-agent-service.md
7775

7876
- title: Secure and deploy
7977
linkLists:

0 commit comments

Comments
 (0)