Microsoft.Data.SqlClient.Extensions.Azure 7.1.0-preview3.26238.4
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 |
|---|---|
|
Aspire.Microsoft.EntityFrameworkCore.SqlServer
A Microsoft SQL Server provider for Entity Framework Core that integrates with Aspire, including connection pooling, health check, logging, and telemetry.
|
1 |
|
Aspire.Microsoft.Data.SqlClient
A Microsoft SQL Server client that integrates with Aspire, including health checks, metrics and telemetry.
|
1 |
.NET Framework 4.6.2
- Azure.Core (>= 1.51.1)
- Microsoft.Identity.Client (>= 4.84.2)
- Microsoft.Extensions.Caching.Memory (>= 8.0.1)
- Microsoft.Data.SqlClient.Internal.Logging (>= 7.1.0-preview3.26238.4 && < 8.0.0)
- Microsoft.Data.SqlClient.Extensions.Abstractions (>= 7.1.0-preview3.26238.4 && < 8.0.0)
- Azure.Identity (>= 1.18.0)
- Microsoft.Identity.Client.Broker (>= 4.84.2)
.NET Standard 2.0
- Microsoft.Identity.Client.Broker (>= 4.84.2)
- Microsoft.Identity.Client (>= 4.84.2)
- Microsoft.Extensions.Caching.Memory (>= 8.0.1)
- Microsoft.Data.SqlClient.Internal.Logging (>= 7.1.0-preview3.26238.4 && < 8.0.0)
- Microsoft.Data.SqlClient.Extensions.Abstractions (>= 7.1.0-preview3.26238.4 && < 8.0.0)
- Azure.Core (>= 1.51.1)
- Azure.Identity (>= 1.18.0)
| Version | Downloads | Last updated |
|---|---|---|
| 7.1.0-preview3.26238.4 | 1 | 8/29/2026 |
| 7.1.0-preview2.26190.5 | 0 | 7/10/2026 |
| 7.0.2 | 0 | 6/25/2026 |
| 1.0.0 | 0 | 3/17/2026 |
| 1.0.0-preview1.26064.3 | 0 | 3/5/2026 |