2013-10-31 5 views
0

내 앱이 자체 서명 된 인증서를 통해 HTTPS를 통해 Worklight 서버에 연결합니다. 앱을 성공적으로 시작할 수 있습니다.IBM Worklight 5.0.6 : 직접 업데이트 - SSLHandshakeException

그러나 Worklight 서버에서 파일 다운로드를 시작한 직접 업데이트가 실패한 경우 인증서 경로에 대한 오류 메시지가 표시됩니다.

SSLHandshakeException과 직접 업데이트 오류가 상호 연관되어 있는지 알 수 있습니까? 감사합니다.

(환경 : 작업등을 5.0.6.1은, ND 8.5 WAS, 테스트 장치 : HTC 하나)

10-31 21:24:50.897: W/System.err(28746): Catch exception while startHandshake: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. 
10-31 21:24:50.897: W/System.err(28746): return an invalid session with invalid cipher suite of SSL_NULL_WITH_NULL_NULL 
10-31 21:24:50.927: E/WLDroidGap(28746): Failed downloading application update file. 

답변

2

예, 직접 업데이트 사용과 SSL 핸드 셰이크 오류가 관련되어 있습니다. Android는 자체 서명 인증서로 작업하는 것을 허용하지 않습니다 (SSL을 거치지 않는 한). 안드로이드의 트러스트 스토어에 자체 서명 된 인증서를 설치할 수 없으므로 안드로이드 클라이언트는 서버의 자체 서명 인증서에 대한 신뢰를 설정할 수 없습니다. 아마 하이브리드 채널과 이전에 SSL 오류가 표시되지 않는 이유를 통해 갈 때

android:debuggable="true" 

이 플래그는 SSL 유효성 검사를 비활성화합니다

당신은 아마 당신의 안드로이드 매니페스트 파일에 지정된 다음 플래그를 가지고있다. 직접 업데이트는이 플래그가 적용되지 않는 다른 레벨에서 처리되므로 SSL 유효성 검사가 발생합니다.

dev/test 대신 자체 서명 된 CA 인증서를 사용해야합니다. 자체 서명 된 CA를 생성하는 방법에 대한 다음 답변을 참조하십시오. https://stackoverflow.com/a/19841469/2494287

1

직접 업데이트는 자체 서명 된 인증서와 함께 작동하지 않습니다. 프로덕션 환경에서 사용하도록되어 있으므로 유효한 CA 인증서 만 수락합니다.

관련 문제