10K Views

Symfony Sécurité Électeurs

Updated 12 September 2023

Facebook Linkedin

Dans la sécurité des applications web est un problème grave, si votre demande n’est pas assez sécurisé qui peut créer un sérieux problème. Alors, comment nous pouvons garantir notre application est sécurisé? Il y a 2 conception de la sécurité de l’Authentification et de l’Autorisation.

de l’Authentification : Authentification est traitée lorsque vous utiliser vos informations d’identification (par exemple. nom d’utilisateur et mot de passe) pour vous connecter au système.

l’Autorisation : Après le processus d’authentification, l’application sait qui vous êtes. Mais pouvez-vous accéder à certaines ressources de l’application ou non de l’autorisation.

 

 

Symfony processus d’autorisation décide si oui ou non l’utilisateur actuel peut accéder à certaines URI, ou de modifier un certain objet. Il y a 2 façons (ACL et les Électeurs), mais les Électeurs est une solution facile pour effectuer ces restrictions.

Symfony Électeur est un mécanisme visant à assurer l’accès de l’utilisateur actuel pour certaines ressources. L’électeur est une classe qui contient des isGranted méthode où nous écrivons notre logique métier complexe qui décide que vous avez la permission ou de ne pas accéder à cette URI, ou d’un objet.

Tous les électeurs appelée à chaque fois que chaque fois que vous avez appelé isGranted méthode, vous pouvez également passer d’un objet à isGranted méthode comme deuxième argument et que l’argument va passer à l’électeur.

Nous allons créer un scénario pour une meilleure compréhension des électeurs, supposons qu’il y a un ticket avec le numéro d’identification de 1000, ce qui est attribué à Un Agent et l’Agent B est en train d’essayer d’accéder à ce billet, mais l’Agent B a pas la permission d’accéder à ce billet.

Afin de créer un électeur pour remédier à cette situation.

 

Au-dessus du contrôleur, nous vérifions si l’utilisateur peut accéder à ce billet en appelant le denyAccessUnlessGranted méthode de symfony Contrôleur de base de Symfony\Bundle\FrameworkBundle\Controller espace de noms. Méthode denyAccessUnlessGranted est plus simple isGranted méthode qui appelle isGranted méthode, et si l’utilisateur n’est pas autorisé, alors il crée un accès refusé d’exception (403 forbidden).

Créer un billet d’électeur où nous devons écrire notre logique de restreindre l’utilisateur à accéder à la billetterie.

 

 

Dans isGranted méthode, nous renvoie true si l’utilisateur courant a accès et false sinon.

Pour faire de cet électeur de travail, vous devez configurer ce électeur dans votre service.fichier yml. Ci-dessous est le code pour la configuration de l’électeur:

 

 

C’est tout. Vous pouvez écrire votre propre logique d’entreprise en fonction de votre besoin.

Vous pouvez aussi vérifier Symfony Électeurs sur la documentation symfony http://symfony.com/doc/current/security/voters.html

Merci pour votre temps.

Category(s) uvdesk
. . .

Leave a Comment

Your email address will not be published. Required fields are marked*


Be the first to comment.