Authentification de l’utilisateur

Nous avons vu dans l’article précédent comment se configuré le bean ‘security’. Nous allons maintenant voir comment il est utilisé par le ‘SessionController’ lors de l’authentification de l’utilisateur.

Nous avons déjà vu dans un des posts précédents intitulé « Gestion des rôles avec on-load et CAS » que le composant jsf ‘on-load’ sécurisait la page d’accueil de l’application en redirigeant automatiquement vers la méthode ‘accueil()’ du ‘SessionController’. Celle-ci à pour mission d’identifier l’utilisateur et de le rediriger vers la bonne page d’accueil (dans stylesheets/ens ou stylesheets/etu) ou vers une page d’erreur en cas de problème. Voici le fonctionnement de la méthode ‘accueil()’ :

/**
* @return la page d’accueil selon le type de l’utilisateur
*/

public String accueil(){
typeUser();
if(typeuser.equals(« etudiant »)){
return « navigationIndexEtu »;
} else if(typeuser.equals(« enseignant »)){
return « navigationIndexEns »;
}else if (typeuser.equals(« non-autorise »)){
return « error »;
}else{
return « error-connexion »;
}
}

‘accueil()’ utilise la méthode typeUser(), qui se sert de la méthode ‘getTypeUser’ du bean ‘security’ :

/**

* Détermine le type de l’utilisateur
*/
public void typeUser(){
typeuser= » »;
User user=getCurrentUser();
if(user==null){
//utitisateur non loggué
typeuser= »nonloggue »;
}else{
setIduser(user.getId());
typeuser=security.getTypeUser(getIduser());
if(typeuser.equals(« etudiant »)){
CodeIndDossier=service.getCodInd(getIduser());
//génération du ticket pour sa photo
photo.init(CodeIndDossier);
}
if(typeuser.equals(« enseignant »)){
//génération du ticket pour toutes les photos
photo.init();
}}
}


Laisser un commentaire