투케이2K

107. (TWOK/ERROR) [Spring] 빌드 에러 - 드라이버가 SSL 암호화를 사용하여 SQL Sever로 보안 연결 설정할 수 없습니다 본문

투케이2K 에러관리

107. (TWOK/ERROR) [Spring] 빌드 에러 - 드라이버가 SSL 암호화를 사용하여 SQL Sever로 보안 연결 설정할 수 없습니다

투케이2K 2022. 10. 3. 14:27

[환경 설정 및 설명]

프로그램 : Intelij

설 명 : 빌드 에러 - 드라이버가 SSL 암호화를 사용하여 SQL Sever로 보안 연결 설정할 수 없습니다

 

[에러 원인]

1. SQL Server TLS 인증서의 유효성 검사에서 발생하는 이슈

com.microsoft.sqlserver.jdbc.SQLServerException: 드라이버가 SSL(Secure Sockets Layer) 암호화를 사용하여 SQL Sever로 보안 연결을 설정할 수 없습니다. 오류: "sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target". ClientConnectionId:07bd217b-6711-41ff-b6e0-b12e380d8d6d
	at com.microsoft.sqlserver.jdbc.SQLServerConnection.terminate(SQLServerConnection.java:3680) ~[mssql-jdbc-10.2.1.jre8.jar:na]
	at com.microsoft.sqlserver.jdbc.TDSChannel.enableSSL(IOBuffer.java:2113) ~[mssql-jdbc-10.2.1.jre8.jar:na]
	at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:3204) ~[mssql-jdbc-10.2.1.jre8.jar:na]
	at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:2833) ~[mssql-jdbc-10.2.1.jre8.jar:na]
	at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:2671) ~[mssql-jdbc-10.2.1.jre8.jar:na]
	at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:1640) ~[mssql-jdbc-10.2.1.jre8.jar:na]
	at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:936) ~[mssql-jdbc-10.2.1.jre8.jar:na]
	at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:138) ~[HikariCP-4.0.3.jar:na]
	at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:364) ~[HikariCP-4.0.3.jar:na]
	at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:206) ~[HikariCP-4.0.3.jar:na]
	at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:476) [HikariCP-4.0.3.jar:na]
	at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:561) [HikariCP-4.0.3.jar:na]
 
 

[해결 방법]

1. application.yml 파일에서 datasource url 설정에서 encrypt=true;trustServerCertificate=true 옵션 추가 실시

 

spring:
  devtools:
    livereload:
      enabled: true
  datasource:
    driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
    url: jdbc:sqlserver://localhost:1433;serverName=DESKTOP-QDR03FS;encrypt=true;trustServerCertificate=true
    username: KGH_DB
    password: twok@2

server:
  port: 7000

mybatis:
  mapper-locations: classpath:D_Mybatis/*.xml

 

반응형
Comments