.Net Core Linux 容器无法使用 SQL 身份验证连接到 SQL Server

no1*_*no1 3 sql-server docker .net-core

在 Linux Docker 容器中运行的 .Net Core 2.2 应用程序无法使用 SQL 身份验证向另一台机器上的 SQL Server 进行身份验证。错误信息是:

无法使用 Kerberos 进行身份验证。确保已使用“kinit”在客户端上初始化 Kerberos,并且已为 SQL Server 注册服务主体名称以允许 Kerberos 身份验证。

我们已将连接字符串配置为使用 SQL 身份验证(用户名和密码)。我们已尝试设置trusted_connection=false,但连接仍尝试使用Kerberos 身份验证。

(编辑的)连接字符串是:

"server=ourfullyqualifiedserver.domain,1433;database=our-database;user=sql-user;password=sql-password;"

我希望能够使用 SQL 身份验证从容器连接到 SQL Server,但它仍在尝试使用 Kerberos。为什么以及我们如何使用 SQL Server 身份验证建立连接?

nPc*_*omp 6

您可能必须添加"Trusted_Connection=false;"到您的连接字符串。此外,将服务器 IP 与您向服务器公开的端口一起使用。