HAYOUNG'S MEMO

SSL 인증 무효화 본문

(프로젝트1)레드마인 지연일감 알림챗봇(MattermostAPI)

SSL 인증 무효화

HAyOunG0518 2019. 11. 29. 11:36

 

자바로 HttpURLConnection을 사용하여 https 사이트에 connect하면 오류가 난다.

 

이 경우에는

 

WebView, HttpClient, HttpURLConnection 각각에 ssl 관련 작업을 해 주어야 하는데

SSL을 무시하여 우회하도록 하는 코드를 작성하여야한다.

자세한것은 

아래의 주소를 확인하자

 

참조 ) http://dhjin.egloos.com/v/2527436

 

headline's 작업실 : HttpClient와 HTTPS

서버에서 HttpClient를 이용해 데이터를 받아오는 어플을 제작중인데. 서버를 https로 바꾸니 바로 오류가 발생~ IOS는 그냥 되던데.. WebView, HttpClient, HttpURLConnection 각각에 ssl 관련 작업을 해 주어야 하는데 1. WebView는 의외로 간단하다. WebViewClient의 onReceivedSslError함수를 Override하여 에러를 무시하도록 해 주면 된다. ex) WebView webView =

dhjin.egloos.com


1. URLConnection의 경우 HttpClient와 비슷하지만 좀다름.

TrustManager[] trustAllCerts = new TrustManager[] { // 보안때문에 필요한듯
new X509TrustManager() {
public java.security.cert.X509Certificate[] getAcceptedIssuers() {
return null;
}

public void checkClientTrusted(java.security.cert.X509Certificate[] certs, String authType) {
}

public void checkServerTrusted(java.security.cert.X509Certificate[] certs, String authType) {
}
} };

try {
SSLContext sc = SSLContext.getInstance("SSL");// Secure Socket Layer
// 웹서버와 브라우저 사이의 보안을
// 위해 암호화하는 작업
sc.init(null, trustAllCerts, new java.security.SecureRandom());
HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
} catch (Exception e) {


}