Skip to content

feat: add ADO.NET authentication parameter synonyms#326

Draft
Copilot wants to merge 5 commits intomainfrom
copilot/add-ado-net-synonyms
Draft

feat: add ADO.NET authentication parameter synonyms#326
Copilot wants to merge 5 commits intomainfrom
copilot/add-ado-net-synonyms

Conversation

Copy link

Copilot AI commented Feb 9, 2026

Adds support for ADO.NET-style authentication parameters to enable drop-in compatibility with Microsoft.Data.SqlClient connection strings.

Changes

  • msdsn: Added authentication as synonym for fedauth parameter
  • azuread: Added normalization for ADO.NET authentication method names (space-separated format)
    • Maps "Active Directory Default" → ActiveDirectoryDefault
    • Maps "Active Directory Password" → ActiveDirectoryPassword
    • Maps "Active Directory Service Principal" → ActiveDirectoryServicePrincipal
    • Maps "Active Directory Managed Identity" → ActiveDirectoryManagedIdentity
    • And 6 other ADO.NET authentication method names
    • "Sql Password" treated as non-Azure AD authentication (ignored)

Example

Both connection string formats now work identically:

// Original format (still supported)
db.Open("azuresql", "server=myserver;fedauth=ActiveDirectoryDefault")

// ADO.NET format (now supported)
db.Open("azuresql", "server=myserver;authentication=Active Directory Default")

Normalization ensures downstream code receives consistent internal format regardless of input variation.

Original prompt

This section details on the original issue you should resolve

<issue_title>Add more ADO.Net synonyms to connection string parameters</issue_title>
<issue_description>

var adoSynonyms = map[string]string{

At minimum, add "Authentication" as a synonym for "fedauth".

Also, update the azuread package to support the same set of Authentication name values as ADO.Net in addition to the names it already supports as values for the fedauth parameter.

The name values ADO.NEt supports are:

 const string SqlPasswordString = "Sql Password";
        const string ActiveDirectoryPasswordString = "Active Directory Password";
        const string ActiveDirectoryIntegratedString = "Active Directory Integrated";
        const string ActiveDirectoryInteractiveString = "Active Directory Interactive";
        const string ActiveDirectoryServicePrincipalString = "Active Directory Service Principal";
        const string ActiveDirectoryDeviceCodeFlowString = "Active Directory Device Code Flow";
        internal const string ActiveDirectoryManagedIdentityString = "Active Directory Managed Identity";
        internal const string ActiveDirectoryMSIString = "Active Directory MSI";
        internal const string ActiveDirectoryDefaultString = "Active Directory Default";
        internal const string ActiveDirectoryWorkloadIdentityString = "Active Directory Workload Identity";
```</issue_description>

## Comments on the Issue (you are @copilot in this section)

<comments>
</comments>


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Copilot AI and others added 4 commits February 9, 2026 15:54
- Add "authentication" as synonym for "fedauth" in msdsn package
- Support ADO.NET authentication value names with spaces in azuread package
- Add normalizeAuthenticationMethod to convert ADO.NET names to internal format
- Add comprehensive tests for new functionality

Co-authored-by: dlevy-msft-sql <194277063+dlevy-msft-sql@users.noreply.github.com>
- Update params map with normalized fedauth value for consistency
- Improve comment clarity for "Sql Password" handling

Co-authored-by: dlevy-msft-sql <194277063+dlevy-msft-sql@users.noreply.github.com>
Co-authored-by: dlevy-msft-sql <194277063+dlevy-msft-sql@users.noreply.github.com>
- Clarify that empty string return signals non-Azure AD authentication
- Explain purpose of updating params map with normalized value

Co-authored-by: dlevy-msft-sql <194277063+dlevy-msft-sql@users.noreply.github.com>
Copilot AI changed the title [WIP] Add more ADO.Net synonyms to connection string parameters feat: add ADO.NET authentication parameter synonyms Feb 9, 2026
Copilot AI requested a review from dlevy-msft-sql February 9, 2026 15:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add more ADO.Net synonyms to connection string parameters

2 participants