■ 개발 정리/JAVA

Java - PKIX path building failed 에러 해결

파코키 2022. 9. 2. 09:19

 

 

 

 

 

 

 

JAVA를 통해 https 통신을 할 때 접근 요청에 대한 인증이 되지 않아

PKIX path building failed 에러가 발생한다.

 

이에 해결 방안은 2가지가 있다.

 

 

 

1. 인증서가 있을 경우

   인증서를 $JAVA_HOME/lib/security/cacerts (Java의 CAfile 저장소)에 추가해준다.

 

 

2. 인증서가 없는 경우 

   코드 상에서 처리 한다.

import javax.net.ssl.HttpsURLConnection;
import javax.net.ssl.SSLContext;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;

	public void cunnectHttps() throws Exception {
		
		TrustManager[] trustAllCerts = new TrustManager[] {
			new X509TrustManager() {
				public X509Certificate[] getAcceptedIssuers() {
					return null;
				}

				public void checkClientTrusted(X509Certificate[] certs, String authType) {}
				public void checkServerTrusted(X509Certificate[] certs, String authType) {}
			}
		};

		SSLContext sc = SSLContext.getInstance("SSL");
		sc.init(null, trustAllCerts, new SecureRandom());
		HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
	}

 

 

 

 

 

 

 

 

출처 - https://jinhokwon.github.io/devops/devops-java/

 

Java PKIX path building failed 대처

PKIX path building failed 개요

jinhokwon.github.io