Skip to content

Commit 6003115

Browse files
Merge pull request #313244 from MicrosoftDocs/main
Auto Publish – main to live - 2026-03-17 06:00 UTC
2 parents 12cdef7 + c743f17 commit 6003115

30 files changed

Lines changed: 838 additions & 669 deletions

articles/azure-app-configuration/concept-enable-rbac.md

Lines changed: 96 additions & 92 deletions
Original file line numberDiff line numberDiff line change
@@ -60,9 +60,27 @@ Follow these steps to assign App Configuration Data roles to your credential.
6060
3. On the **Members** tab, follow the wizard to select the credential you're granting access to and then select **Next**.
6161
4. Finally, on the **Review + assign** tab, select **Review + assign** to assign the role.
6262

63-
## Cloud-specific audience for Entra ID authentication
63+
## Audience for Entra ID authentication
6464

65-
When using Entra ID and the following Azure App Configuration libraries in clouds other than Azure cloud, Azure Government, and Microsoft Azure operated by 21Vianet, an appropriate Entra ID audience must be configured to enable authentication.
65+
The audience for Microsoft Entra ID authentication defines who is permitted to access a specific resource. It identifies the intended recipient of the security token. App Configuration supports different audiences for different clouds.
66+
67+
### App Configuration audience
68+
69+
For Azure App Configuration in the global Azure cloud, use the following audience:
70+
71+
`https://appconfig.azure.com`
72+
73+
For Azure App Configuration in the national clouds, use the applicable audience specified in the table below:
74+
75+
| **National cloud** | **Audience** |
76+
| ------------------------------------ | ----------------------------------- |
77+
| Azure Government | `https://appconfig.azure.us` |
78+
| Microsoft Azure operated by 21Vianet | `https://appconfig.azure.cn` |
79+
| Bleu | `https://appconfig.sovcloud-api.fr` |
80+
81+
### Configure cloud-specific audience
82+
83+
When using Entra ID to authenticate with Azure App Configuration in clouds other than Azure cloud, Azure Government, and Microsoft Azure operated by 21Vianet, an appropriate Entra ID audience must be configured.
6684

