クライアント証明書
SSL が有効な場合に Servlet でクライアント証明書を取得するには、 リクエストがセキュアでなければいけません。 セキュアか否かの確認には、ServletRequest#isSecure() を使います。 その上で、リクエストの属性に設定されているクライアント証明書を取得します。
ソース記述例
if (request.isSecure()) {
X509Certificate[] certList = (X509Certificate[])request
.getAttribute("javax.servlet.request.X509Certificate");
if (certList != null) {
for (int i = 0; i < certList.length; i++) {
Principal userDN = certList[0].getSubjectDN();
System.out.println(userDN);
}
}
}