使用Linux上.net核心应用程序的ntlm身份验证访问MS SQL Server

时间:2016-10-14 08:08:54

标签: .net linux asp.net-core

我有使用集成安全性连接到MS SQL Server的asp.net核心应用程序。 这在windows上工作正常,但是当部署到linux时,集成安全功能不起作用,这是显而易见的。 我不使用EF或其他orms,只需简单的System.Data.SqlClient

那么问题是如何从linux上的asp.net核心应用程序访问带有域身份验证的MS SQL Server数据库? 这个sql server不支持sql授权,所以我们不能在out连接字符串中使用userid和password。

例如GO等许多语言都支持sql客户端中的ntml。如何在.net核心上做到这一点?

1 个答案:

答案 0 :(得分:0)

因为有一段时间可以做到这一点。细节很重要,但是重要的部分是:

安装kerberos内容

  

apt install -y krb5-config

     

apt-get install -y krb5-user

创建krb5.conf文件

有关详细信息,请参见下面的链接

生成密钥表文件

  

ktutil

     

ktutil:add_entry -password -p myUserName@MY.COMPANY.LOCAL -k 1 -e RC4-HMAC   --ktutil将提示您输入密码...

     

ktutil:write_kt myUserName.keytab

     

ktutil:退出

但是还有更多内容,请参阅this文章以获取所有详细信息。