6785
> [!TIP]
6886
> If you encounter the following error when connecting to Azure App Configuration, it’s typically because you’re using App Configuration in a specific cloud without explicitly configuring the Microsoft Entra ID audience.
@@ -74,32 +92,12 @@ When using Entra ID and the following Azure App Configuration libraries in cloud
7492
> To resolve this issue, configure the appropriate Entra ID audience as shown in the code snippets below.
7593
7694
### [.NET](#tab/dotnet)
95+
#### .NET configuration provider
7796
78-
The Audience for the target cloud must be configured for the following packages.
79-
80-
- Azure SDK for .NET: Azure.Data.AppConfiguration >= 1.6.0
81-
- .NET configuration provider: Microsoft.Extensions.Configuration.AzureAppConfiguration >= 8.2.0
82-
83-
In the **Azure SDK for .NET**, audience is configured by utilizing the following API calls:
84-
85-
* The ConfigurationClient constructor [accepts ConfigurationClientOptions](/dotnet/api/azure.data.appconfiguration.configurationclient.-ctor#azure-data-appconfiguration-configurationclient-ctor(system-uri-azure-core-tokencredential-azure-data-appconfiguration-configurationclientoptions))
86-
* ConfigurationClientOptions allows [Audience](/dotnet/api/azure.data.appconfiguration.configurationclientoptions.audience#azure-data-appconfiguration-configurationclientoptions-audience) to be set
87-
88-
The following code snippet demonstrates how to instantiate a configuration client with a cloud-specific audience.
89-
90-
```csharp
91-
var configurationClient = new ConfigurationClient(
92-
myStoreEndpoint,
93-
new DefaultAzureCredential(),
94-
new ConfigurationClientOptions
95-
{
96-
Audience = "{Cloud specific audience here}"
97-
});
98-
```
99-
100-
In the **.NET configuration provider**, audience is configured by utilizing the following API calls:
101-
102-
* AzureAppConfigurationOptions exposes a [ConfigureClientOptions](/dotnet/api/microsoft.extensions.configuration.azureappconfiguration.azureappconfigurationoptions.configureclientoptions#microsoft-extensions-configuration-azureappconfiguration-azureappconfigurationoptions-configureclientoptions(system-action((azure-data-appconfiguration-configurationclientoptions)))) method
97+
If your application uses any of the following packages, audience can be configured by utilizing the [ConfigureClientOptions](/dotnet/api/microsoft.extensions.configuration.azureappconfiguration.azureappconfigurationoptions.configureclientoptions#microsoft-extensions-configuration-azureappconfiguration-azureappconfigurationoptions-configureclientoptions(system-action((azure-data-appconfiguration-configurationclientoptions)))) method. Use version **8.2.0** or later of any of the following packages to configure the audience.
98+
- `Microsoft.Extensions.Configuration.AzureAppConfiguration`
99+
- `Microsoft.Azure.AppConfiguration.AspNetCore`
100+
- `Microsoft.Azure.AppConfiguration.Functions.Worker`
103101
104102
The following code snippet demonstrates how to add the Azure App Configuration provider into a .NET application with a cloud-specific audience.
105103
@@ -110,30 +108,34 @@ builder.AddAzureAppConfiguration(o =>
110108
myStoreEndpoint,
111109
new DefaultAzureCredential());
112110
113-
o.ConfigureClientOptions(clientOptions => clientOptions.Audience = "{Cloud specific audience here}");
111+
o.ConfigureClientOptions(clientOptions =>
112+
clientOptions.Audience = "{Cloud specific audience here}");
114113
});
115114
```
116115
117-
### [Java](#tab/java)
118-
119-
The Audience for the target cloud must be configured for the following packages.
116+
#### Azure SDK for .NET
120117

121-
- Azure SDK for Java: azure-data-appconfiguration >= 1.8.0
122-
- Java configuration provider: spring-cloud-azure-appconfiguration-config >= 5.22.0
123-
124-
In the **Azure SDK for Java**, audience is configured by passing the `audience` option to the `ConfigurationClientBuilder` when building a `ConfigurationClient`.
118+
If your application uses the following package, audience can be configured in `ConfigurationClientOptions` when constructing the `ConfigurationClient` object. Use version **1.6.0** or later of the following package.
119+
- `Azure.Data.AppConfiguration`
125120

126121
The following code snippet demonstrates how to instantiate a configuration client with a cloud-specific audience.
127122

128-
```java
129-
ConfigurationClient configurationClient = new ConfigurationClientBuilder()
130-
.endpoint(myStoreEndpoint)
131-
.credential(new DefaultAzureCredentialBuilder().build())
132-
.audience(ConfigurationAudience.fromString("{Cloud specific audience here}"))
133-
.buildClient();
123+
```csharp
124+
var configurationClient = new ConfigurationClient(
125+
myStoreEndpoint,
126+
new DefaultAzureCredential(),
127+
new ConfigurationClientOptions
128+
{
129+
Audience = "{Cloud specific audience here}"
130+
});
134131
```
135132

136-
In the **Spring configuration provider**, audience is configured by customizing the `ConfigurationClientBuilder` through the `ConfigurationClientCustomizer` interface, then adding it to the bootstrap registry.
133+
### [Java](#tab/java)
134+
#### Spring configuration provider
135+
136+
If your application uses any of the following packages, audience can be configured by customizing the `ConfigurationClientBuilder` through the `ConfigurationClientCustomizer` interface, then adding it to the bootstrap registry. Use version **5.22.0** or later of the following packages to configure the audience.
137+
- `spring-cloud-azure-appconfiguration-config`
138+
- `spring-cloud-azure-appconfiguration-config-web`
137139

138140
The following code snippet demonstrates how to add the Azure App Configuration provider into a Spring Boot application with a cloud-specific audience.
139141

@@ -178,24 +180,26 @@ public class Application {
178180
}
179181
```
180182

181-
### [JavaScript](#tab/javascript)
182-
183-
The Audience for the target cloud must be configured for the following packages.
184-
185-
- Azure SDK for JavaScript: @azure/app-configuration >= 1.9.0
186-
- JavaScript configuration provider: @azure/app-configuration-provider >= 1.0.0
183+
#### Azure SDK for Java
187184

188-
In the **Azure SDK for JavaScript**, audience is configured by passing the `audience` option to the `AppConfigurationClient` constructor.
185+
If your application uses the following package, audience can be configured by passing the `audience` option to the `ConfigurationClientBuilder` when building a `ConfigurationClient`. Use version **1.8.0** or later of the following package.
186+
- `azure-data-appconfiguration`
189187

190188
The following code snippet demonstrates how to instantiate a configuration client with a cloud-specific audience.
191189

192-
```javascript
193-
const client = new AppConfigurationClient(myStoreEndpoint, new DefaultAzureCredential(), {
194-
audience: "{Cloud specific audience here}",
195-
});
190+
```java
191+
ConfigurationClient configurationClient = new ConfigurationClientBuilder()
192+
.endpoint(myStoreEndpoint)
193+
.credential(new DefaultAzureCredentialBuilder().build())
194+
.audience(ConfigurationAudience.fromString("{Cloud specific audience here}"))
195+
.buildClient();
196196
```
197197

198-
In the **JavaScript configuration provider**, audience is configured by passing the `clientOptions` with the `audience` property to the `load` function.
198+
### [JavaScript](#tab/javascript)
199+
#### JavaScript configuration provider
200+
201+
If your application uses the following package, audience can be configured by passing the `clientOptions` with the `audience` property to the `load` function. Use version **1.0.0** or later of the following package.
202+
- `@azure/app-configuration-provider`
199203

200204
The following code snippet demonstrates how to load Azure App Configuration in a JavaScript application with a cloud-specific audience.
201205

@@ -207,14 +211,22 @@ const appConfig = await load(myStoreEndpoint, credential, {
207211
});
208212
```
209213

210-
### [Go](#tab/go)
214+
#### Azure SDK for JavaScript
211215

212-
The Audience for the target cloud must be configured for the following packages.
216+
If your application uses the following package, audience can be configured by passing the `audience` option to the `AppConfigurationClient` constructor. Use version **1.9.0** or later of the following package.
217+
- `@azure/app-configuration`
218+
219+
The following code snippet demonstrates how to instantiate a configuration client with a cloud-specific audience.
220+
221+
```javascript
222+
const client = new AppConfigurationClient(myStoreEndpoint, new DefaultAzureCredential(), {
223+
audience: "{Cloud specific audience here}",
224+
});
225+
```
213226

214-
- Azure SDK for Go: azappconfig >= 2.1.0
215-
- Go configuration provider: azureappconfiguration >= 1.0.0
227+
### [Go](#tab/go)
216228

217-
You need to import the following packages:
229+
To configure the Entra ID audience, import the following packages in your Go application first:
218230

219231
```golang
220232
import (
@@ -223,13 +235,21 @@ import (
223235
)
224236
```
225237

226-
In the **Azure SDK for Go**, audience is configured by utilizing the cloud configuration.
238+
#### Go configuration provider
227239

228-
The following code snippet demonstrates how to instantiate a configuration client with a cloud-specific audience.
240+
If your application uses the following package, audience can be configured by passing the `ClientOptions` with the cloud configuration to the `Load` function. Use version **1.0.0** or later of the following package.
241+
- `azureappconfiguration`
242+
243+
The following code snippet demonstrates how to load Azure App Configuration in a Go application with a cloud-specific audience.
229244

230245
```golang
231246
credential, _:= azidentity.NewDefaultAzureCredential(nil)
232247

248+
authOptions := azureappconfiguration.AuthenticationOptions{
249+
Endpoint: myStoreEndpoint,
250+
Credential: credential,
251+
}
252+
233253
cloudConfig := cloud.Configuration{
234254
Services: map[cloud.ServiceName]cloud.ServiceConfiguration{
235255
azappconfig.ServiceName: {
@@ -238,27 +258,27 @@ cloudConfig := cloud.Configuration{
238258
},
239259
}
240260

241-
clientOptions := &azappconfig.ClientOptions{
242-
ClientOptions: policy.ClientOptions{
243-
Cloud: cloudConfig,
261+
options := &azureappconfiguration.Options{
262+
ClientOptions: &azappconfig.ClientOptions{
263+
ClientOptions: policy.ClientOptions{
264+
Cloud: cloudConfig,
265+
},
244266
},
245267
}
246268

247-
client, _ := azappconfig.NewClient(myStoreEndpoint, credential, clientOptions)
269+
appConfig, _ := azureappconfiguration.Load(context.Background(), authOptions, options)
248270
```
249271

250-
In the **Go configuration provider**, audience is configured by passing the `ClientOptions` with the cloud configuration to the `Load` function.
272+
#### Azure SDK for Go
251273

252-
The following code snippet demonstrates how to load Azure App Configuration in a Go application with a cloud-specific audience.
274+
If your application uses the following package, audience can be configured by utilizing the cloud configuration. Use version **2.1.0** or later of the following package.
275+
- `azappconfig`
276+
277+
The following code snippet demonstrates how to instantiate a configuration client with a cloud-specific audience.
253278

254279
```golang
255280
credential, _:= azidentity.NewDefaultAzureCredential(nil)
256281

257-
authOptions := azureappconfiguration.AuthenticationOptions{
258-
Endpoint: myStoreEndpoint,
259-
Credential: credential,
260-
}
261-
262282
cloudConfig := cloud.Configuration{
263283
Services: map[cloud.ServiceName]cloud.ServiceConfiguration{
264284
azappconfig.ServiceName: {
@@ -267,32 +287,16 @@ cloudConfig := cloud.Configuration{
267287
},
268288
}
269289

270-
options := &azureappconfiguration.Options{
271-
ClientOptions: &azappconfig.ClientOptions{
272-
ClientOptions: policy.ClientOptions{
273-
Cloud: cloudConfig,
274-
},
290+
clientOptions := &azappconfig.ClientOptions{
291+
ClientOptions: policy.ClientOptions{
292+
Cloud: cloudConfig,
275293
},
276294
}
277295

278-
appConfig, _ := azureappconfiguration.Load(context.Background(), authOptions, options)
296+
client, _ := azappconfig.NewClient(myStoreEndpoint, credential, clientOptions)
279297
```
280298

281299
---
282300

283-
### Audience
284-
285-
For Azure App Configuration in the global Azure cloud, use the following audience:
286-
287-
`https://appconfig.azure.com`
288-
289-
For Azure App Configuration in the national clouds, use the applicable audience specified in the table below:
290-
291-
| **National cloud** | **Audience** |
292-
| ------------------------------------ | ----------------------------------- |
293-
| Azure Government | `https://appconfig.azure.us` |
294-
| Microsoft Azure operated by 21Vianet | `https://appconfig.azure.cn` |
295-
| Bleu | `https://appconfig.sovcloud-api.fr` |
296-
297301
## Next steps
298302
Learn how to [use managed identities to access your App Configuration store](howto-integrate-azure-managed-service-identity.md).

articles/azure-app-configuration/monitor-app-configuration.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -237,6 +237,17 @@ The following table lists common and recommended alert rules for App C
237237
### Metrics schema
238238
For details on the metrics schema, see [App Configuration Metrics](/azure/azure-monitor/reference/supported-metrics/microsoft-appconfiguration-configurationstores-metrics)
239239
240+
#### Metrics Dimensions
241+
| Metric Name | Dimension description |
242+
|-------|-----|
243+
| HTTP Incoming Request Count | The supported dimensions are the **HttpStatusCode**, **AuthenticationScheme**, and **Endpoint** of each request. **AuthenticationScheme** can be filtered by "AAD" or "HMAC" authentication. |
244+
| HTTP Incoming Request Duration | The supported dimensions are the **HttpStatusCode**, **AuthenticationScheme**, and **Endpoint** of each request. **AuthenticationScheme** can be filtered by "AAD" or "HMAC" authentication. |
245+
| Throttled HTTP Request Count | The **Endpoint** of each request is included as a dimension. |
246+
| Daily Storage Usage | This metric does not have any dimensions. |
247+
| Request Quota Usage | The supported dimensions are the **OperationType** ("Read" or "Write") and **Endpoint** of each request. |
248+
| Replication Latency | The **Endpoint** of the replica that data was replicated to is included as a dimension. |
249+
| Snapshot Storage Size | This metric does not have any dimensions. |
250+
240251
### Logs schema
241252
242253
#### Activity logs schema

articles/azure-app-configuration/rest-api-authentication-azure-ad.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ Before acquiring a Microsoft Entra token, you must identify what user you want t
3939

4040
Request the Microsoft Entra token with a proper audience. The audience can also be referred to as the *resource* that the token is being requested for.
4141

42-
For details on which audience to use for which cloud, refer to the [audience section of the Entra ID access overview](./concept-enable-rbac.md#audience).
42+
For details on which audience to use for which cloud, refer to the [audience section of the Entra ID access overview](./concept-enable-rbac.md#app-configuration-audience).
4343

4444
<a name='azure-ad-authority'></a>
4545

0 commit comments

Comments
 (0)