LinqPad 6 RC - Error connecting to AzureSQL using AzureAD credentials
Hi,
I just downloaded the current LinqPad 6 RC (did not use a beta version) but my stored LinqPad 5 connections using AzureAD (Active Directory) credentials do not work. Neither does re-creating the connection in LinqPad. This seems to be some issue in .NET Core 3.0, but maybe you can take a look? I used the pre-start screen from LinqPad itself to install the X86 .Net Core version.
I am getting the error message: Keyword not supported: 'authentication'.
I am using my Azure AD user name that I have set up as "AD Admin" on the AzureSQL database server.
Connecting via "Active Directory - Universal with MFA Support (interactive)" works, but not when specifying via "Username and Password" and checking "Active Directory"
The full connection string (via the advanced dialog) is identical in LinqPad 5 and 6
Data Source=xxx.database.windows.net;Authentication=Active Directory Password;User ID=foo@domain.com;Password=Whatever;app=LINQPad;Encrypt=true
I could supply you with an empty database and Azure AD credentials to connect against if needed.
Thanks again for the awesome tool, our company could not work without it. Been using it since Version 4 :-)
I just downloaded the current LinqPad 6 RC (did not use a beta version) but my stored LinqPad 5 connections using AzureAD (Active Directory) credentials do not work. Neither does re-creating the connection in LinqPad. This seems to be some issue in .NET Core 3.0, but maybe you can take a look? I used the pre-start screen from LinqPad itself to install the X86 .Net Core version.
I am getting the error message: Keyword not supported: 'authentication'.
I am using my Azure AD user name that I have set up as "AD Admin" on the AzureSQL database server.
Connecting via "Active Directory - Universal with MFA Support (interactive)" works, but not when specifying via "Username and Password" and checking "Active Directory"
The full connection string (via the advanced dialog) is identical in LinqPad 5 and 6
Data Source=xxx.database.windows.net;Authentication=Active Directory Password;User ID=foo@domain.com;Password=Whatever;app=LINQPad;Encrypt=true
I could supply you with an empty database and Azure AD credentials to connect against if needed.
Thanks again for the awesome tool, our company could not work without it. Been using it since Version 4 :-)
Comments
AD support is complex in that it relies on starting a .NET Framework process to open a SQL connection and extract the access token from the connection via reflection. It then has to send the token back to the .NET Core process so that it can assign it to its own SQL connection.
I can confirm that the AD Login now works in Linqpad 6 with both the "MFA interactive" Mode and the "Username and Password" Mode. Thanks for the quick fix. I will remove the test DB server and user again then, if you do not need them anymore currently.
Time to upgrade our Enterprise license then
edit: Will do another test on my PC at home later today and give a final feedback