Skip to content

Commit 1b67687

Browse files
committed
Add credential builder context
1 parent fdb4e2d commit 1b67687

File tree

2 files changed

+16
-8
lines changed

2 files changed

+16
-8
lines changed

docs/azure/sdk/authentication/credential-chains.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ The order in which `DefaultAzureCredential` attempts credentials follows.
6363

6464
In its simplest form, you can use the parameterless version of `DefaultAzureCredential` as follows:
6565

66-
:::code language="csharp" source="../snippets/authentication/credential-chains/Program.cs" id="snippet_Dac" highlight="1":::
66+
:::code language="csharp" source="../snippets/authentication/credential-chains/Program.cs" id="snippet_Dac" highlight="6":::
6767

6868
> [!TIP]
6969
> The `UseCredential` method in the preceding code snippet is recommended for use in ASP.NET Core apps. For more information, see [Use the Azure SDK for .NET in ASP.NET Core apps](../aspnetcore-guidance.md#authenticate-using-microsoft-entra-id).
@@ -72,7 +72,7 @@ In its simplest form, you can use the parameterless version of `DefaultAzureCred
7272

7373
To remove a credential from `DefaultAzureCredential`, use the corresponding `Exclude`-prefixed property in [DefaultAzureCredentialOptions](/dotnet/api/azure.identity.defaultazurecredentialoptions?view=azure-dotnet&preserve-view=true#properties). For example:
7474

75-
:::code language="csharp" source="../snippets/authentication/credential-chains/Program.cs" id="snippet_DacExcludes" highlight="4-5":::
75+
:::code language="csharp" source="../snippets/authentication/credential-chains/Program.cs" id="snippet_DacExcludes" highlight="6-7":::
7676

7777
In the preceding code sample, `EnvironmentCredential` and `WorkloadIdentityCredential` are removed from the credential chain. As a result, the first credential to be attempted is `ManagedIdentityCredential`. The modified chain looks like this:
7878

docs/azure/sdk/snippets/authentication/credential-chains/Program.cs

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,31 +17,39 @@
1717
}, EventLevel.LogAlways);
1818
#endregion snippet_FilteredLogging
1919

20+
#region snippet_Dac
2021
builder.Services.AddAzureClients(clientBuilder =>
2122
{
2223
clientBuilder.AddBlobServiceClient(
2324
new Uri("https://<account-name>.blob.core.windows.net"));
24-
#region snippet_Dac
25+
2526
DefaultAzureCredential credential = new();
2627
clientBuilder.UseCredential(credential);
27-
#endregion snippet_Dac
28+
});
29+
#endregion snippet_Dac
2830

29-
#region snippet_DacExcludes
31+
#region snippet_DacExcludes
32+
builder.Services.AddAzureClients(clientBuilder =>
33+
{
3034
clientBuilder.UseCredential(new DefaultAzureCredential(
3135
new DefaultAzureCredentialOptions
3236
{
3337
ExcludeEnvironmentCredential = true,
3438
ExcludeWorkloadIdentityCredential = true,
3539
ManagedIdentityClientId = userAssignedClientId,
3640
}));
37-
#endregion snippet_DacExcludes
41+
});
42+
#endregion snippet_DacExcludes
3843

39-
#region snippet_Ctc
44+
#region snippet_Ctc
45+
builder.Services.AddAzureClients(clientBuilder =>
46+
{
4047
clientBuilder.UseCredential(new ChainedTokenCredential(
4148
new ManagedIdentityCredential(clientId: userAssignedClientId),
4249
new VisualStudioCredential()));
43-
#endregion snippet_Ctc
4450
});
51+
#endregion snippet_Ctc
52+
4553

4654
builder.Services.AddEndpointsApiExplorer();
4755
builder.Services.AddSwaggerGen();

0 commit comments

Comments
 (0)