내 응용 프로그램은 인증서를 사용하여 ID를 확인하는 SSL 웹 서비스에 연결합니다. 최근에이 인증서가 변경되었으며 신뢰할 수있는 기관에서 서명하지 않았기 때문에 응용 프로그램의 일부가 실패했습니다. 앞으로이 상황을 방지하기위한 서비스의 조언은 개별 인증서 대신 기존 인증서의 서명 기관을 신뢰해야한다는 것입니다.Java에서 인증 기관을 신뢰하는 방법은 무엇입니까?
Java로 어떻게 구현할 수 있습니까?
은 현재 내가 키 도구를 사용하고 같은 TrustManagerFactory에 뭔가를 구성하는 키 스토어에 그들이 제공하는 인증서를 추가 해요 :
public static TrustManager[] getTrustManagers() throws KeyStoreException, NoSuchAlgorithmException, CertificateException, IOException {
KeyStore tks = KeyStore.getInstance(KeyStore.getDefaultType());
tks.load(StarTrustManagerFactory.class.getResourceAsStream("webservice.ks"), "password".toCharArray());
TrustManagerFactory tmf = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
tmf.init(tks);
return tmf.getTrustManagers();
};
을 트러스트하는 TrustManager
을 반환하는이 방법을 적응의 방법이 있나요 내가 가지고있는 증명서의 서명 권한은? 또한, 내가 갖고있는 인증서에서 인증서의 서명자에 관한 정보를 어떻게 추출 할 수 있습니까?
감사합니다. Dan.
http://javarevisited.blogspot.de/2012/09/difference-between-truststore-vs-keyStore-Java-SSL.html - 트러스트 스토어에 포함 된 모든 인증서를 신뢰합니다. – zapl