Bonjour,

J'ai un problème sur mon site, plus précisément le fait d'autoriser pour un ROLE ADMIN à éditer et supprimer des topics et messages d'autres utilisateurs.

J'ai seulement deux roles, ROLE_USER et ROLE_ADMIN. A chaque création d'un compte, un ROLE USER lui est automatiquement attribué. Configuration de base de Symfony quand je fais un Make:user

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
public function getRoles(): array
    {
        $roles = $this->roles;
        // guarantee every user at least has ROLE_USER
        $roles[] = 'ROLE_USER';
 
        return array_unique($roles);
    }
Pour mon entité Subject, j'ai crée un Voter qui autorise seulement l'auteur de la question à éditer/supprimer son sujet. Jusque là OK.

Le problème maintenant est que quand je veux autoriser cette action pour l'admin avec pour conditions dans le SubjectVoter

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
if(in_array($user->getRoles(), ['ROLE_ADMIN', 'ROLE_USER'])){
                    return true;
                }
Je ne suis pas autorisé en tant qu'admin à accéder à la page d'édition du sujet en question.

Dans le profiler sur mon compte ADMIN j'ai bien mes roles respectifs

Nom : Capture.PNG
Affichages : 112
Taille : 3,1 Ko

Je vous remercie d'avance pour l'aide apportée