使用Windows身份验证从Spring Boot应用程序连接到MSSQL

时间:2018-10-15 09:33:10

标签: sql-server windows spring-boot unix

我目前正在使用以下属性从Java Spring Boot应用程序连接到远程Mssql服务器:

<dependency>
    <groupId>com.google.oauth-client</groupId>
    <artifactId>google-oauth-client-jetty</artifactId>
    <version>${project.oauth.version}</version>
    <exclusions>
        <exclusion>
            <groupId>org.mortbay.jetty</groupId>
            <artifactId>servlet-api</artifactId>
        </exclusion>
    </exclusions>
</dependency>

该应用程序可从Windows和UNIX服务器运行。现在,我需要开始使用Windows身份验证而不是数据库凭据。已从MSSQL端配置并支持此功能。从Java春季启动这是行不通的。我试图添加到url:IntegratedSecurity = true,它表示找不到dll。我将sqljdbc_auth.dll添加到java jre bin文件夹中,但没有成功。

3 个答案:

答案 0 :(得分:1)

我正在使用MS SQL Server 2016,Hibernate 5.3.7,Final和Spring bot 2.2.0。对我来说,将此行添加到属性中可以正常工作:(没有jtds!)

spring.datasource.url=jdbc:servername;databasename=your_db_name;integratedSecurity=true

您可能还需要以下属性:

spring.datasource.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.SQLServer2012Dialect

如果您遇到“ java.library.path中没有sqljdbc_auth”的问题。 您可以参考此答案no sqljdbc_auth

答案 1 :(得分:0)

尝试使用jtds驱动程序,并在复制属性中使用:

    app.datasource.youraplication.jdbcUrl=jdbc:jtds:sqlserver://yourBdHost/yourSchemaBd;domain=yourDomain

答案 2 :(得分:0)

从以下位置下载驱动程序: https://docs.microsoft.com/en-us/sql/connect/jdbc/download-microsoft-jdbc-driver-for-sql-server?view=sql-server-2017

将jar添加到项目中右键单击项目->构建路径->配置构建路径->库->添加外部JAR

在您的连接字符串中添加“ integratedSecurity = true”,并删除用户名和密码

相关问题