User: starksm 
  Date: 01/11/11 00:10:48

  Modified:    catalina/src/main/org/jboss/web/catalina/security Tag:
                        Branch_2_4 JBossSecurityMgrRealm.java
  Log:
  Fixes for sourceforge bugs #471225 and #475302
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.2   +23 -11    
contrib/catalina/src/main/org/jboss/web/catalina/security/JBossSecurityMgrRealm.java
  
  Index: JBossSecurityMgrRealm.java
  ===================================================================
  RCS file: 
/cvsroot/jboss/contrib/catalina/src/main/org/jboss/web/catalina/security/JBossSecurityMgrRealm.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -r1.1.2.1 -r1.1.2.2
  --- JBossSecurityMgrRealm.java        2001/10/05 07:41:04     1.1.2.1
  +++ JBossSecurityMgrRealm.java        2001/11/11 08:10:48     1.1.2.2
  @@ -27,7 +27,8 @@
   import org.apache.catalina.ValveContext;
   import org.apache.catalina.realm.RealmBase;
   
  -import org.jboss.security.EJBSecurityManager;
  +import org.jboss.logging.log4j.TracePriority;
  +import org.jboss.security.AuthenticationManager;
   import org.jboss.security.RealmMapping;
   import org.jboss.security.SimplePrincipal;
   import org.jboss.security.SecurityAssociation;
  @@ -46,14 +47,14 @@
    removed when the request completes.
   
   @see org.jboss.web.AbstractWebContainer
  -@see org.jboss.security.EJBSecurityManager
  +@see org.jboss.security.AuthenticationManager
   @see org.jboss.security.RealmMapping
   @see org.jboss.security.SimplePrincipal
   @see org.jboss.security.SecurityAssociation
   @see org.jboss.security.SubjectSecurityManager
   
   @author [EMAIL PROTECTED]
  -@version $Revision: 1.1.2.1 $
  +@version $Revision: 1.1.2.2 $
   */
   public class JBossSecurityMgrRealm extends RealmBase implements Realm, Valve
   {
  @@ -62,7 +63,7 @@
       private boolean useJAAS = false;
   
       /** A flag to indicate if the security manager implements the 
SubjectSecurityManager
  -     rather than EJBSecurityManager. When true, the authenticated Subject is 
obtained
  +     rather than AuthenticationManager. When true, the authenticated Subject is 
obtained
        from the SubjectSecurityManager and placed into the request under the
        subjectAttributeName attribute.
        */
  @@ -113,7 +114,7 @@
           try
           {
               // Get the JBoss security manager from the ENC context
  -            EJBSecurityManager securityMgr = (EJBSecurityManager) 
securityCtx.lookup("securityMgr");
  +            AuthenticationManager securityMgr = (AuthenticationManager) 
securityCtx.lookup("securityMgr");
           }
           catch(NamingException e)
           {
  @@ -181,7 +182,7 @@
               if( useJAAS == true && securityCtx != null )
               {
                  // Get the JBoss security manager from the ENC context
  -               EJBSecurityManager securityMgr = (EJBSecurityManager) 
securityCtx.lookup("securityMgr");
  +               AuthenticationManager securityMgr = (AuthenticationManager) 
securityCtx.lookup("securityMgr");
                  if(  securityMgr instanceof SubjectSecurityManager )
                  {
                     SubjectSecurityManager subjectMgr = (SubjectSecurityManager) 
securityMgr;
  @@ -231,6 +232,9 @@
        */
       public Principal authenticate(String username, String credentials)
       {
  +       boolean trace = category.isEnabledFor(TracePriority.TRACE);
  +       if( trace )
  +          category.log(TracePriority.TRACE, "Begin authenticate, 
username="+username);
           SimplePrincipal principal = null;
           Context securityCtx = getSecurityContext();
           if( securityCtx == null )
  @@ -241,27 +245,30 @@
           try
           {
               // Get the JBoss security manager from the ENC context
  -            EJBSecurityManager securityMgr = (EJBSecurityManager) 
securityCtx.lookup("securityMgr");
  +            AuthenticationManager securityMgr = (AuthenticationManager) 
securityCtx.lookup("securityMgr");
               principal = new SimplePrincipal(username);
               char[] passwordChars = null;
               if( credentials != null )
                  passwordChars = credentials.toCharArray();
               if( securityMgr.isValid(principal, passwordChars) )
               {
  -                category.debug("User: "+username+" is authenticated");
  +                category.log(TracePriority.TRACE, "User: "+username+" is 
authenticated");
                   SecurityAssociation.setPrincipal(principal);
                   SecurityAssociation.setCredential(passwordChars);
               }
               else
               {
  -                category.debug("User: "+username+" is NOT authenticated");
                   principal = null;
  +                category.log(TracePriority.TRACE, "User: "+username+" is NOT 
authenticated");
               }
           }
           catch(NamingException e)
           {
  +            principal = null;
               category.error("Error during authenticate", e);
           }
  +       if( trace )
  +          category.log(TracePriority.TRACE, "End authenticate, 
principal="+principal);
           return principal;
       }
   
  @@ -288,6 +295,9 @@
        */
       public boolean hasRole(Principal principal, String role)
       {
  +       boolean trace = category.isEnabledFor(TracePriority.TRACE);
  +       if( trace )
  +          category.log(TracePriority.TRACE, "Begin hasRole, 
principal="+principal+", role="+role);
          boolean hasRole = false;
           try
           {
  @@ -307,19 +317,21 @@
   
               if( hasRole )
               {
  -                category.debug("User: "+principal+" is authorized");
  +                category.log(TracePriority.TRACE, "User: "+principal+" is 
authorized");
               }
               else
               {
                   RealmMapping securityMgr = (RealmMapping) 
securityCtx.lookup("realmMapping");
                   Set userRoles = securityMgr.getUserRoles(principal);
  -                category.debug("User: "+principal+" is NOT authorized, 
requiredRoles="+requiredRoles+", userRoles="+userRoles);
  +                category.log(TracePriority.TRACE, "User: "+principal+" is NOT 
authorized, requiredRoles="+requiredRoles+", userRoles="+userRoles);
               }
           }
           catch(NamingException e)
           {
               category.error("Error during authorize", e);
           }
  +       if( trace )
  +          category.log(TracePriority.TRACE, "End hasRole, principal="+principal+", 
role="+role+", hasRole="+hasRole);
          return hasRole;
       }
   
  
  
  

_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to