Microsoft.Data.SqlClient.Extensions.Azure 7.1.1
Microsoft.Data.SqlClient.Extensions.Azure
Description
This package provides Azure integration extensions for Microsoft.Data.SqlClient. It enables seamless authentication and connectivity with Azure SQL Database using Azure Identity and other Azure services.
Key Features
- Entra ID Authentication: Simplified Entra ID token-based authentication
- Managed Identity Support: Connect to Azure SQL using Azure Managed Identities
- Token Caching: Automatic caching of authentication tokens for improved performance
- Azure.Identity Integration: Leverage the full power of Azure.Identity credential providers
Supportability
This package supports:
- .NET Standard 2.0 (compatible with .NET Framework 4.6.1+, .NET Core 2.0+, and .NET 5+)
Installation
Install the package via NuGet:
dotnet add package Microsoft.Data.SqlClient.Extensions.Azure
Or via the Package Manager Console:
Install-Package Microsoft.Data.SqlClient.Extensions.Azure
Getting Started
Connect Using Default Azure Credential
using Microsoft.Data.SqlClient;
using Azure.Identity;
// Use DefaultAzureCredential for automatic authentication
// Works with Managed Identity, Azure CLI, Visual Studio, and more
var credential = new DefaultAzureCredential();
var connectionString = "Server=myserver.database.windows.net;Database=mydb;";
using var connection = new SqlConnection(connectionString);
connection.AccessTokenCallback = async (ctx, cancellationToken) =>
{
var token = await credential.GetTokenAsync(
new Azure.Core.TokenRequestContext(new[] { "https://database.windows.net/.default" }),
cancellationToken);
return new SqlAuthenticationToken(token.Token, token.ExpiresOn);
};
await connection.OpenAsync();
Connect Using Managed Identity
For applications running in Azure (App Service, Functions, VMs, AKS, etc.):
using Microsoft.Data.SqlClient;
using Azure.Identity;
// Use system-assigned managed identity
var credential = new ManagedIdentityCredential();
// Or use user-assigned managed identity
// var credential = new ManagedIdentityCredential("client-id-of-user-assigned-identity");
var connectionString = "Server=myserver.database.windows.net;Database=mydb;";
using var connection = new SqlConnection(connectionString);
connection.AccessTokenCallback = async (ctx, cancellationToken) =>
{
var token = await credential.GetTokenAsync(
new Azure.Core.TokenRequestContext(new[] { "https://database.windows.net/.default" }),
cancellationToken);
return new SqlAuthenticationToken(token.Token, token.ExpiresOn);
};
await connection.OpenAsync();
Connect Using Service Principal
For service-to-service authentication:
using Microsoft.Data.SqlClient;
using Azure.Identity;
var credential = new ClientSecretCredential(
tenantId: "your-tenant-id",
clientId: "your-client-id",
clientSecret: "your-client-secret");
var connectionString = "Server=myserver.database.windows.net;Database=mydb;";
using var connection = new SqlConnection(connectionString);
connection.AccessTokenCallback = async (ctx, cancellationToken) =>
{
var token = await credential.GetTokenAsync(
new Azure.Core.TokenRequestContext(new[] { "https://database.windows.net/.default" }),
cancellationToken);
return new SqlAuthenticationToken(token.Token, token.ExpiresOn);
};
await connection.OpenAsync();
Authentication Methods
| Authentication Type | Credential Class | Use Case |
|---|---|---|
| Default | DefaultAzureCredential |
Development and production with automatic credential chain |
| Managed Identity | ManagedIdentityCredential |
Azure-hosted applications |
| Service Principal | ClientSecretCredential |
Service-to-service authentication |
| Certificate | ClientCertificateCredential |
Certificate-based service auth |
| Interactive | InteractiveBrowserCredential |
Interactive user authentication |
| Azure CLI | AzureCliCredential |
Local development |
| Visual Studio | VisualStudioCredential |
Development in Visual Studio |
Documentation
- Entra ID Authentication
- Azure.Identity Documentation
- Microsoft.Data.SqlClient Documentation
- Managed Identities Overview
License
This package is licensed under the MIT License.
Related Packages
- Microsoft.Data.SqlClient - The main SqlClient driver
- Microsoft.Data.SqlClient.Extensions.Abstractions - Core abstractions
- Microsoft.Data.SqlClient.Internal.Logging - Logging internals
- Azure.Identity - Entra ID authentication library
Showing the top 20 packages that depend on Microsoft.Data.SqlClient.Extensions.Azure.
| Packages | Downloads |
|---|---|
|
Kros.Utils
General utilities and helpers.
|
1 |
.NET Framework 4.6.2
- Azure.Core (>= 1.51.1)
- Azure.Identity (>= 1.18.0)
- Microsoft.Data.SqlClient.Extensions.Abstractions (>= 7.1.1 && < 8.0.0)
- Microsoft.Data.SqlClient.Internal.Logging (>= 7.1.1 && < 8.0.0)
- Microsoft.Extensions.Caching.Memory (>= 8.0.1)
- Microsoft.Identity.Client (>= 4.84.2)
- Microsoft.Identity.Client.Broker (>= 4.84.2)
.NET Standard 2.0
- Azure.Core (>= 1.51.1)
- Azure.Identity (>= 1.18.0)
- Microsoft.Data.SqlClient.Extensions.Abstractions (>= 7.1.1 && < 8.0.0)
- Microsoft.Data.SqlClient.Internal.Logging (>= 7.1.1 && < 8.0.0)
- Microsoft.Extensions.Caching.Memory (>= 8.0.1)
- Microsoft.Identity.Client (>= 4.84.2)
- Microsoft.Identity.Client.Broker (>= 4.84.2)
| Version | Downloads | Last updated |
|---|---|---|
| 7.1.1 | 1 | 10/09/2026 |
| 7.1.0 | 0 | 09/18/2026 |
| 7.1.0-preview3.26238.4 | 0 | 08/27/2026 |
| 7.1.0-preview2.26190.5 | 0 | 07/10/2026 |
| 7.0.3 | 0 | 09/10/2026 |
| 7.0.2 | 0 | 06/25/2026 |
| 1.0.0 | 0 | 03/17/2026 |
| 1.0.0-preview1.26064.3 | 0 | 03/05/2026 |