복붙노트

[SPRING] 오류 발생 : PKIX 경로 구축 실패 : 요청한 대상에 대한 유효한 인증 경로를 찾을 수 없음

SPRING

오류 발생 : PKIX 경로 구축 실패 : 요청한 대상에 대한 유효한 인증 경로를 찾을 수 없음

웹 서비스를 통해 다른 시스템에 XML을 보내려고합니다. 그러나 보내는 동안 나는 다음과 같은 오류가 발생합니다. 그들이 저에게 준 증명서를 설치했습니다. 하지만 여전히 작동하지 않습니다.

javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

해결법

  1. ==============================

    1.이 오류의 원인은 두 가지입니다.

    이 오류의 원인은 두 가지입니다.

    첫 번째 경우에 대한 해결책은 신뢰할 수없는 CA (또는 자체 자체)를 JRE 트러스트 스토어 ($ {java.home} / lib / security / cacerts) 이상에 추가하는 것입니다 - 자신의 트러스트 스토어를 만듭니다 (업그레이드 할 때 제거되지 않음) Java)를 만들고 javax.net.ssl.trustStore JVM 등록 정보를 통해 응용 프로그램에 제공하십시오.

    두 번째 경우의 해결 방법은 첫 번째 사례 솔루션과 함께 또는 그보다 나은 방법입니다. 반대쪽이 올바른 인증서 체인을 보내도록 설득합니다.

  2. ==============================

    2.JRE truststore @ $ {java.home} / lib / security / cacerts에 인증서를 추가하거나 자신의 trustStore를 가지고 있고 애플리케이션 / JVM에 인증서 경로를 제공하십시오. 예를 들어 가능한 한 가지 방법은

    JRE truststore @ $ {java.home} / lib / security / cacerts에 인증서를 추가하거나 자신의 trustStore를 가지고 있고 애플리케이션 / JVM에 인증서 경로를 제공하십시오. 예를 들어 가능한 한 가지 방법은

    import java.util.Properties;
    ...
        Properties systemProps = System.getProperties();
        systemProps.put("javax.net.ssl.keyStorePassword","passwordForKeystore");
        systemProps.put("javax.net.ssl.keyStore","pathToKeystore.ks");
        systemProps.put("javax.net.ssl.trustStore", "pathToTruststore.ts");
        systemProps.put("javax.net.ssl.trustStorePassword","passwordForTrustStore");
        System.setProperties(systemProps);
    ...
    

    자세한 내용은 RedHat 사이트에 대한 자세한 내용을 참조하십시오.

    질문에 도움이 될 수 있습니다.

  3. from https://stackoverflow.com/questions/17388279/getting-error-pkix-path-building-failed-unable-to-find-valid-certification-pat by cc-by-sa and MIT license