Toujours dans mon bundle de sécurité...

Je voudrais que lorsqu'une erreur d'authentification est déclenchée,
je sois rerouté vers une page de "logout" et pas vers la page de login.

Je pensais qu'en changeant le securite.yml comme ceci, cela fonctionnerait :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
security:
    firewalls:
        logout:
            pattern:  ^/logout$
            security: false
 
        secured_area:
            pattern: ^/
            user_provider_service: true
            form_login:
                login_path: /login
                check_path: /login_check
                failure_path: /logout
avec, évidemment, la route qui convient définie dans le routing.yml

Pour faire planter l'authentification je lance une exception

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
class AuthProvider implements AuthenticationProviderInterface
{
//...
    public function authenticate(TokenInterface $token)
    {
        throw new BadCredentialsException('Bad credentials :)');
    }
//...
Mais je suis renvoyé sur ma page de login.

Le code complet est ici : (à la petite modification ci-dessus près)

bundle-dauthentification-solution-complete

Merci pour vos suggestions...