Bonjour à tous,

Comme dis le titre, je veux que dès que l'utilisateur se connecte, il ne puisse plus accéder aux pages ^/login et ^/registration$ (logique).

Dans mon fichier security.yml le IS_AUTHENTICATED_ANONYMOUSLY ne marche pas...

Security.yml

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# To get started with security, check out the documentation:
# https://symfony.com/doc/current/security.html
security:
    encoders:
        Symfony\Component\Security\Core\User\User:
            algorithm: bcrypt
            cost: 12
        JN\UserBundle\Entity\User:
            algorithm: bcrypt
            cost: 12
 
    # https://symfony.com/doc/current/security.html#b-configuring-how-users-are-loaded
    providers:
        main:
            entity:
                class: JN\UserBundle\Entity\User
                property: username
 
    firewalls:
        # disables authentication for assets and the profiler, adapt it according to your needs
        dev:
            pattern: ^/(_(profiler|wdt)|css|images|js)/
            security: false
 
        main_login_registration:
            pattern: ^/login$
            pattern: ^/registration$
            anonymous: true
 
        main:
            provider: main
            pattern: ^/
            anonymous: true
            # activate different ways to authenticate
 
            # https://symfony.com/doc/current/security.html#a-configuring-how-your-users-will-authenticate
            #http_basic: ~
 
            # https://symfony.com/doc/current/security/form_login_setup.html
            form_login:
                login_path: login
                check_path: login_check
            logout:
                path: logout
                target: login
 
    access_control:
        - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }

Je suis bien connecté mais je peux quand même accéder au formulaire de connexion mais par contre quand je suis sur la page du formulaire de connexion je suis identifié comme anonyme alors que je suis connecté...

J'ai bien sûr aussi essayé depuis le controller SecurityController :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
// Si l'utilisateur est déjà connecté on le redirige vers la page d'accueil.
if ($this->get('security.authorization_checker')->isGranted('IS_AUTHENTICATED_FULLY'))
{
    return $this->redirectToRoute('jn_core_homepage');
}
Cependant j'ai mis le même code dans ce même controller pour le formulaire d'inscription et cela marche, l'utilisateur qui est connecté est redirigé vers l'accueil. Je ne comprends pas je tourne en rond et Google ne m'a rien donné.

En vous remerciant !