我正在使用 jTDS 驱动程序连接到 SQL Server 数据库。我不想提供我的 Windows 域用户名和密码,但想使用 Trusted_connection我的连接字符串中的属性。然而,似乎按照this jTDS 驱动程序常见问题解答页面 jTDS 驱动程序不支持名为 Trusted_connection
的属性。
鉴于应用程序和 SQL Server 数据库位于同一主机上,并且我已正确安装 ntlmauth.dll
,我如何利用 Trusted_connection
属性,以便我不使用不必指定用户名/密码?
jTDS 是否会在发现正在使用 useNTLMv2
和 domain
属性后立即自动使用域用户名和密码,如以下连接 URL 所示?
jdbc:jtds:sqlserver://DBHostName:Port/DatabaseName;useNTLMv2=true;domain=DomainName
注意:只要我有权访问应用程序的代码,我就可以自己测试这一点。
最佳答案
如文件 README.SSO 中所述,您无需指定任何凭据。
In order to set up the jTDS driver to use Windows Single Sign On, users will have to connect without providing a user name and password. This will only work on Windows.
Driver example:
// No user name or password in URL or as parameters
DriverManager.getConnection(
"jdbc:jtds:sqlserver://localhost:1433/LionKing");
您也不需要指定 useNTLMv2 参数,如果您这样做,它将确定将使用的 NTLM 版本,而不是 IF NTLM 将使用或不使用。
关于sql-server - 如何通过 jTDS 驱动程序使用 Trusted_connection 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20601148/