Java JDBC连接集成安全性仅适用于我的Eclipse

时间:2013-01-22 10:01:42

标签: java jdbc integrated-security

当我在Eclipse中打开jdbc连接时 - 它工作正常。

但是当我创建可执行jar文件并运行它时 - 我遇到了Integrated Security = true的问题。

或者可能不仅仅是集成安全性......

1 个答案:

答案 0 :(得分:1)

我假设您正在谈论连接到Microsoft SQL Server。能够使用集成安全性您需要在http://msdn.microsoft.com/en-us/library/ms378428.aspx#Connectingintegrated上记录的sqljdbc_auth.dll上添加java.library.path

  

JDBC驱动程序支持通过integratedSecurity连接字符串属性在Windows操作系统上使用Type 2集成身份验证。要使用集成身份验证,请复制sqljdbc_auth.dll    将文件发送到安装JDBC驱动程序的计算机上Windows系统路径上的目录。

     

sqljdbc_auth.dll个文件安装在以下位置:

     

<installation directory>\sqljdbc_<version>\<language>\auth\

     

[...]

     

或者,您可以设置java.libary.path系统属性以指定sqljdbc_auth.dll的目录。例如,如果JDBC驱动程序安装在缺省目录中,则可以在启动Java应用程序时使用以下虚拟机(VM)参数指定DLL的位置:

     

-Djava.library.path=C:\Microsoft JDBC Driver 4.0 for SQL Server\sqljdbc_<version>\enu\auth\x86

请注意,您需要使用正确的DLL,具体取决于您的java VM的位数(因此对于32位,请使用x86中的一个,对于64位来自x64)。< / p>