Update of /var/cvs/src/org/mmbase/security/implementation/basic
In directory james.mmbase.org:/tmp/cvs-serv15579/implementation/basic

Modified Files:
        ClassLoginModule.java 
Log Message:
  MMB-1728


See also: 
http://cvs.mmbase.org/viewcvs/src/org/mmbase/security/implementation/basic
See also: http://www.mmbase.org/jira/browse/MMB-1728


Index: ClassLoginModule.java
===================================================================
RCS file: 
/var/cvs/src/org/mmbase/security/implementation/basic/ClassLoginModule.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -b -r1.8 -r1.9
--- ClassLoginModule.java       23 Sep 2008 16:29:07 -0000      1.8
+++ ClassLoginModule.java       1 Oct 2008 16:57:34 -0000       1.9
@@ -18,7 +18,7 @@
  * Support for authentication method 'class' for 'basic' authentication.
  *
  * @author  Michiel Meeuwissen
- * @version $Id: ClassLoginModule.java,v 1.8 2008/09/23 16:29:07 michiel Exp $
+ * @version $Id: ClassLoginModule.java,v 1.9 2008/10/01 16:57:34 michiel Exp $
  * @since   MMBase-1.8
  */
 public class ClassLoginModule implements LoginModule {
@@ -34,13 +34,16 @@
     }
 
     public boolean login(NameContext user, Map<String, ?> loginInfo,  Object[] 
parameters) {
-        org.mmbase.security.classsecurity.ClassAuthentication.Login li = 
org.mmbase.security.classsecurity.ClassAuthentication.classCheck("class");
+        org.mmbase.security.classsecurity.ClassAuthentication.Login li = 
org.mmbase.security.classsecurity.ClassAuthentication.classCheck("class", 
loginInfo);
         if (li == null) {
             throw new SecurityException("Class authentication failed (class 
not authorized)");
         }
-        String userName = li.getMap().get("username");
+        String userName = li.getMap().get("username"); // specified
+        if (userName == null) userName = (String) loginInfo.get("username");
 
-        String r = ranks.get(userName);
+        String r = li.getMap().get("rank");
+        if (r == null) r = (String) loginInfo.get("rank");
+        if (r == null) r = ranks.get(userName);
         Rank rank = r == null ? Rank.BASICUSER : Rank.getRank(r);
         user.setIdentifier(userName);
         user.setRank(rank);
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to