Skip to content

Commit d10b671

Browse files
authored
Merge pull request #298705 from MicrosoftDocs/main
4/23/2025 AM Publish
2 parents ed596c9 + 9e60692 commit d10b671

36 files changed

+246
-134
lines changed

articles/active-directory-b2c/best-practices.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ Manage your Azure AD B2C environment.
8282
| Use version control for your custom policies | Consider using GitHub, Azure Repos, or another cloud-based version control system for your Azure AD B2C custom policies. |
8383
| Use the Microsoft Graph API to automate the management of your B2C tenants | Microsoft Graph APIs:<br/>Manage [Identity Experience Framework](/graph/api/resources/trustframeworkpolicy?preserve-view=true&view=graph-rest-beta) (custom policies)<br/>[Keys](/graph/api/resources/trustframeworkkeyset?preserve-view=true&view=graph-rest-beta)<br/>[User Flows](/graph/api/resources/identityuserflow?preserve-view=true&view=graph-rest-beta) |
8484
| Integrate with Azure DevOps | A [CI/CD pipeline](deploy-custom-policies-devops.md) makes moving code between different environments easy and ensures production readiness always. |
85-
| Deploy custom policy | Azure AD B2C relies on caching to deliver performance to your end users. When you deploy a custom policy using whatever method, expect a delay of up to **30 minutes** for your users to see the changes. As a result of this behavior, consider the following practices when you deploy your custom policies: <br> - If you're deploying to a development environment, set the `DeploymentMode` attribute in your custom policy file's `<TrustFrameworkPolicy>` element to `Production`. <br> - Deploy your updated policy files to a production environment when traffic in your app is low. <br> - When you deploy to a production environment to update existing policy files, upload the updated files with new name(s), and then update your app reference to the new name(s). You can then remove the old policy files afterwards.<br> - You can set the `DeploymentMode` to `Development` in a production environment to bypass the caching behavior. However, we don't recommend this practice. If you [Collect Azure AD B2C logs with Application Insights](troubleshoot-with-application-insights.md), all claims sent to and from identity providers are collected, which is a security and performance risk. |
85+
| Deploy custom policy | Azure AD B2C relies on caching to deliver performance to your end users. When you deploy a custom policy using whatever method, expect a delay of up to **30 minutes** for your users to see the changes. As a result of this behavior, consider the following practices when you deploy your custom policies: <br> - If you're deploying to a development environment, set the `DeploymentMode` attribute in your custom policy file's `<TrustFrameworkPolicy>` element to `Production`. <br> - Deploy your updated policy files to a production environment when traffic in your app is low. <br> - When you deploy to a production environment to update existing policy files, upload the updated files with new names, which act as new versions of the policies. Then, update your app references to the new names/versions. You can remove the old policy files afterward or keep them as your last known good configuration for easy rollback.<br> - If you need to deploy to a production environment to update existing policy files without versioning, make the new policy backward compatible with the old policy by following some simple rules. If you need to change a technical profile, claim, or [SubJourney](subjourneys.md), create a new version of it, publish the policy, and wait for 30 minutes for Azure AD B2C caches to pick up the new version. Then, in a subsequent update, make changes to use the new version and perform another policy update. Wait for another 30 minutes, then you can delete the old version of the elements if needed. Ensure all of your business logic is inside SubJourneys.<br> - You can set the `DeploymentMode` to `Development` in a production environment to bypass the caching behavior. However, we don't recommend this practice. If you [Collect Azure AD B2C logs with Application Insights](troubleshoot-with-application-insights.md), all claims sent to and from identity providers are collected, which is a security and performance risk. |
8686
| Deploy app registration updates | When you modify your application registration in your Azure AD B2C tenant, such as updating the application's redirect URI, expect a delay of up to **2 hours (3600s)** for the changes to take effect in the production environment. We recommend that you modify your application registration in your production environment when traffic in your app is low.|
8787
| Integrate with Azure Monitor | [Audit log events](view-audit-logs.md) are only retained for seven days. [Integrate with Azure Monitor](azure-monitor.md) to retain the logs for long-term use, or integrate with third-party security information and event management (SIEM) tools to gain insights into your environment. |
8888
| Setup active alerting and monitoring | [Track user behavior](./analytics-with-application-insights.md) in Azure AD B2C using Application Insights. |

articles/active-directory-b2c/jwt-issuer-technical-profile.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,15 @@ ms.author: kengaderdus
1414
ms.subservice: b2c
1515

