gpt4 book ai didi

c# - 无法使用身份验证 = Active Directory 托管标识从 dotnet Web 应用程序连接到 Azure SQL MI

转载 作者:行者123 更新时间:2023-12-03 06:34:57 34 4
gpt4 key购买 nike

我有一个在 prem Windows 服务器上运行的 ASP.NET Web 应用程序。我们需要从 C# 代码连接到 Azure SQL MI。我尝试了以下示例代码:

string ConnectionString1 = @"Server=demo.database.windows.net; Authentication=Active Directory Managed Identity; Encrypt=True; Database=testdb";

using (SqlConnection conn = new SqlConnection(ConnectionString1)) {
conn.Open(); //Erroring out
}

错误消息:未处理的异常:Microsoft.Data.Sqlclient.Sqlexception:ManagedIdentityCredential 身份验证失败:托管身份响应未采用预期格式

我错过了什么?

注意:我可以使用 Active Directory 身份验证通过 SQL Server Management studio 连接到同一个 Azure SQL 托管实例。仅当我们尝试从 C# 代码建立连接时才会看到该问题

最佳答案

I have an ASP.NET web application running on prem windows server.

托管身份在本地服务器上不可用,除非它们配置为 Azure ARC-Enabled

否则,要使用 .NET 从本地服务器对托管实例进行身份验证,您可以使用 here 中记录的任何 Azure AD 身份验证方法。 ,除了 SQL Auth 甚至 Windows Auth .

但最常见的方法可能是

SQL Server 身份验证

Active Directory Service Principal Auth

关于c# - 无法使用身份验证 = Active Directory 托管标识从 dotnet Web 应用程序连接到 Azure SQL MI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74957427/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com