Update of 
/var/cvs/contributions/CMSContainer_Modules/community/src/java/com/finalist/cmsc/services/community/security
In directory 
james.mmbase.org:/tmp/cvs-serv32203/community/src/java/com/finalist/cmsc/services/community/security

Modified Files:
      Tag: b1_4
        AuthenticationService.java AuthenticationHibernateService.java 
Log Message:
CMSC-617 Personal Pages module
Backport to 1.4


See also: 
http://cvs.mmbase.org/viewcvs/contributions/CMSContainer_Modules/community/src/java/com/finalist/cmsc/services/community/security
See also: http://www.mmbase.org/jira/browse/CMSC-617


Index: AuthenticationService.java
===================================================================
RCS file: 
/var/cvs/contributions/CMSContainer_Modules/community/src/java/com/finalist/cmsc/services/community/security/AuthenticationService.java,v
retrieving revision 1.3
retrieving revision 1.3.2.1
diff -u -b -r1.3 -r1.3.2.1
--- AuthenticationService.java  30 Jan 2008 10:00:42 -0000      1.3
+++ AuthenticationService.java  25 Feb 2008 16:26:16 -0000      1.3.2.1
@@ -107,10 +107,16 @@
     Authentication findAuthentication(String userId);
 
     /**
-     * Finds an authentication object for this userId
+     * Finds all authentications
      * 
-     * @param userId
-     * @return authentication
+     * @param authority
+     * @return list authentications
+     */
+    List<Authentication> findAuthenticationsForAuthority(String name);
+
+    /**
+     * Finds all authentications
+     * @return list authentications
      */
     List<Authentication> findAuthentications();
     


Index: AuthenticationHibernateService.java
===================================================================
RCS file: 
/var/cvs/contributions/CMSContainer_Modules/community/src/java/com/finalist/cmsc/services/community/security/AuthenticationHibernateService.java,v
retrieving revision 1.3
retrieving revision 1.3.2.1
diff -u -b -r1.3 -r1.3.2.1
--- AuthenticationHibernateService.java 30 Jan 2008 10:00:42 -0000      1.3
+++ AuthenticationHibernateService.java 25 Feb 2008 16:26:17 -0000      1.3.2.1
@@ -9,15 +9,14 @@
  */
 package com.finalist.cmsc.services.community.security;
 
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.beans.factory.annotation.Required;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
 
 import org.hibernate.Criteria;
 import org.hibernate.criterion.Restrictions;
-import org.acegisecurity.providers.encoding.MessageDigestPasswordEncoder;
-import org.acegisecurity.providers.encoding.Md5PasswordEncoder;
-
-import java.util.List;
+import org.springframework.beans.factory.annotation.Required;
+import org.springframework.transaction.annotation.Transactional;
 
 import com.finalist.cmsc.services.HibernateService;
 
@@ -89,7 +88,7 @@
        @Transactional(readOnly = true)
        public boolean authenticate(String userId, String password) {
                Authentication authentication = 
findAuthenticationByUserId(userId);
-               return authentication.getPassword().equals(password);
+               return 
authentication.getPassword().equals(encodePassword(password, userId));
        }
 
        /** [EMAIL PROTECTED] */
@@ -135,19 +134,41 @@
        }
 
        private String encodePassword(String password, String salt) {
-               MessageDigestPasswordEncoder encoder = new Md5PasswordEncoder();
-               return encoder.encodePassword(password, salt);
-       }
-
-       @Required
-       public void setAuthorityService(AuthorityService authorityService) {
-               this.authorityService = authorityService;
+               // MessageDigestPasswordEncoder encoder = new 
Md5PasswordEncoder();
+               // // TODO Add salt to password encoder??
+               // // return encoder.encodePassword(password, salt);
+               // return encoder.encodePassword(password, null);
+               return password;
        }
 
+       /** [EMAIL PROTECTED] */
        @Transactional(readOnly = true)
        public List<Authentication> findAuthentications() {
                Criteria criteria = 
getSession().createCriteria(Authentication.class);
+               return findAuthenticationListByCriteria(criteria);
+       }
+
+       /** [EMAIL PROTECTED] */
+       @Transactional(readOnly = true)
+       public List<Authentication> findAuthenticationsForAuthority(String 
name) {
+               Criteria criteria = 
getSession().createCriteria(Authentication.class).createCriteria("authorities").add(
+                               Restrictions.eq("name", name));
+               return findAuthenticationListByCriteria(criteria);
+       }
+
+       @SuppressWarnings("unchecked")
+       private List<Authentication> findAuthenticationListByCriteria(Criteria 
criteria) {
+               List<Authentication> result = new ArrayList<Authentication>();
                List authenticationList = criteria.list();
-               return authenticationList;
+               for (Iterator iter = authenticationList.iterator(); 
iter.hasNext();) {
+                       Authentication authentication = (Authentication) 
iter.next();
+                       result.add(authentication);
+               }
+               return result;
+       }
+
+       @Required
+       public void setAuthorityService(AuthorityService authorityService) {
+               this.authorityService = authorityService;
        }
 }
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to