1616

17-
#Customer intent: As a developer implementing custom policies in Azure Active Directory B2C, I want to define a technical profile for a JWT token issuer, so that I can emit a JWT token that is returned to the relying party application during the authentication flow.
17+
#Customer intent: As a developer implementing custom policies in Azure Active Directory B2C, I want to define a technical profile for a JWT issuer, so that I can emit a JWT that is returned to the relying party application during the authentication flow.
1818

1919
---
2020

21-
# Define a technical profile for a JWT token issuer in an Azure Active Directory B2C custom policy
21+
# Define a technical profile for a JWT issuer in an Azure Active Directory B2C custom policy
2222

2323
[!INCLUDE [active-directory-b2c-advanced-audience-warning](../../includes/active-directory-b2c-advanced-audience-warning.md)]
2424

25-
Azure Active Directory B2C (Azure AD B2C) emits several types of security tokens as it processes each authentication flow. A technical profile for a JWT token issuer emits a JWT token that is returned back to the relying party application. Usually this technical profile is the last orchestration step in the user journey.
25+
Azure Active Directory B2C (Azure AD B2C) emits several types of security tokens as it processes each authentication flow. A technical profile for a JWT issuer emits a JWT that is returned back to the relying party application. Usually this technical profile is the last orchestration step in the user journey.
2626

2727
## Protocol
2828

@@ -73,7 +73,7 @@ The CryptographicKeys element contains the following attributes:
7373

7474
| Attribute | Required | Description |
7575
| --------- | -------- | ----------- |
76-
| issuer_secret | Yes | The X509 certificate (RSA key set) to use to sign the JWT token. This is the `B2C_1A_TokenSigningKeyContainer` key you configure in [Get started with custom policies](tutorial-create-user-flows.md?pivots=b2c-custom-policy). |
76+
| issuer_secret | Yes | The X509 certificate (RSA key set) to use to sign the JWT. This is the `B2C_1A_TokenSigningKeyContainer` key you configure in [Get started with custom policies](tutorial-create-user-flows.md?pivots=b2c-custom-policy). |
7777
| issuer_refresh_token_key | Yes | The X509 certificate (RSA key set) to use to encrypt the refresh token. You configured the `B2C_1A_TokenEncryptionKeyContainer` key in [Get started with custom policies](tutorial-create-user-flows.md?pivots=b2c-custom-policy) |
7878

7979
## Session management

articles/active-directory-b2c/userjourneys.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ The **UserJourney** element contains the following attribute:
4646
| Attribute | Required | Description |
4747
| --------- | -------- | ----------- |
4848
| Id | Yes | An identifier of a user journey that can be used to reference it from other elements in the policy. The **DefaultUserJourney** element of the [relying party policy](relyingparty.md) points to this attribute. |
49-
| DefaultCpimIssuerTechnicalProfileReferenceId| No | The default token issuer technical profile reference ID. For example, [JWT token issuer](userjourneys.md), [SAML token issuer](saml-issuer-technical-profile.md), or [OAuth2 custom error](oauth2-error-technical-profile.md). If your user journey or sub journey already has another `SendClaims` orchestration step, set the `DefaultCpimIssuerTechnicalProfileReferenceId` attribute to the user journey's token issuer technical profile. |
49+
| DefaultCpimIssuerTechnicalProfileReferenceId| No | The default token issuer technical profile reference ID. For example, [JWT issuer](userjourneys.md), [SAML token issuer](saml-issuer-technical-profile.md), or [OAuth2 custom error](oauth2-error-technical-profile.md). If your user journey or sub journey already has another `SendClaims` orchestration step, set the `DefaultCpimIssuerTechnicalProfileReferenceId` attribute to the user journey's token issuer technical profile. |
5050

5151
The **UserJourney** element contains the following elements:
5252

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

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,21 @@ More information about policies:
151151
| [HTTP data source for resolver](http-data-source-policy.md) | Configures the HTTP request and optionally the HTTP response to resolve data for an object type and field in a GraphQL schema. | Yes | Yes | Yes | No | No |
152152
| [Publish event to GraphQL subscription](publish-event-policy.md) | Publishes an event to one or more subscriptions specified in a GraphQL API schema. Configure the policy in a GraphQL resolver for a related field in the schema for another operation type such as a mutation. | Yes | Yes | Yes | No | No |
153153

