[jboss-cvs] JBossAS SVN: r107377 - projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/security.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Aug 4 07:28:05 EDT 2010


Author: wolfc
Date: 2010-08-04 07:28:04 -0400 (Wed, 04 Aug 2010)
New Revision: 107377

Modified:
   projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/security/Ejb3AuthenticationInterceptorv2.java
   projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/security/SecurityHelper.java
Log:
EJBTHREE-2141: use the attachment from SecurityClientInterceptor instead


Modified: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/security/Ejb3AuthenticationInterceptorv2.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/security/Ejb3AuthenticationInterceptorv2.java	2010-08-04 11:26:45 UTC (rev 107376)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/security/Ejb3AuthenticationInterceptorv2.java	2010-08-04 11:28:04 UTC (rev 107377)
@@ -21,14 +21,6 @@
   */
 package org.jboss.ejb3.security;
 
-import java.lang.reflect.Method;
-import java.security.AccessController;
-import java.security.Principal;
-import java.security.PrivilegedExceptionAction;
-
-import javax.ejb.EJBAccessException;
-import javax.security.auth.Subject;
-
 import org.jboss.aop.advice.Interceptor;
 import org.jboss.aop.joinpoint.Invocation;
 import org.jboss.aop.joinpoint.MethodInvocation;
@@ -46,6 +38,13 @@
 import org.jboss.security.javaee.EJBAuthenticationHelper;
 import org.jboss.security.javaee.SecurityHelperFactory;
 
+import javax.ejb.EJBAccessException;
+import javax.security.auth.Subject;
+import java.lang.reflect.Method;
+import java.security.AccessController;
+import java.security.Principal;
+import java.security.PrivilegedExceptionAction;
+
 /**
  *  Authentication Interceptor
  *  @author <a href="mailto:bill at jboss.org">Bill Burke</a>
@@ -82,6 +81,7 @@
       SecurityContext prevSC = SecurityActions.getSecurityContext();
       try
       {
+         // See org.jboss.ejb3.security.client.SecurityClientInterceptor
          SecurityContext invSC = (SecurityContext) invocation.getMetaData("security","context"); 
          
          SecurityDomain domain = container.getAnnotation(SecurityDomain.class); 
@@ -102,20 +102,16 @@
              * from the invocation sc
              */
             final SecurityContext sc = SecurityActions.createSecurityContext(domainValue);
-            
-            if(shelper.isLocalCall(mi))
+
+            if(invSC == null)
             {
                if(prevSC == null)
                   throw new IllegalStateException("Local Call: Security Context is null");
-               populateSecurityContext(sc, prevSC);  
+               populateSecurityContext(sc, prevSC);
             }
             else
             { 
-              //Remote Invocation
-              if(invSC == null)
-                throw new IllegalStateException("Remote Call: Invocation Security Context is null");
-              
-              populateSecurityContext(sc, invSC); 
+               populateSecurityContext(sc, invSC);
             }
             
             SecurityActions.setSecurityContext(sc);

Modified: projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/security/SecurityHelper.java
===================================================================
--- projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/security/SecurityHelper.java	2010-08-04 11:26:45 UTC (rev 107376)
+++ projects/ejb3/trunk/core/src/main/java/org/jboss/ejb3/security/SecurityHelper.java	2010-08-04 11:28:04 UTC (rev 107377)
@@ -21,20 +21,15 @@
   */
 package org.jboss.ejb3.security;
 
-import java.lang.reflect.Method;
+import org.jboss.ejb3.Container;
+import org.jboss.ejb3.EJBContainer;
+import org.jboss.ejb3.mdb.MessagingContainer;
 
 import javax.ejb.TimedObject;
 import javax.ejb.Timeout;
 import javax.ejb.Timer;
+import java.lang.reflect.Method;
 
-import org.jboss.aop.joinpoint.MethodInvocation;
-import org.jboss.ejb3.Container;
-import org.jboss.ejb3.EJBContainer;
-import org.jboss.ejb3.mdb.MessagingContainer;
-import org.jboss.ejb3.remoting.IsLocalInterceptor;
-import org.jboss.remoting.InvokerLocator; 
-import org.jboss.aspects.remoting.InvokeRemoteInterceptor;
-
 //$Id$
 
 /**
@@ -46,18 +41,6 @@
 public class SecurityHelper
 {
    /**
-    * Check whether an invocation is local or remote
-    * @param mi method invocation
-    * @return true - local call
-    */
-   public boolean isLocalCall(MethodInvocation mi)
-   { 
-      InvokerLocator locator = (InvokerLocator) mi.getMetaData(InvokeRemoteInterceptor.REMOTING, InvokeRemoteInterceptor.INVOKER_LOCATOR);
-      return locator == null ||
-          mi.getMetaData(IsLocalInterceptor.IS_LOCAL,IsLocalInterceptor.IS_LOCAL) != null;
-   }
-   
-   /**
     * Check if the method is an EJBTimeOut method
     * @param m method
     * @return true if it is a ejb timeout callback



More information about the jboss-cvs-commits mailing list