2013-10-09 3 views
2

을 기존의 신뢰할 수있는 인증서 항목을 채우거나 삭제하지 않고 현재 JVM 인스턴스에 대해 신뢰할 수있는 인증서로 추가하는 방법은 무엇입니까? 또한 이것은 파일 시스템의 모든 트러스트 스토어를 수정해서는 안되며 현재 jvm 인스턴스에서만 유효해야합니다.인증서를 현재 JVM 인스턴스에 대해 신뢰할 수있는 것으로 프로그래밍 방식으로 추가하는 방법

이렇게 할 방법이 있습니까?

+1

글로벌 방식으로이를 수행 할 방법이 없습니다. 그러나 자신의 신뢰할 수있는 인증서를 사용하여 SSLContext를 직접 생성하고 SSL 관련 상호 작용에 사용할 수 있습니다. – jtahlborn

답변

2

Java와 함께 제공되는 cacerts 파일을 복사하십시오.

keytool 명령 또는 InstallCert 응용 프로그램을 사용하여 필요에 따라 인증서 또는 CA를 추가하십시오.

그런 다음 응용 프로그램을 시작할 때 -Djavax.net.ssl.trustStore = "새 truststore에 대한 파일 경로"-Djavax.net.ssl.trustStorePassword = "새 truststore 용 암호"VM 인수를 사용하십시오.

+0

답변 해 주셔서 감사합니다. 문제는 런타임에/프로그래밍 방식으로 인증서를 추가해야한다는 것입니다. –

+1

글쎄, 나는 InstallCert 응용 프로그램을 열어서 그들이 어떻게하는지 보게 될 것이다. 이 코드는 [자유롭게 사용할 수 있음] (http://code.google.com/p/java-use-examples/source/browse/trunk/src/com/aw/ad/util/InstallCert.java)이어야하며 필요에 따라 프로그래밍 방식으로 인증서를 추가 할 수 있습니다. 대부분의 경우 메모리 트러스트 스토어에 새로 추가 된 내용을 디스크에 기록하는 대신 기본 cacerts 파일 복사본을 사용하고 싶을 것입니다. – hooknc

+0

대답에는 InstallCert 응용 프로그램이 언급되어 있으며 원본에 source.Looking이 포함되어 있으므로 응용 프로그램에서 코드 나 일부를 사용할 수 있도록 요구 사항을 충족한다고 생각합니다. – fgakk