[jboss-cvs] JBossAS SVN: r67358 - in projects/security/security-spi/trunk: authorization/src/main/org/jboss/security and 2 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed Nov 21 15:34:10 EST 2007


Author: anil.saldhana at jboss.com
Date: 2007-11-21 15:34:10 -0500 (Wed, 21 Nov 2007)
New Revision: 67358

Added:
   projects/security/security-spi/trunk/authorization/src/main/org/jboss/security/authorization/EntitlementHolder.java
Modified:
   projects/security/security-spi/trunk/authorization/pom.xml
   projects/security/security-spi/trunk/authorization/src/main/org/jboss/security/AuthorizationManager.java
   projects/security/security-spi/trunk/spi/src/tests/org/jboss/test/security/factories/SomeAuthorizationManager.java
Log:
SECURITY-87: AuthzMgr interface gets the acl semantics

Modified: projects/security/security-spi/trunk/authorization/pom.xml
===================================================================
--- projects/security/security-spi/trunk/authorization/pom.xml	2007-11-21 20:22:40 UTC (rev 67357)
+++ projects/security/security-spi/trunk/authorization/pom.xml	2007-11-21 20:34:10 UTC (rev 67358)
@@ -42,6 +42,19 @@
         </resource>
        </resources>
    </build>
+   <dependencies>
+     <dependency>
+        <groupId>org.jboss.security</groupId>
+        <artifactId>identity-spi</artifactId>
+        <version>2.0.2-SNAPSHOT</version>
+     </dependency>
+     <dependency>
+        <groupId>junit</groupId>
+        <artifactId>junit</artifactId>
+        <version>3.8.1</version>
+        <scope>compile</scope>
+     </dependency>
+  </dependencies>
    <reporting>
     <plugins>
      <plugin>

Modified: projects/security/security-spi/trunk/authorization/src/main/org/jboss/security/AuthorizationManager.java
===================================================================
--- projects/security/security-spi/trunk/authorization/src/main/org/jboss/security/AuthorizationManager.java	2007-11-21 20:22:40 UTC (rev 67357)
+++ projects/security/security-spi/trunk/authorization/src/main/org/jboss/security/AuthorizationManager.java	2007-11-21 20:34:10 UTC (rev 67358)
@@ -27,7 +27,9 @@
 import java.util.Set;
 
 import org.jboss.security.authorization.AuthorizationException;
+import org.jboss.security.authorization.EntitlementHolder;
 import org.jboss.security.authorization.Resource;
+import org.jboss.security.identity.Identity;
 
 //$Id$
 
@@ -49,6 +51,17 @@
     * @throws AuthorizationException
     */
    public int authorize(final Resource resource) throws AuthorizationException; 
+   
+   /**
+    * Instance Based Security
+    * Get all the entitlements assigned to the components of a Resource
+    * @param resource A Resource (Can be a Portal Resource, a Rules Resource)
+    * @param identity The Identity against whom the entitlements need to be generated
+    * @return a Entitlements Wrapper
+    * @throws AuthorizationException
+    */
+   public EntitlementHolder<?> entitlements(final Resource resource,
+         final Identity identity) throws AuthorizationException;
   
    
    /** Validates the application domain roles to which the operational

Added: projects/security/security-spi/trunk/authorization/src/main/org/jboss/security/authorization/EntitlementHolder.java
===================================================================
--- projects/security/security-spi/trunk/authorization/src/main/org/jboss/security/authorization/EntitlementHolder.java	                        (rev 0)
+++ projects/security/security-spi/trunk/authorization/src/main/org/jboss/security/authorization/EntitlementHolder.java	2007-11-21 20:34:10 UTC (rev 67358)
@@ -0,0 +1,44 @@
+/*
+  * JBoss, Home of Professional Open Source
+  * Copyright 2007, JBoss Inc., and individual contributors as indicated
+  * by the @authors tag. See the copyright.txt in the distribution for a
+  * full listing of individual contributors.
+  *
+  * This is free software; you can redistribute it and/or modify it
+  * under the terms of the GNU Lesser General Public License as
+  * published by the Free Software Foundation; either version 2.1 of
+  * the License, or (at your option) any later version.
+  *
+  * This software is distributed in the hope that it will be useful,
+  * but WITHOUT ANY WARRANTY; without even the implied warranty of
+  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  * Lesser General Public License for more details.
+  *
+  * You should have received a copy of the GNU Lesser General Public
+  * License along with this software; if not, write to the Free
+  * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+  */
+package org.jboss.security.authorization;
+
+import java.util.List;
+
+//$Id$
+
+/**
+ *  Interface representing holder of objects
+ *  that are entitled as part of an authorization
+ *  process in instance based security
+ *  @author Anil.Saldhana at redhat.com
+ *  @since  Nov 21, 2007 
+ *  @version $Revision$
+ */
+public interface EntitlementHolder<T>
+{
+   /**
+    * Get a list of objects from the Authorization Resource
+    * that are entitled
+    * @return
+    */
+   List<T> getEntitled();
+}
\ No newline at end of file

Modified: projects/security/security-spi/trunk/spi/src/tests/org/jboss/test/security/factories/SomeAuthorizationManager.java
===================================================================
--- projects/security/security-spi/trunk/spi/src/tests/org/jboss/test/security/factories/SomeAuthorizationManager.java	2007-11-21 20:22:40 UTC (rev 67357)
+++ projects/security/security-spi/trunk/spi/src/tests/org/jboss/test/security/factories/SomeAuthorizationManager.java	2007-11-21 20:34:10 UTC (rev 67358)
@@ -28,7 +28,9 @@
 
 import org.jboss.security.AuthorizationManager;
 import org.jboss.security.authorization.AuthorizationException;
+import org.jboss.security.authorization.EntitlementHolder;
 import org.jboss.security.authorization.Resource;
+import org.jboss.security.identity.Identity;
 
 //$Id$
 
@@ -49,23 +51,29 @@
       return 0;
    }
 
-   public boolean doesUserHaveRole(Principal principal, Set roles)
+   public Set<Principal> getUserRoles(Principal principal)
    {
-      return false;
+      return null;
    }
 
-   public Group getTargetRoles(Principal targetPrincipal, Map contextMap)
+   public String getSecurityDomain()
    {
       return null;
    }
 
-   public Set getUserRoles(Principal principal)
-   {
+   public boolean doesUserHaveRole(Principal principal, Set<Principal> roles)
+   { 
+      return false;
+   }
+
+   public EntitlementHolder<?> entitlements(Resource resource,
+         Identity identity) throws AuthorizationException
+   { 
       return null;
    }
 
-   public String getSecurityDomain()
-   {
+   public Group getTargetRoles(Principal targetPrincipal, Map<String, Object> contextMap)
+   { 
       return null;
    } 
 }
\ No newline at end of file




More information about the jboss-cvs-commits mailing list