Skip to content

Commit 8c661c9

Browse files
Readme and doc updates (incl. Entra ID branding) (dotnet#4047)
* Readme and doc updates (incl. Entra ID branding) * Include client id Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> * Update CHANGELOG.md --------- Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
1 parent 5124b27 commit 8c661c9

26 files changed

Lines changed: 94 additions & 64 deletions

.github/copilot-instructions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ This project includes several key products and libraries that facilitate SQL Ser
3131
- **Microsoft.SqlServer.Server**: Supplies APIs for SQL Server-specific features, including user-defined types (UDTs) and SQL Server-specific attributes.
3232

3333
## 🛠️ Key Features
34-
- **Connectivity to SQL Server**: Provides robust and secure connections to SQL Server databases, using various authentication methods, such as Windows Authentication, SQL Server Authentication, and Azure Active Directory authentication, e.g. `ActiveDirectoryIntegrated`, `ActiveDirectoryPassword`, `ActiveDirectoryServicePrincipal`,`ActiveDirectoryInteractive`, `ActiveDirectoryDefault`, and `ActiveDirectoryManagedIdentity`.
34+
- **Connectivity to SQL Server**: Provides robust and secure connections to SQL Server databases, using various authentication methods, such as Windows Authentication, SQL Server Authentication, and Entra ID authentication, e.g. `ActiveDirectoryIntegrated`, `ActiveDirectoryPassword`, `ActiveDirectoryServicePrincipal`,`ActiveDirectoryInteractive`, `ActiveDirectoryDefault`, and `ActiveDirectoryManagedIdentity`.
3535
- **Connection Resiliency**: Implements connection resiliency features to handle transient faults and network issues, ensuring reliable database connectivity.
3636
- **TLS Encryption**: Supports secure connections using TLS protocols to encrypt data in transit. Supports TLS 1.2 and higher, ensuring secure communication with SQL Server. Supported encryption modes are:
3737
- **Optional**: Encryption is used if available, but not required.

.github/instructions/architecture.instructions.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ Entry point for database connectivity. Manages:
133133
- Connection string parsing (via `SqlConnectionStringBuilder`)
134134
- Connection pooling integration
135135
- Transaction enlistment (local and distributed)
136-
- Authentication (SQL, Windows, Azure AD)
136+
- Authentication (SQL, Windows, Entra ID)
137137

138138
### SqlCommand
139139
Executes SQL statements and stored procedures:
@@ -159,7 +159,7 @@ Located in `ConnectionPool/`:
159159
Located in `SSPI/` and authentication-related files:
160160
- Windows Authentication (SSPI/Kerberos)
161161
- SQL Server Authentication
162-
- Azure Active Directory authentication modes
162+
- Entra ID authentication modes
163163

164164
### Always Encrypted
165165
Column-level encryption implementation:

.github/instructions/documentation.instructions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ Working with SQL data types:
9191

9292
### Security Samples
9393
Authentication and encryption:
94-
- Azure AD authentication
94+
- Entra ID authentication
9595
- Always Encrypted
9696
- Azure Key Vault integration
9797
- SSL/TLS configuration

.github/instructions/external-resources.instructions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ When working with Microsoft.Data.SqlClient, reference official documentation for
1717
| **Connection Pooling** | https://learn.microsoft.com/sql/connect/ado-net/sql-server-connection-pooling |
1818
| **Data Types** | https://learn.microsoft.com/sql/connect/ado-net/sql/sql-server-data-types |
1919
| **Always Encrypted** | https://learn.microsoft.com/sql/relational-databases/security/encryption/always-encrypted-database-engine |
20-
| **Azure AD Auth** | https://learn.microsoft.com/sql/connect/ado-net/sql/azure-active-directory-authentication |
20+
| **Entra ID Auth** | https://learn.microsoft.com/sql/connect/ado-net/sql/azure-active-directory-authentication |
2121

2222
### MS-TDS Protocol
2323

.github/instructions/features.instructions.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,13 @@ This is a comprehensive reference of supported connection string keywords.
2424
| `Integrated Security` | True/False, SSPI | Windows Authentication |
2525
| `User ID` | | SQL Server username |
2626
| `Password` | PWD | SQL Server password |
27-
| `Authentication` | See below | Azure AD authentication mode |
27+
| `Authentication` | See below | Entra ID authentication mode |
2828
| `Attestation Protocol` | None, HGS, AAS | Enclave attestation |
2929

3030
#### Authentication Modes
3131
- `SqlPassword` - SQL Server authentication
32-
- `ActiveDirectoryPassword` - Azure AD with password
33-
- `ActiveDirectoryIntegrated` - Azure AD integrated
32+
- `ActiveDirectoryPassword` - Entra ID with password
33+
- `ActiveDirectoryIntegrated` - Entra ID integrated
3434
- `ActiveDirectoryInteractive` - Interactive browser auth
3535
- `ActiveDirectoryServicePrincipal` - Service principal
3636
- `ActiveDirectoryManagedIdentity` - Managed identity

.github/instructions/testing.instructions.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ src/Microsoft.Data.SqlClient/tests/
3434
- Full integration tests with SQL Server
3535
- Require `config.json` setup
3636
- Test real database operations
37-
- Include Always Encrypted, Azure AD tests
37+
- Include Always Encrypted, Entra ID tests
3838

3939
## Test Configuration
4040

@@ -58,7 +58,7 @@ Copy `config.default.json` to `config.json` and configure:
5858
|----------|-------------|
5959
| `TCPConnectionString` | Primary TCP connection |
6060
| `NPConnectionString` | Named Pipes connection |
61-
| `AADPasswordConnectionString` | Azure AD password auth |
61+
| `AADPasswordConnectionString` | Entra ID password auth |
6262
| `AzureKeyVaultURL` | AKV for encryption tests |
6363
| `EnclaveEnabled` | Enable enclave tests |
6464
| `FileStreamDirectory` | FileStream test path |
@@ -310,7 +310,7 @@ Common test helper class:
310310
```csharp
311311
DataTestUtility.TCPConnectionString // Get TCP connection
312312
DataTestUtility.AreConnStringsSetup // Check if config exists
313-
DataTestUtility.IsAADPasswordConnStrSetup // Check AAD config
313+
DataTestUtility.IsAADPasswordConnStrSetup // Check Entra ID config
314314
```
315315

316316
### AssertExtensions

BUILDGUIDE.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,12 @@ Manual Tests require the below setup to run:
4040
|TCPConnectionStringAASSGX | (Optional) Connection String for a TCP enabled SQL Server with a SGX Enclave and using Microsoft Azure Attestation (AAS) attestation protocol configuration. | `Server=tcp:{servername}; Database={Database_Name}; UID={UID}; PWD={PWD}; Attestation Protocol = AAS; Enclave Attestation Url = {AttestationURL};`|
4141
|EnclaveEnabled | Enables tests requiring an enclave-configured server.|
4242
|TracingEnabled | Enables EventSource related tests |
43-
|AADAuthorityURL | (Optional) Identifies the OAuth2 authority resource for `Server` specified in `AADPasswordConnectionString` | `https://login.windows.net/<tenant>`, where `<tenant>` is the tenant ID of the Azure Active Directory (Azure AD) tenant |
44-
|AADPasswordConnectionString | (Optional) Connection String for testing Azure Active Directory Password Authentication. | `Data Source={server.database.windows.net}; Initial Catalog={Azure_DB_Name};Authentication=Active Directory Password; User ID={AAD_User}; Password={AAD_User_Password};`|
43+
|AADAuthorityURL | (Optional) Identifies the OAuth2 authority resource for `Server` specified in `AADPasswordConnectionString` | `https://login.windows.net/<tenant>`, where `<tenant>` is the tenant ID of the Entra ID (Azure AD) tenant |
44+
|AADPasswordConnectionString | (Optional) Connection String for testing Entra ID Password Authentication. | `Data Source={server.database.windows.net}; Initial Catalog={Azure_DB_Name};Authentication=Active Directory Password; User ID={AAD_User}; Password={AAD_User_Password};`|
4545
|AADSecurePrincipalId | (Optional) The Application Id of a registered application which has been granted permission to the database defined in the AADPasswordConnectionString. | {Application ID} |
4646
|AADSecurePrincipalSecret | (Optional) A Secret defined for a registered application which has been granted permission to the database defined in the AADPasswordConnectionString. | {Secret} |
4747
|AzureKeyVaultURL | (Optional) Azure Key Vault Identifier URL | `https://{keyvaultname}.vault.azure.net/` |
48-
|AzureKeyVaultTenantId | (Optional) The Azure Active Directory tenant (directory) Id of the service principal. | _{Tenant ID of Active Directory}_ |
48+
|AzureKeyVaultTenantId | (Optional) The Entra ID tenant (directory) Id of the service principal. | _{Tenant ID of Active Directory}_ |
4949
|SupportsIntegratedSecurity | (Optional) Whether or not the USER running tests has integrated security access to the target SQL Server.| `true` OR `false`|
5050
|LocalDbAppName | (Optional) If Local Db Testing is supported, this property configures the name of Local DB App instance available in client environment. Empty string value disables Local Db testing. | Name of Local Db App to connect to.|
5151
|LocalDbSharedInstanceName | (Optional) If LocalDB testing is supported and the instance is shared, this property configures the name of the shared instance of LocalDB to connect to. | Name of shared instance of LocalDB. |

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ Also released as part of this milestone:
1919

2020
### Changed
2121

22-
- **Breaking:** Removed Azure dependencies from the core package. Azure AD / Entra authentication (`ActiveDirectoryAuthenticationProvider` and related types) has been extracted into a new `Microsoft.Data.SqlClient.Extensions.Azure` package. The core `Microsoft.Data.SqlClient` package no longer depends on `Azure.Core`, `Azure.Identity`, or their transitive dependencies. Applications using Azure AD authentication must now install `Microsoft.Data.SqlClient.Extensions.Azure` separately.
22+
- **Breaking:** Removed Azure dependencies from the core package. Entra ID authentication (`ActiveDirectoryAuthenticationProvider` and related types) has been extracted into a new `Microsoft.Data.SqlClient.Extensions.Azure` package. The core `Microsoft.Data.SqlClient` package no longer depends on `Azure.Core`, `Azure.Identity`, or their transitive dependencies. Applications using Entra ID authentication must now install `Microsoft.Data.SqlClient.Extensions.Azure` separately.
2323
([#1108](https://github.com/dotnet/SqlClient/issues/1108),
2424
[#3680](https://github.com/dotnet/SqlClient/pull/3680),
2525
[#3902](https://github.com/dotnet/SqlClient/pull/3902),

doc/apps/AzureAuthentication/EntryPoint.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public static int Main(string[] args)
1919
{
2020
Description =
2121
"The ADO.NET connection string used to connect to SQL Server. " +
22-
"Supports SQL, Azure AD, and integrated authentication modes.",
22+
"Supports SQL, Entra ID, and integrated authentication modes.",
2323
Required = true
2424
};
2525

doc/apps/AzureAuthentication/README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ Usage:
7777

7878
Options:
7979
-c, --connection-string <connection-string> (REQUIRED) The ADO.NET connection string used to connect to SQL Server.
80-
Supports SQL, Azure AD, and integrated authentication modes.
80+
Supports SQL, Entra ID, and integrated authentication modes.
8181
-l, --log-events Enable SqlClient event emission to the console.
8282
-t, --trace Pauses execution to allow dotnet-trace to be attached.
8383
-v, --verbose Enable verbose output with detailed error information.
@@ -91,7 +91,7 @@ The app expects a single argument: a full connection string.
9191
dotnet run -- -c "<connection string>"
9292
```
9393

94-
For Azure AD authentication, use an `Authentication` keyword in the connection string. For example:
94+
For Entra ID authentication, use an `Authentication` keyword in the connection string. For example:
9595

9696
```bash
9797
dotnet run -- -c "Server=myserver.database.windows.net;Database=mydb;Authentication=ActiveDirectoryDefault"
@@ -134,7 +134,7 @@ Run with the default (published) package versions, and no `Azure` package:
134134
dotnet run -- -c "<connection string>"
135135
```
136136

137-
If the connection string specifies one of the Azure Active Directory authentication methods,
137+
If the connection string specifies one of the Entra ID authentication methods,
138138
`SqlClient` will fail with an error indicating that no authentication provider has been registered.
139139
This is because the `Azure` package was not referenced, and the app did not provide its own custom
140140
authentication provider.
@@ -160,6 +160,6 @@ dotnet run -p:SqlClientVersion=7.0.0-preview1 -p:AkvProviderVersion=7.0.0-previe
160160
## Prerequisites
161161

162162
- [.NET 10.0 SDK](https://dotnet.microsoft.com/download) and .NET Framework 4.8.1 or later.
163-
- A SQL Server or Azure SQL instance accessible with Azure AD credentials.
163+
- A SQL Server or Azure SQL instance accessible with Entra ID credentials.
164164
- Azure credentials available to `DefaultAzureCredential` (e.g. Azure CLI login, environment
165165
variables, or managed identity).

0 commit comments

Comments
 (0)