You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by db...@apache.org on 2007/03/26 02:06:33 UTC

svn commit: r522384 - in /incubator/openejb/trunk/openejb3/container/openejb-core/src: main/java/org/apache/openejb/config/ main/java/org/apache/openejb/core/ main/java/org/apache/openejb/core/security/ test/java/org/apache/openejb/core/security/

Author: dblevins
Date: Sun Mar 25 17:06:31 2007
New Revision: 522384

URL: http://svn.apache.org/viewvc?view=rev&rev=522384
Log:
RunAs support

Modified:
    incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
    incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/CoreDeploymentInfo.java
    incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/security/SecurityServiceImpl.java
    incubator/openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/security/SecurityTest.java

Modified: incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java?view=diff&rev=522384&r1=522383&r2=522384
==============================================================================
--- incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java (original)
+++ incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/config/AnnotationDeployer.java Sun Mar 25 17:06:31 2007
@@ -390,6 +390,7 @@
                 if (runAs != null && bean.getSecurityIdentity() == null) {
                     SecurityIdentity securityIdentity = new SecurityIdentity();
                     securityIdentity.setRunAs(runAs.value());
+                    bean.setSecurityIdentity(securityIdentity);
                 }
 
                 DeclareRoles declareRoles = clazz.getAnnotation(DeclareRoles.class);

Modified: incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/CoreDeploymentInfo.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/CoreDeploymentInfo.java?view=diff&rev=522384&r1=522383&r2=522384
==============================================================================
--- incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/CoreDeploymentInfo.java (original)
+++ incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/CoreDeploymentInfo.java Sun Mar 25 17:06:31 2007
@@ -984,4 +984,8 @@
     public void setRunAs(String runAs) {
         this.runAs = runAs;
     }
+
+    public String toString() {
+        return "DeploymentInfo(id="+getDeploymentID()+")";
+    }
 }

Modified: incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/security/SecurityServiceImpl.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/security/SecurityServiceImpl.java?view=diff&rev=522384&r1=522383&r2=522384
==============================================================================
--- incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/security/SecurityServiceImpl.java (original)
+++ incubator/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/core/security/SecurityServiceImpl.java Sun Mar 25 17:06:31 2007
@@ -75,7 +75,7 @@
 
         ThreadContext.addThreadContextListener(this);
 
-        defaultSubject = getSubject(defaultUser);
+        defaultSubject = createSubject(defaultUser);
         defaultContext = new SecurityContext(defaultSubject);
     }
 
@@ -132,7 +132,7 @@
         }
     }
 
-    private Subject getSubject(String name) {
+    private Subject createSubject(String name) {
         SecurityServiceImpl.User user = new SecurityServiceImpl.User(name);
         SecurityServiceImpl.Group group = new SecurityServiceImpl.Group(name);
         group.addMember(user);
@@ -197,7 +197,7 @@
      * @return the role converted to a subject
      */
     private Subject resolve(String runAsRole) {
-        return getSubject(runAsRole);
+        return createSubject(runAsRole);
     }
 
 

Modified: incubator/openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/security/SecurityTest.java
URL: http://svn.apache.org/viewvc/incubator/openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/security/SecurityTest.java?view=diff&rev=522384&r1=522383&r2=522384
==============================================================================
--- incubator/openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/security/SecurityTest.java (original)
+++ incubator/openejb/trunk/openejb3/container/openejb-core/src/test/java/org/apache/openejb/core/security/SecurityTest.java Sun Mar 25 17:06:31 2007
@@ -72,6 +72,7 @@
         EjbJar ejbJar = new EjbJar("SecurityTest");
 
         ejbJar.addEnterpriseBean(new StatelessBean(FooBean.class));
+        ejbJar.addEnterpriseBean(new StatelessBean(BarBean.class));
 
         EjbJarInfo ejbJarInfo = config.configureApplication(ejbJar);
 
@@ -89,6 +90,24 @@
         foo.svnCheckout("");
 
         foo.svnCommit("");
+
+        try {
+            foo.deleteProject("");
+            fail("Should not be allowed");
+        } catch (Exception e) {
+            // good.
+        }
+
+        foo = (Foo) ctx.lookup("BarBeanBusinessLocal");
+
+        foo.svnCheckout("");
+
+        try {
+            foo.svnCommit("");
+            fail("Should not be allowed");
+        } catch (Exception e) {
+            // good
+        }
 
         try {
             foo.deleteProject("");