[jboss-cvs] JBossAS SVN: r86667 - projects/security/security-jboss-sx/trunk/jbosssx/src/main/java/org/jboss/security.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Apr 2 08:25:43 EDT 2009
Author: mmoyses
Date: 2009-04-02 08:25:43 -0400 (Thu, 02 Apr 2009)
New Revision: 86667
Modified:
projects/security/security-jboss-sx/trunk/jbosssx/src/main/java/org/jboss/security/SimpleGroup.java
Log:
SECURITY-404: modifying SimpleGoups.isMember to check for for SimplePrincipals in case of EJB authorization
Modified: projects/security/security-jboss-sx/trunk/jbosssx/src/main/java/org/jboss/security/SimpleGroup.java
===================================================================
--- projects/security/security-jboss-sx/trunk/jbosssx/src/main/java/org/jboss/security/SimpleGroup.java 2009-04-02 12:24:07 UTC (rev 86666)
+++ projects/security/security-jboss-sx/trunk/jbosssx/src/main/java/org/jboss/security/SimpleGroup.java 2009-04-02 12:25:43 UTC (rev 86667)
@@ -21,7 +21,9 @@
*/
package org.jboss.security;
+import java.security.AccessController;
import java.security.Principal;
+import java.security.PrivilegedAction;
import java.security.acl.Group;
import java.util.Collection;
import java.util.Collections;
@@ -44,6 +46,8 @@
private static final long serialVersionUID = 6051859639378507247L;
private HashMap members;
+
+ private static final String OVERRIDE_EQUALS_BEHAVIOR = "org.jboss.security.simpleprincipal.equals.override";
public SimpleGroup(String groupName)
{
@@ -101,6 +105,26 @@
}
}
}
+ if ("true".equals(AccessController.doPrivileged(new PrivilegedAction()
+ {
+ public Object run()
+ {
+ return System.getProperty(OVERRIDE_EQUALS_BEHAVIOR, "false");
+ }
+ })))
+ {
+ if (isMember == false)
+ {
+ for (Iterator iterator = members.keySet().iterator(); iterator.hasNext();)
+ {
+ Principal p = (Principal) iterator.next();
+ if (member instanceof SimplePrincipal)
+ isMember = p.getName() == null ? member.getName() == null : p.getName().equals(member.getName());
+ if (isMember)
+ break;
+ }
+ }
+ }
return isMember;
}
More information about the jboss-cvs-commits
mailing list