Tec&Cult
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Tec&Cult

Technologie et Culture
 
AccueilAccueil  PortailPortail  GalerieGalerie  Dernières imagesDernières images  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Derniers sujets
» Que faire à Paris le week-end du 15 août ?
Astuce Acegi  EmptyJeu 11 Aoû - 11:20 par Admin

» T-shirt Mec de Paname
Astuce Acegi  EmptyMer 3 Aoû - 17:04 par Admin

» dating web site uk dating free parent single
Astuce Acegi  EmptyMer 3 Aoû - 10:56 par Invité

» rsvp dating website seeking bisexual
Astuce Acegi  EmptyLun 1 Aoû - 2:08 par Invité

» dating french woman gay bottom seeking tops
Astuce Acegi  EmptyDim 31 Juil - 21:59 par Invité

» dating philippine woman man seeking wealthy woman
Astuce Acegi  EmptyVen 29 Juil - 12:51 par Invité

» dating lesbian n r cacee cobb dating lachey nick
Astuce Acegi  EmptyVen 29 Juil - 3:17 par Invité

» single dating chat room relationship dating advice
Astuce Acegi  EmptyJeu 28 Juil - 0:21 par Invité

» скачать порно тетя скачать порнофото семейное
Astuce Acegi  EmptyJeu 21 Juil - 14:34 par Invité

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Forum
Partenaires
Forum gratuit


Tchat Blablaland
Le Deal du moment :
Réassort du coffret Pokémon 151 ...
Voir le deal

Partagez | 
 

 Astuce Acegi

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Admin
Admin


Messages : 156
Date d'inscription : 20/05/2010

Astuce Acegi  _
MessageSujet: Astuce Acegi    Astuce Acegi  EmptySam 6 Nov - 12:51

http://toptech.geekaddict.net/
Acegi Security est un framework qui peut s'utiliser conjointement avec Spring pour fournir des fonctionnalités d'authentification et d'autorisation dans des applications Java ou J2EE.
Par défaut, Acegi utilise un formulaire de connexion qui doit contenir un champ "login" et un champ "password" dont les valeurs sont transmises via des filtres se trouvant dans le framework. Il peut arriver que l'on souhaite récupérer d'autres informations du formulaire de connexion afin de les placer en session.
Supposons en effet que notre formulaire de connexion contienne une combobox alimentée par une liste de valeurs. Selon la valeur choisie par l'utilisateur, ce dernier doit être redirigé vers une page ou une autre. Lorsque l'utilisateur clique sur "Connexion", la valeur choisie est stockée dans un paramètre que l'on nommera "valeurChoisie".
Une façon simple de réaliser ce scénario est de créer une classe dérivée de la classe Acegi AuthenticationProcessingFilter:
public class AuthenticationProcessingFilterBlump extends AuthenticationProcessingFilter {
private final static Log log = LogFactory.getLog(AuthenticationProcessingFilterBlump.class);

@Override
protected String determineTargetUrl(HttpServletRequest request) {
String valeurChoisie = request.getParameter("valeurChoisie");
if (!StringUtils.isEmpty(projectId) && StringUtils.isNumeric(valeurChoisie)) {
Integer id = Integer.decode(projectId);
log.debug("Valeur choisie => " + id);
((HttpServletRequest) request).getSession().setAttribute(Constants.VALEUR_CHOISIE, id);
if (id > 0) {
return getDefaultTargetUrl(); // retourne l'url par défaut défini dans le fichier xml Acegi
} else if (id == 0) {
return "/administration/page_admin"; // une url particulière qui peut également être externalisée dans le fichier xml Acegi
}
}
return getDefaultTargetUrl();
}
}


C'est la méthode determineTargetUrl() qui indique à Acegi vers quelle url diriger l'utilisateur après une connexion réussie.
Il faut également modifier le fichier xml de configuration d'Acegi et remplacer AuthenticationProcessingFilter par notre nouvelle classe:
<bean id="authenticationProcessingFilter" class="com.fha.filter.AuthenticationProcessingFilterBlump">
<property name="authenticationManager" ref="authenticationManager"/>
<property name="authenticationFailureUrl" value="/login.jsp?error=true"/>
<property name="defaultTargetUrl" value="/"/>
<property name="filterProcessesUrl" value="/j_security_check"/>
<property name="rememberMeServices" ref="rememberMeServices"/>
</bean>


Il est bien entendu possible de définir d'autres propriétés dans notre nouvelle classe et de les initialiser via Spring par le fichier de configuration Acegi.
J'espère que cette astuce pourra aider à customiser le fonctionnement d'Acegi dans vos applications car ce n'est pas forcément évident du premier coup avec la quantité de classes utilisées par Acegi dans sa configuration.
Revenir en haut Aller en bas
http://toptech.geekaddict.net
 

Astuce Acegi

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Tec&Cult :: Informatique :: Java :: Spring-
Sauter vers: