r1036 - trunk/topia-service/src/java/org/codelutin/topia/taas/jaas
Author: ruchaud Date: 2008-08-08 16:28:30 +0000 (Fri, 08 Aug 2008) New Revision: 1036 Modified: trunk/topia-service/src/java/org/codelutin/topia/taas/jaas/TaasLoginModule.java Log: Ajout de l'utilisateur dans le private credential Modified: trunk/topia-service/src/java/org/codelutin/topia/taas/jaas/TaasLoginModule.java =================================================================== --- trunk/topia-service/src/java/org/codelutin/topia/taas/jaas/TaasLoginModule.java 2008-08-07 13:32:06 UTC (rev 1035) +++ trunk/topia-service/src/java/org/codelutin/topia/taas/jaas/TaasLoginModule.java 2008-08-08 16:28:30 UTC (rev 1036) @@ -69,6 +69,7 @@ protected Subject subject; protected CallbackHandler callbackHandler; protected Set<TaasPrincipalWrapper> principals; + protected TaasUser privateCredential; protected TaasService taasService; /* (non-Javadoc) @@ -83,6 +84,7 @@ this.subject = subject; this.callbackHandler = callbackHandler; this.principals = null; + this.privateCredential = null; this.taasService = (TaasService)options.get(TaasService.SERVICE_NAME); } @@ -134,6 +136,8 @@ TaasUser user = userDAO.findByLogin(login); if(user != null && user.getPassword().equals(hashed) && user.getEnabled()) { + privateCredential = user; + // Update connection information user.setLastConnectionDate(new Date()); int numberOfConnection = user.getNumberOfConnection(); @@ -141,16 +145,16 @@ user.update(); // Récupération des principals - principals = new HashSet<TaasPrincipalWrapper>(); + principals = new HashSet<TaasPrincipalWrapper>(); Collection<TaasPrincipal> taasPrincipals = user.getPrincipals(); for (TaasPrincipal taasPrincipal : taasPrincipals) { - principals.add(new TaasPrincipalWrapper(taasPrincipal)); + principals.add(new TaasPrincipalWrapper(taasPrincipal)); } - } else { // Echec d'authentification principals = null; + privateCredential = null; throw new LoginException("Erreur lors de l'authentification " + login); } @@ -173,6 +177,7 @@ */ public boolean commit() throws LoginException { subject.getPrincipals().addAll(principals); + subject.getPrivateCredentials().add(privateCredential); return true; }
participants (1)
-
ruchaud@users.labs.libre-entreprise.org