154+
## AI gateway
155+
156+
|Policy |Description | Classic | V2 | Consumption |Self-hosted | Workspace |
157+
|---------|---------|---------|---------|---------|--------|----------|
158+
| [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 |
159+
| [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 |
160+
| [Emit Azure OpenAI token metrics](azure-openai-emit-token-metric-policy.md) | Sends metrics to Application Insights for consumption of large language model tokens through Azure OpenAI service APIs. | Yes | Yes | No | Yes | Yes |
161+
| [Emit large language model API token metrics](llm-emit-token-metric-policy.md) | Sends metrics to Application Insights for consumption of large language model (LLM) tokens through LLM APIs. | Yes | Yes | No | Yes | Yes |
162+
| [Get cached responses of Azure OpenAI API requests](azure-openai-semantic-cache-lookup-policy.md) | Performs lookup in Azure OpenAI API cache using semantic search and returns a valid cached response when available. | Yes | Yes | Yes | Yes | No |
163+
| [Get cached responses of large language model API requests](llm-semantic-cache-lookup-policy.md) | Performs lookup in large language model API cache using semantic search and returns a valid cached response when available. | Yes | Yes | Yes | Yes | No |
164+
| [Store responses of Azure OpenAI API requests to cache](azure-openai-semantic-cache-store-policy.md) | Caches response according to the Azure OpenAI API cache configuration. | Yes | Yes | Yes | Yes | No |
165+
| [Store responses of large language model API requests to cache](llm-semantic-cache-store-policy.md) | Caches response according to the large language model API cache configuration. | Yes | Yes | Yes | Yes | No |
166+
| [Enforce content safety checks on LLM requests](llm-content-safety-policy.md) | Enforces content safety checks on LLM requests (prompts) by transmitting them to the [Azure AI Content Safety](/azure/ai-services/content-safety/overview) service before sending to the backend LLM. | Yes | Yes | Yes | Yes | Yes |
167+
168+
154169
## Policy control and flow
155170

156171
|Policy |Description | Classic | V2 | Consumption |Self-hosted | Workspace |

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ This article guides you through the requirements to inject your Azure API Manage
2323
When an API Management Premium v2 instance is injected in a virtual network:
2424

2525
* The API Management gateway endpoint is accessible through the virtual network at a private IP address.
26-
* API Management can make outbound requests to API backends that are isolated in the network.
26+
* API Management can make outbound requests to API backends that are isolated in the network or any peered network, as long as network connectivity is properly configured.
2727

2828
This configuration is recommended for scenarios where you want to isolate network traffic to both the API Management instance and the backend APIs.
2929

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ ms.date: 04/03/2025
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 that are isolated in 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 or any peered virtual network, as long as network connectivity is properly configured.
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

articles/api-management/virtual-network-concepts.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ In the API Management Premium v2 tier, inject your instance into a delegated sub
6464
In this configuration:
6565

6666
* The API Management gateway endpoint is accessible through the virtual network at a private IP address.
67-
* API Management can make outbound requests to API backends that are isolated in the network.
67+
* API Management can make outbound requests to API backends that are isolated in the network or any peered network, as long as network connectivity is properly configured.
6868

6969
This configuration is recommended for scenarios where you want to isolate both the API Management instance and the backend APIs. Virtual network injection in the Premium v2 tier automatically manages network connectivity to most service dependencies for Azure API Management.
7070

@@ -74,7 +74,7 @@ For more information, see [Inject a Premium v2 instance into a virtual network](
7474

7575
## Virtual network integration (v2 tiers)
7676

77-
The Standard v2 and Premium v2 tiers support outbound virtual network integration to allow your API Management instance to reach API backends that are isolated in a single connected virtual network. The API Management gateway, management plane, and developer portal remain publicly accessible from the internet.
77+
The Standard v2 and Premium v2 tiers support outbound virtual network integration to allow your API Management instance to reach API backends that are isolated in a single connected virtual network or any peered virtual network, as long as network connectivity is properly configured. The API Management gateway, management plane, and developer portal remain publicly accessible from the internet.
7878

7979
Outbound integration enables the API Management instance to reach both public and network-isolated backend services.
8080

articles/azure-cache-for-redis/TOC.yml

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,6 @@
1111
items:
1212
- name: Create a cache
1313
items:
14-
- name: Create an Azure Managed Redis instance
15-
href: /redis/quickstart-create-managed-redis
1614
- name: Create an Azure Cache for Redis instance in the Basic, Standard and Premium tiers
1715
href: quickstart-create-redis.md
1816
- name: Create an Azure Cache for Redis instance in the Enterprise tiers
@@ -65,7 +63,7 @@
6563
- name: Azure Cache for Redis
6664
expanded: true
6765
items:
68-
- name: What's new?
66+
- name: What's new in Azure Cache for Redis?
6967
href: cache-whats-new.md
7068

7169
- name: Deploy and configure
@@ -232,7 +230,16 @@
232230
href: cache-troubleshoot-data-loss.md
233231
- name: Troubleshooting FAQs
234232
href: cache-monitor-troubleshoot-faq.yml
235-
233+
234+
- name: Azure Managed Redis
235+
href: /azure/redis/index
236+
expanded: true
237+
items:
238+
- name: About Azure Managed Redis
239+
href: /azure/redis/overview
240+
- name: Azure Managed Redis architecture
241+
href: /azure/redis/architecture
242+
236243
- name: Samples
237244
items:
238245
- name: Use Azure Functions triggers and bindings

articles/azure-netapp-files/application-volume-group-oracle-deploy-volumes.md

Lines changed: 1 addition & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ ms.service: azure-netapp-files
1212
ms.workload: storage
1313
ms.tgt_pltfrm: na
1414
ms.topic: how-to
15-
ms.date: 03/13/2025
15+
ms.date: 04/22/2025
1616
ms.author: anfdocs
1717
---
1818
# Deploy application volume group for Oracle
@@ -23,26 +23,6 @@ This article describes how to deploy all required volumes for your Oracle databa
2323

2424
You should understand the [requirements and considerations for application volume group for Oracle](application-volume-group-oracle-considerations.md).
2525

26-
## Register the feature
27-
28-
Before using Azure NetApp Files application volume group for Oracle for the first time, you need to register it.
29-
30-
1. Register the feature:
31-
32-
```azurepowershell-interactive
33-
Register-AzProviderFeature -ProviderNamespace Microsoft.NetApp -FeatureName ANFOracleVolumeGroup
34-
```
35-
36-
2. Check the status of the feature registration:
37-
38-
```azurepowershell-interactive
39-
Get-AzProviderFeature -ProviderNamespace Microsoft.NetApp -FeatureName ANFOracleVolumeGroup
40-
```
41-
> [!NOTE]
42-
> The **RegistrationState** may be in the `Registering` state for up to 60 minutes before changing to `Registered`. Wait until the status is **Registered** before continuing.
43-
44-
You can also use [Azure CLI commands](/cli/azure/feature) `az feature register` and `az feature show` to register the feature and display the registration status.
45-
4626
## Steps
4727

4828
1. From your NetApp account, select **Application volume groups** then **+Add Group**.

articles/azure-netapp-files/azure-netapp-files-resource-limits.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ services: azure-netapp-files
55
author: b-hchen
66
ms.service: azure-netapp-files
77
ms.topic: conceptual
8-
ms.date: 04/17/2024
8+
ms.date: 04/23/2025
99
ms.author: anfdocs
1010
---
1111
# Resource limits for Azure NetApp Files
@@ -45,7 +45,7 @@ The following table describes resource limits for Azure NetApp Files:
4545
| Maximum assigned throughput for a manual QoS volume | 4,500 MiB/s | No |
4646
| Number of cross-region replication data protection volumes (destination volumes) | 500 | Yes |
4747
| Number of cross-zone replication data protection volumes (destination volumes) | 500 | Yes |
48-
| Maximum numbers of policy-based (scheduled) backups per volume | <ul><li> Daily retention count: 2 (minimum) to 1019 (maximum) </li> <li> Weekly retention count: 1 (minimum) to 1019 (maximum) </li> <li> Monthly retention count: 1 (minimum) to 1019 (maximum) </ol></li> <br> The maximum hourly, daily, weekly, and monthly backup retention counts *combined* is 1019. | No |
48+
| Maximum numbers of policy-based (scheduled) backups per volume | <ul><li> Daily retention count: 2 (minimum) to 1019 (maximum) </li> <li> Weekly retention count: 0 (minimum) to 1019 (maximum) </li> <li> Monthly retention count: 0 (minimum) to 1019 (maximum) </ol></li> <br> The maximum hourly, daily, weekly, and monthly backup retention counts *combined* is 1019. | No |
4949
| Maximum size of protected volume | 100 TiB | No |
5050
| Maximum number of volumes that can be backed up per subscription | 500 | No |
5151
| Maximum number of manual backups per volume per day | 5 | No |

0 commit comments

Comments
 (0)