[jboss-cvs] JBossAS SVN: r62896 - projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/authorization/modules/ejb.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue May 8 17:11:01 EDT 2007


Author: anil.saldhana at jboss.com
Date: 2007-05-08 17:11:01 -0400 (Tue, 08 May 2007)
New Revision: 62896

Modified:
   projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/authorization/modules/ejb/EJBJACCPolicyModuleDelegate.java
   projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/authorization/modules/ejb/EJBPolicyModuleDelegate.java
Log:
PolicyRegistration has no relationship with the AuthorizationManager interface

Modified: projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/authorization/modules/ejb/EJBJACCPolicyModuleDelegate.java
===================================================================
--- projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/authorization/modules/ejb/EJBJACCPolicyModuleDelegate.java	2007-05-08 21:10:34 UTC (rev 62895)
+++ projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/authorization/modules/ejb/EJBJACCPolicyModuleDelegate.java	2007-05-08 21:11:01 UTC (rev 62896)
@@ -86,9 +86,11 @@
     
       if(map.size() == 0)
          throw new IllegalStateException("Map from the Resource is size zero"); 
-      PolicyRegistration pr = (PolicyRegistration)map.get("authorizationManager");
-      if(pr != null)
-        this.authzManager = pr;
+      AuthorizationManager am = (AuthorizationManager) map.get("authorizationManager");
+      if(am == null)
+         throw new IllegalStateException("Authorization Manager is null");
+      if(am instanceof PolicyRegistration)
+         this.policyRegistration = (PolicyRegistration) am; 
       //Populate local variables from the resource
       this.callerSubject = (Subject)map.get(ResourceKeys.CALLER_SUBJECT);
       this.ejbCS = (CodeSource)map.get(ResourceKeys.EJB_CODESOURCE);
@@ -96,8 +98,7 @@
       this.ejbName = (String)map.get(ResourceKeys.EJB_NAME); 
       this.methodInterface = (String)map.get(ResourceKeys.EJB_METHODINTERFACE);
       this.roleName = (String)map.get(ResourceKeys.ROLENAME);
-      //Get the Security Context Roles
-      AuthorizationManager am = (AuthorizationManager)map.get(ResourceKeys.AUTHORIZATION_MANAGER);
+      //Get the Security Context Roles 
       if(am != null)
       {
          Principal ejbPrincipal = (Principal)map.get(ResourceKeys.EJB_PRINCIPAL);
@@ -116,7 +117,7 @@
     */
    public void setPolicyRegistrationManager(PolicyRegistration authzM)
    {  
-      this.authzManager =  authzM;
+      this.policyRegistration =  authzM;
    }
    
    //Private Methods
@@ -156,14 +157,7 @@
    
    private Principal[] getPrincipalSet()
    {
-      Principal[] principals = null;
-      /*if( callerSubject != null )
-      {
-         // Get the caller principals
-         Set principalsSet = callerSubject.getPrincipals(); 
-         principals = new Principal[principalsSet.size()];
-         principalsSet.toArray(principals);      
-      }*/
+      Principal[] principals = null; 
       /**
        * Previously, we relied on the principals in the Subject that contained
        * the roles. Now we just rely on the roles from the Security Context

Modified: projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/authorization/modules/ejb/EJBPolicyModuleDelegate.java
===================================================================
--- projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/authorization/modules/ejb/EJBPolicyModuleDelegate.java	2007-05-08 21:10:34 UTC (rev 62895)
+++ projects/security/security-jboss-sx/trunk/src/main/org/jboss/security/authorization/modules/ejb/EJBPolicyModuleDelegate.java	2007-05-08 21:11:01 UTC (rev 62896)
@@ -79,10 +79,12 @@
          throw new IllegalStateException("Map from the Resource is null");
     
       if(map.size() == 0)
-         throw new IllegalStateException("Map from the Resource is size zero"); 
-      PolicyRegistration pr = (PolicyRegistration)map.get("authorizationManager");
-      if(pr != null)
-        this.authzManager = pr;
+         throw new IllegalStateException("Map from the Resource is size zero");
+      AuthorizationManager am = (AuthorizationManager) map.get("authorizationManager");
+      if(am == null)
+         throw new IllegalStateException("Authorization Manager is null");
+      if(am instanceof PolicyRegistration)
+         this.policyRegistration = (PolicyRegistration) am; 
       //Populate local variables from the resource 
       this.ejbMethod = (Method)map.get(ResourceKeys.EJB_METHOD); 
       this.ejbName = (String)map.get(ResourceKeys.EJB_NAME); 
@@ -105,9 +107,9 @@
     */
    public void setPolicyRegistrationManager(PolicyRegistration authzM)
    {  
-      this.authzManager =  authzM;
-      if(this.authzManager instanceof AuthorizationManager == false)
-         throw new IllegalStateException(authzManager + 
+      this.policyRegistration =  authzM;
+      if(this.policyRegistration instanceof AuthorizationManager == false)
+         throw new IllegalStateException(authzM + 
                  " is not an instanceof AuthorizationManager"); 
    }
    
@@ -144,7 +146,7 @@
          // The caller is using a the caller identity
          if (callerRunAsIdentity == null)
          { 
-            AuthorizationManager am = (AuthorizationManager)authzManager;
+            AuthorizationManager am = (AuthorizationManager)policyRegistration;
             
             // Now actually check if the current caller has one of the required method roles
             if (am.doesUserHaveRole(ejbPrincipal, methodRoles) == false)
@@ -184,7 +186,7 @@
    
    private int checkRoleRef()
    {
-      AuthorizationManager am = (AuthorizationManager)authzManager;
+      AuthorizationManager am = (AuthorizationManager)policyRegistration;
       //Check the caller of this beans run-as identity 
       if (ejbPrincipal == null && callerRunAsIdentity == null)
       {




More information about the jboss-cvs-commits mailing list