0
https
url
을 webview
으로 보는 Android App을 작성하고 있습니다. 이 webpage
은 자체 서명 된 SSL 인증서를 사용하며 인증을위한 클라이언트 인증서가 필요합니다. 인증서 전달 방법 webview
WebView의 클라이언트 인증서 인증
https
url
을 webview
으로 보는 Android App을 작성하고 있습니다. 이 webpage
은 자체 서명 된 SSL 인증서를 사용하며 인증을위한 클라이언트 인증서가 필요합니다. 인증서 전달 방법 webview
WebView의 클라이언트 인증서 인증
WebView 클래스에 WebViewClient 개체를 제공해야합니다. 서버에서 클라이언트 인증이 필요한 경우 WebView는 WebViewClient 객체의 onReceivedClientCertRequest
을 통해 알립니다.
예 :
MyWebClient 클래스.
public class myWebClient extends WebViewClient
{
@Override
public void onReceivedClientCertRequest(WebView view, ClientCertRequest request) {
//HERE YOU CAN DO SOME STUFF TO RETRIEVE KEY AND CERTIFICATES
request.proceed(mPrivateKey, mCertificates);
}
public void onReceivedError(WebView view, int errorCode,
String description, String failingUrl) {
super.onReceivedError(view, errorCode,
description, failingUrl);
}
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
// TODO Auto-generated method stub
super.onPageStarted(view, url, favicon);
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// TODO Auto-generated method stub
view.loadUrl(url);
return true;
}
}
MainActivity.java
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
web = (WebView) findViewById(R.id.webview01);
web.setWebViewClient(new myWebClient());
web.getSettings().setJavaScriptEnabled(true);
web.loadUrl("my_url.com");
}
SSL 2 방향 핸드 쉐이크를 수행하기 위하여 클라이언트 비밀 키 및 인증서 체인을 proceed(PrivateKey k, X509Certificate[] chain)
방법.