HTTPS를 통해 Java Web API를 연결하려고합니다. 그러나 예외가 발생합니다.
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException
온라인 keytool 및 SSL 인증서 자습서에서 배운 다음 단계를 따랐습니다.
HTTPS URL을 브라우저에 복사하고 SSL 인증서를 다운로드하여 Internet Explorer를 사용하여 브라우저에 설치했습니다.
인증서를 내 컴퓨터의 경로로 내보냈으며 인증서는 다음과 같이 저장되었습니다.
.cer
keytool의 가져 오기 옵션을 사용했습니다. 아래 명령은 오류없이 실행되었습니다.
keytool -import -alias downloadedCertAlias -keystore C:\path\to\my\keystore\cacerts.file -file C:\path\of\exportedCert.cer
명령 프롬프트에서 암호를 입력하라는 메시지가 표시되고 입력 한 후 인증되었습니다.
cmd
창은 일부 인증서 데이터 및 서명을 인쇄하고 내가 묻는 메시지했다 :이 인증서를 신뢰 하시겠습니까?
예라고 대답했습니다.
cmd 프롬프트가 표시됩니다.
키 저장소에 인증서가 추가되었습니다.
그러나 그 메시지 후에 또 다른 예외가 표시되었습니다.
keytool error: java.io.FileNotFoundException: C:\Program files\...\cacerts <Access Denied>
마지막으로 keystore를 확인했을 때 SSL 인증서가 추가되지 않았고 내 응용 프로그램은 이전에 연결하려고 할 때와 동일한 예외를 제공합니다.
(javax.net.ssl.SSLHandshakeException:sun.security.validator.ValidatorException)
keytool
실행 한 정확한 명령을 게시 할 수 있습니까? 여기서 명백한 문제 중 일부는-keystore
인수 의 오타와 keytool이 키를 가져올 키 저장소를 찾을 수 없다는 사실입니다