[jboss-cvs] JBossAS SVN: r72683 - trunk/server/src/main/org/jboss/ejb/plugins.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Apr 24 12:30:21 EDT 2008
Author: anil.saldhana at jboss.com
Date: 2008-04-24 12:30:20 -0400 (Thu, 24 Apr 2008)
New Revision: 72683
Modified:
trunk/server/src/main/org/jboss/ejb/plugins/SSLSessionInterceptor.java
Log:
JBAS-5480 JBAS-5481 : SSL Session Interceptor fixes
Modified: trunk/server/src/main/org/jboss/ejb/plugins/SSLSessionInterceptor.java
===================================================================
--- trunk/server/src/main/org/jboss/ejb/plugins/SSLSessionInterceptor.java 2008-04-24 16:28:05 UTC (rev 72682)
+++ trunk/server/src/main/org/jboss/ejb/plugins/SSLSessionInterceptor.java 2008-04-24 16:30:20 UTC (rev 72683)
@@ -25,11 +25,20 @@
import javax.net.ssl.SSLSession;
import javax.net.ssl.SSLPeerUnverifiedException;
import java.security.cert.X509Certificate;
+import java.util.Set;
+
import org.jboss.invocation.Invocation;
import org.jboss.security.ssl.DomainServerSocketFactory;
import org.jboss.security.CertificatePrincipal;
+import org.jboss.security.SecurityContext;
import org.jboss.security.auth.certs.SubjectDNMapping;
+import org.jboss.security.identity.Identity;
+import org.jboss.security.identity.IdentityFactory;
+import org.jboss.security.identity.IdentityType;
+import org.jboss.security.identity.extensions.CertificateIdentity;
+import org.jboss.security.identity.extensions.CertificateIdentityFactory;
+import org.jboss.security.identity.extensions.CredentialIdentity;
/**
* An interceptor that looks for the peer certificates from the SSLSession
@@ -50,7 +59,7 @@
public Object invokeHome(Invocation mi) throws Exception
{
extractSessionPrincipal(mi);
- Object returnValue = getNext().invoke(mi);
+ Object returnValue = getNext().invokeHome(mi);
return returnValue;
}
@@ -102,7 +111,18 @@
Principal caller = cpMapping.toPrinicipal(certs);
mi.setPrincipal(caller);
mi.setCredential(certs);
+
+ //Update the invocation security context
+ SecurityContext invSC = mi.getSecurityContext();
+ if(invSC != null)
+ {
+ CertificateIdentityFactory identityFactory = (CertificateIdentityFactory)
+ IdentityFactory.getFactory(IdentityType.CERTIFICATE);
+ CertificateIdentity certIdentity = identityFactory.createIdentity(caller, certs, null);
+ invSC.getUtil().clearIdentities(CredentialIdentity.class);
+ invSC.getUtil().addIdentity(certIdentity);
+ }
}
}
}
-}
+}
\ No newline at end of file
More information about the jboss-cvs-commits
mailing list