1 package com.freemindcafe.apache.cxf.jaxrs.sample9;
3 import java.security.cert.X509Certificate;
5 import javax.naming.InvalidNameException;
6 import javax.naming.ldap.LdapName;
7 import javax.naming.ldap.Rdn;
8 import javax.servlet.http.HttpServletRequest;
12 import org.
apache.cxf.phase.AbstractPhaseInterceptor;
14 import org.
apache.cxf.transport.http.AbstractHTTPDestination;
20 super(Phase.PRE_PROTOCOL);
23 public void handleMessage(XMLMessage message)
throws Fault {
24 System.out.println(
"SSLInterceptor-----------------");
26 HttpServletRequest request = (HttpServletRequest) message.get(AbstractHTTPDestination.HTTP_REQUEST);
27 X509Certificate certs[] =
28 (X509Certificate[])request.getAttribute(
"javax.servlet.request.X509Certificate");
29 String dn = certs[0].getSubjectX500Principal().getName();
32 ldapDN =
new LdapName(dn);
33 for(Rdn rdn: ldapDN.getRdns()) {
34 System.out.println(rdn.getType() +
" -> " + rdn.getValue());
36 }
catch (InvalidNameException e) {