From 9dafb485dc746b4fd6762698e042b9b20a2060ba Mon Sep 17 00:00:00 2001 From: Scott Addie Date: Fri, 25 Jul 2025 10:33:23 -0500 Subject: [PATCH 1/4] Encourage use of Microsoft.Extensions.Azure for client registration --- .../sdk/includes/implement-defaultazurecredential.md | 6 +----- .../sdk/includes/implement-service-principal.md | 6 +----- .../authentication/local-dev-account/Program.cs | 8 -------- .../local-dev-service-principal/Program.cs | 12 ------------ 4 files changed, 2 insertions(+), 30 deletions(-) diff --git a/docs/azure/sdk/includes/implement-defaultazurecredential.md b/docs/azure/sdk/includes/implement-defaultazurecredential.md index c0c83166e1e2e..b6950ffc829f5 100644 --- a/docs/azure/sdk/includes/implement-defaultazurecredential.md +++ b/docs/azure/sdk/includes/implement-defaultazurecredential.md @@ -1,6 +1,6 @@ --- ms.topic: include -ms.date: 04/25/2025 +ms.date: 07/25/2025 --- ## Authenticate to Azure services from your app @@ -37,7 +37,3 @@ Azure services are accessed using specialized client classes from the various Az 1. Pass an instance of `DefaultAzureCredential` to the `UseCredential` method. :::code language="csharp" source="../snippets/authentication/local-dev-account/Program.cs" id="snippet_DefaultAzureCredential_UseCredential"::: - -An alternative to the `UseCredential` method is to provide the credential to the service client directly: - -:::code language="csharp" source="../snippets/authentication/local-dev-account/Program.cs" id="snippet_DefaultAzureCredential"::: diff --git a/docs/azure/sdk/includes/implement-service-principal.md b/docs/azure/sdk/includes/implement-service-principal.md index 083de7bd3418c..10b68583327dc 100644 --- a/docs/azure/sdk/includes/implement-service-principal.md +++ b/docs/azure/sdk/includes/implement-service-principal.md @@ -1,6 +1,6 @@ --- ms.topic: include -ms.date: 02/12/2025 +ms.date: 07/25/2025 --- [!INCLUDE [implement-service-principal-concepts](implement-service-principal-concepts.md)] @@ -34,7 +34,3 @@ Azure services are accessed using specialized client classes from the various Az 1. Pass the `ClientSecretCredential` instance to the `UseCredential` method. :::code language="csharp" source="../snippets/authentication/local-dev-service-principal/Program.cs" id="snippet_ClientSecretCredential_UseCredential"::: - -An alternative to the `UseCredential` method is to provide the credential to the service client directly: - -:::code language="csharp" source="../snippets/authentication/local-dev-service-principal/Program.cs" id="snippet_ClientSecretCredential"::: diff --git a/docs/azure/sdk/snippets/authentication/local-dev-account/Program.cs b/docs/azure/sdk/snippets/authentication/local-dev-account/Program.cs index b09ccffb4e6aa..bda9c56b99eb7 100644 --- a/docs/azure/sdk/snippets/authentication/local-dev-account/Program.cs +++ b/docs/azure/sdk/snippets/authentication/local-dev-account/Program.cs @@ -1,7 +1,6 @@ using Azure.Identity; using Microsoft.Extensions.Azure; using Azure.Storage.Blobs; -using Azure.Core; var builder = WebApplication.CreateBuilder(args); @@ -54,13 +53,6 @@ void registerUsingServicePrincipal(WebApplicationBuilder builder) clientBuilder.UseCredential(new DefaultAzureCredential()); }); #endregion snippet_DefaultAzureCredential_UseCredential - - #region snippet_DefaultAzureCredential - builder.Services.AddSingleton(_ => - new BlobServiceClient( - new Uri("https://.blob.core.windows.net"), - new DefaultAzureCredential())); - #endregion snippet_DefaultAzureCredential } internal record WeatherForecast(DateOnly Date, int TemperatureC, string? Summary) diff --git a/docs/azure/sdk/snippets/authentication/local-dev-service-principal/Program.cs b/docs/azure/sdk/snippets/authentication/local-dev-service-principal/Program.cs index d8ee41b85db14..8346328694406 100644 --- a/docs/azure/sdk/snippets/authentication/local-dev-service-principal/Program.cs +++ b/docs/azure/sdk/snippets/authentication/local-dev-service-principal/Program.cs @@ -1,7 +1,6 @@ using Azure.Identity; using Microsoft.Extensions.Azure; using Azure.Storage.Blobs; -using Azure.Core; var builder = WebApplication.CreateBuilder(args); @@ -58,17 +57,6 @@ void registerUsingServicePrincipal(WebApplicationBuilder builder) clientBuilder.UseCredential(new ClientSecretCredential(tenantId, clientId, clientSecret)); }); #endregion snippet_ClientSecretCredential_UseCredential - - #region snippet_ClientSecretCredential - var tenantId = Environment.GetEnvironmentVariable("AZURE_TENANT_ID"); - var clientId = Environment.GetEnvironmentVariable("AZURE_CLIENT_ID"); - var clientSecret = Environment.GetEnvironmentVariable("AZURE_CLIENT_SECRET"); - - builder.Services.AddSingleton(_ => - new BlobServiceClient( - new Uri("https://.blob.core.windows.net"), - new ClientSecretCredential(tenantId, clientId, clientSecret))); - #endregion snippet_ClientSecretCredential } internal record WeatherForecast(DateOnly Date, int TemperatureC, string? Summary) From bd62ba6894ed183c680a61c92a95b3791d71d1ad Mon Sep 17 00:00:00 2001 From: Scott Addie Date: Fri, 1 Aug 2025 14:48:42 -0500 Subject: [PATCH 2/4] React to feedback --- .../implement-defaultazurecredential.md | 35 +++++++++--------- docs/azure/sdk/media/nuget-azure-identity.png | Bin 79820 -> 0 bytes .../local-dev-account/Program.cs | 10 ++++- 3 files changed, 27 insertions(+), 18 deletions(-) delete mode 100644 docs/azure/sdk/media/nuget-azure-identity.png diff --git a/docs/azure/sdk/includes/implement-defaultazurecredential.md b/docs/azure/sdk/includes/implement-defaultazurecredential.md index b6950ffc829f5..308e7790cd754 100644 --- a/docs/azure/sdk/includes/implement-defaultazurecredential.md +++ b/docs/azure/sdk/includes/implement-defaultazurecredential.md @@ -1,6 +1,6 @@ --- ms.topic: include -ms.date: 07/25/2025 +ms.date: 08/01/2025 --- ## Authenticate to Azure services from your app @@ -11,29 +11,30 @@ The [Azure Identity library](/dotnet/api/azure.identity?view=azure-dotnet&preser [DefaultAzureCredential](../authentication/credential-chains.md#defaultazurecredential-overview) is an opinionated, ordered sequence of mechanisms for authenticating to Microsoft Entra ID. Each authentication mechanism is a class derived from the [TokenCredential](/dotnet/api/azure.core.tokencredential?view=azure-dotnet&preserve-view=true) class and is known as a *credential*. At runtime, `DefaultAzureCredential` attempts to authenticate using the first credential. If that credential fails to acquire an access token, the next credential in the sequence is attempted, and so on, until an access token is successfully obtained. In this way, your app can use different credentials in different environments without writing environment-specific code. -To use `DefaultAzureCredential`, add the [Azure.Identity](/dotnet/api/azure.identity) and optionally the [Microsoft.Extensions.Azure](/dotnet/api/microsoft.extensions.azure) packages to your application: +To use `DefaultAzureCredential`: -### [Command Line](#tab/command-line) +1. Add the [Microsoft.Extensions.Azure](/dotnet/api/microsoft.extensions.azure) package to your application: -In a terminal of your choice, navigate to the application project directory and run the following commands: + ```dotnetcli + dotnet add package Microsoft.Extensions.Azure + ``` -```dotnetcli -dotnet add package Azure.Identity -dotnet add package Microsoft.Extensions.Azure -``` +1. Azure services are accessed using specialized client classes from the various Azure SDK client libraries. These classes and your own custom services should be registered so they can be accessed via dependency injection throughout your app. In `Program.cs`, complete the following steps to register a client class and `DefaultAzureCredential`: -### [NuGet Package Manager](#tab/nuget-package) + 1. Include the `Microsoft.Extensions.Azure` namespace via a `using` directive. + 1. Register the Azure service client using the corresponding `Add`-prefixed extension method. -Right-click your project in Visual Studio's **Solution Explorer** window and select **Manage NuGet Packages**. Search for **Azure.Identity**, and install the matching package. Repeat this process for the **Microsoft.Extensions.Azure** package. + :::code language="csharp" source="../snippets/authentication/local-dev-account/Program.cs" id="snippet_DefaultAzureCredential"::: -:::image type="content" source="../media/nuget-azure-identity.png" alt-text="Install a package using the package manager."::: +By default, the client builder creates a `DefaultAzureCredential` instance on your behalf. For production usage, register a [deterministic credential](../authentication/best-practices.md#use-deterministic-credentials-in-production-environments) instance with the builder instead of using `DefaultAzureCredential`. To use a different credential for Azure SDK clients: ---- +1. Add the [Azure.Identity](/dotnet/api/azure.identity) package to your application: -Azure services are accessed using specialized client classes from the various Azure SDK client libraries. These classes and your own custom services should be registered so they can be accessed via dependency injection throughout your app. In `Program.cs`, complete the following steps to register a client class and `DefaultAzureCredential`: + ```dotnetcli + dotnet add package Azure.Identity + ``` -1. Include the `Azure.Identity` and `Microsoft.Extensions.Azure` namespaces via `using` directives. -1. Register the Azure service client using the corresponding `Add`-prefixed extension method. -1. Pass an instance of `DefaultAzureCredential` to the `UseCredential` method. +1. Include the `Azure.Identity` namespace via a `using` directive. +1. Register a custom credential instance with the builder. For example: -:::code language="csharp" source="../snippets/authentication/local-dev-account/Program.cs" id="snippet_DefaultAzureCredential_UseCredential"::: + :::code language="csharp" source="../snippets/authentication/local-dev-account/Program.cs" id="snippet_DefaultAzureCredential_UseCredential" highlight="6"::: diff --git a/docs/azure/sdk/media/nuget-azure-identity.png b/docs/azure/sdk/media/nuget-azure-identity.png deleted file mode 100644 index 8e5cfa138a1af13be8b1ab1c89ff3bcfe7c23f44..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 79820 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%0D4%D$u}-zG{4qd_|}|!{_{mK2}6z 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 f=j)ce^NcWK_Jq6(z>l0XM5^HNGoSwfwyv3a diff --git a/docs/azure/sdk/snippets/authentication/local-dev-account/Program.cs b/docs/azure/sdk/snippets/authentication/local-dev-account/Program.cs index bda9c56b99eb7..68b4882a969a0 100644 --- a/docs/azure/sdk/snippets/authentication/local-dev-account/Program.cs +++ b/docs/azure/sdk/snippets/authentication/local-dev-account/Program.cs @@ -44,13 +44,21 @@ void registerUsingServicePrincipal(WebApplicationBuilder builder) { + #region snippet_DefaultAzureCredential + builder.Services.AddAzureClients(clientBuilder => + { + clientBuilder.AddBlobServiceClient( + new Uri("https://.blob.core.windows.net")); + }); + #endregion snippet_DefaultAzureCredential + #region snippet_DefaultAzureCredential_UseCredential builder.Services.AddAzureClients(clientBuilder => { clientBuilder.AddBlobServiceClient( new Uri("https://.blob.core.windows.net")); - clientBuilder.UseCredential(new DefaultAzureCredential()); + clientBuilder.UseCredential(new AzureCliCredential()); }); #endregion snippet_DefaultAzureCredential_UseCredential } From 6991d8c57a223a67dd2e629630c11ca156abe90b Mon Sep 17 00:00:00 2001 From: Scott Addie Date: Fri, 1 Aug 2025 15:09:58 -0500 Subject: [PATCH 3/4] Fix build warnings --- docs/azure/sdk/includes/implement-service-principal.md | 2 -- docs/azure/sdk/includes/implement-system-assigned-identity.md | 2 -- docs/azure/sdk/includes/implement-user-assigned-identity.md | 2 -- 3 files changed, 6 deletions(-) diff --git a/docs/azure/sdk/includes/implement-service-principal.md b/docs/azure/sdk/includes/implement-service-principal.md index 10b68583327dc..ff20efd0b7064 100644 --- a/docs/azure/sdk/includes/implement-service-principal.md +++ b/docs/azure/sdk/includes/implement-service-principal.md @@ -22,8 +22,6 @@ dotnet add package Microsoft.Extensions.Azure Right-click your project in the Visual Studio **Solution Explorer** window and select **Manage NuGet Packages**. Search for **Azure.Identity**, and install the matching package. Repeat this process for the **Microsoft.Extensions.Azure** package. -:::image type="content" source="../media/nuget-azure-identity.png" alt-text="Install a package using the package manager."::: - --- Azure services are accessed using specialized client classes from the various Azure SDK client libraries. These classes and your own custom services should be registered for dependency injection so they can be used throughout your app. In `Program.cs`, complete the following steps to configure a client class for dependency injection and token-based authentication: diff --git a/docs/azure/sdk/includes/implement-system-assigned-identity.md b/docs/azure/sdk/includes/implement-system-assigned-identity.md index adcb6341d5ee1..94a35ec95717b 100644 --- a/docs/azure/sdk/includes/implement-system-assigned-identity.md +++ b/docs/azure/sdk/includes/implement-system-assigned-identity.md @@ -22,8 +22,6 @@ dotnet add package Microsoft.Extensions.Azure Right-click your project in the Visual Studio **Solution Explorer** window and select **Manage NuGet Packages**. Search for **Azure.Identity**, and install the matching package. Repeat this process for the **Microsoft.Extensions.Azure** package. -:::image type="content" source="../media/nuget-azure-identity.png" alt-text="Install a package using the package manager."::: - --- Azure services are accessed using specialized client classes from the various Azure SDK client libraries. These classes and your own custom services should be registered for dependency injection so they can be used throughout your app. In `Program.cs`, complete the following steps to configure a client class for dependency injection and token-based authentication: diff --git a/docs/azure/sdk/includes/implement-user-assigned-identity.md b/docs/azure/sdk/includes/implement-user-assigned-identity.md index b7567a661ad4f..0d7fa1e9c58ab 100644 --- a/docs/azure/sdk/includes/implement-user-assigned-identity.md +++ b/docs/azure/sdk/includes/implement-user-assigned-identity.md @@ -22,8 +22,6 @@ dotnet add package Microsoft.Extensions.Azure Right-click your project in the Visual Studio **Solution Explorer** window and select **Manage NuGet Packages**. Search for **Azure.Identity**, and install the matching package. Repeat this process for the **Microsoft.Extensions.Azure** package. -:::image type="content" source="../media/nuget-azure-identity.png" alt-text="Install a package using the package manager."::: - --- Azure services are accessed using specialized client classes from the various Azure SDK client libraries. These classes and your own custom services should be registered for dependency injection so they can be used throughout your app. In `Program.cs`, complete the following steps to configure a client class for dependency injection and token-based authentication: From 89b670677b0dda57058f096f613df35d73dec233 Mon Sep 17 00:00:00 2001 From: Scott Addie Date: Fri, 1 Aug 2025 15:17:48 -0500 Subject: [PATCH 4/4] Fix code block indentation --- docs/azure/sdk/includes/implement-defaultazurecredential.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/azure/sdk/includes/implement-defaultazurecredential.md b/docs/azure/sdk/includes/implement-defaultazurecredential.md index 308e7790cd754..19139c9540c71 100644 --- a/docs/azure/sdk/includes/implement-defaultazurecredential.md +++ b/docs/azure/sdk/includes/implement-defaultazurecredential.md @@ -24,7 +24,7 @@ To use `DefaultAzureCredential`: 1. Include the `Microsoft.Extensions.Azure` namespace via a `using` directive. 1. Register the Azure service client using the corresponding `Add`-prefixed extension method. - :::code language="csharp" source="../snippets/authentication/local-dev-account/Program.cs" id="snippet_DefaultAzureCredential"::: + :::code language="csharp" source="../snippets/authentication/local-dev-account/Program.cs" id="snippet_DefaultAzureCredential"::: By default, the client builder creates a `DefaultAzureCredential` instance on your behalf. For production usage, register a [deterministic credential](../authentication/best-practices.md#use-deterministic-credentials-in-production-environments) instance with the builder instead of using `DefaultAzureCredential`. To use a different credential for Azure SDK clients: