1 package com.freemindcafe.https.clientauth;
3 import java.io.IOException;
4 import java.security.cert.X509Certificate;
6 import javax.naming.InvalidNameException;
7 import javax.naming.ldap.LdapName;
8 import javax.naming.ldap.Rdn;
9 import javax.servlet.ServletException;
10 import javax.servlet.http.HttpServletRequest;
12 import org.
apache.catalina.connector.Request;
13 import org.
apache.catalina.connector.Response;
14 import org.
apache.catalina.valves.ValveBase;
19 public void invoke(Request arg0, Response arg1)
throws IOException,
21 HttpServletRequest req = arg0;
22 X509Certificate certs[] =
23 (X509Certificate[])req.getAttribute(
"javax.servlet.request.X509Certificate");
24 String dn = certs[0].getSubjectX500Principal().getName();
27 ldapDN =
new LdapName(dn);
28 for(Rdn rdn: ldapDN.getRdns()) {
29 System.err.println(rdn.getType() +
" -> " + rdn.getValue());
31 }
catch (InvalidNameException e) {