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
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.
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); }
Le problème maintenant est que quand je veux autoriser cette action pour l'admin avec pour conditions dans le SubjectVoter
Je ne suis pas autorisé en tant qu'admin à accéder à la page d'édition du sujet en question.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 if(in_array($user->getRoles(), ['ROLE_ADMIN', 'ROLE_USER'])){ return true; }
Dans le profiler sur mon compte ADMIN j'ai bien mes roles respectifs
Je vous remercie d'avance pour l'aide apportée
Partager