2011-03-04 4 views
0

J'utilise la sécurité de printemps et je me demande comment changer le formulaire de connexion par défaut.spring security 3 - Configurer un login personnalisé

J'ai mis en place la configuration suivante:

<http auto-config="true" use-expressions="false"> 
    <form-login login-processing-url="/static/j_spring_security_check" 
     login-page="/login" 
     authentication-failure-url="/login?login_error=t"/>   

    <intercept-url pattern="/**" 
        access="ROLE_ADMIN" /> 
</http> 

Dans le contrôleur, je donne les résultats suivants:

@Controller 
@RequestMapping("login") 
public class Logincontroller { 
/** 
* the logger used for print useful information 
*/ 
protected final Log logger = LogFactory.getLog(getClass()); 

@RequestMapping(value="",method=RequestMethod.GET) 
public String showLoginView(Map<String, Object> model) { 
    return WebappConstants.HOME_VIEW; 
} 

}

Cependant, lorsque je clique sur une URL dans le navigateur, il dit La page ne redirige pas correctement (Firefox). J'ai vérifié firebug et ai allumé le débogueur afin de vérifier effectivement que ce code n'appelle pas à mon contrôleur.

Est-ce que je fais quelque chose de mal?

Répondre

5

Vous avez refusé l'accès à la page de connexion elle-même, vous devez ajouter une règle pour lui permettre:

<intercept-url pattern="/login" access="IS_AUTHENTICATED_ANONYMOUSLY"/> 
<intercept-url pattern="/**" access="ROLE_ADMIN" /> 
+0

Merci maintenant ça marche! – tsunade21

+0

+1 Pour enregistrer un autre jour – Bitmap

+0

où devrait-il être ajouté exactement? – efirat

Questions connexes