Symfony6 Techwall #56 Sécurité, Créer un formulaire d'authentification via un form authenticator

Votre vidéo commence dans 20
Passer (5)
La methode étape par étape pour lancer un business en ligne qui génère 2000 euros par mois en partant de 0

Merci ! Partagez avec vos amis !

Vous avez aimé cette vidéo, merci de votre vote !

Ajoutées by admin
53 Vues
Symfony6 Techwall #56 Sécurité, Créer un formulaire d'authentification via un form authenticator

https://github.com/aymensellaouti/sf6Techwall

Comme décrite dans la documentation, l’authentification dans Symfony ressemble à de « la magie ».
En effet, au lieu d’aller construire une route et un contrôleur afin d’effectuer le traitement, vous devez simplement activer un « authentication provider ».
« L’authentication provider » est du code qui s’exécute automatiquement avant chaque appel d’un contrôleur.
Symfony possède un ensemble d’ « authentication provider » prêt à l’emploi. Vous trouverez leur description dans la documentation : https://symfony.com/doc/current/security/auth_providers.html
Dans la documentation, il est conseillé de passer par les « Guard Authenticator » qui permettent un contrôle total sur toutes les parties de l’authentification.

Un « Guard authenticator » est une classe qui vous permet un control complet sur le processus d’authentification.
Cette classe devra ou implémenter l’interface AuthentiatorInterface ou étendre la classe abstraire associé au besoin (AbstractFormLoginAuthenticator en cas de formulaire d’authentification ou AbstractGuardAuthenticator en cas d’api)
La commande make:auth permet de générer automatiquement cette classe.
Une fois lancée, cette commande vous demande si vous voulez créer un « empty authenticator » ou un « login form authenticator ».

A partir de la version 5.3, vous devez implémenter uniquement les méthodes authenticate et la méthode onAuthenticationSuccess.
Il y a aussi des méthodes optionnelles que vous pouvez surcharger :
supports
onAuthenticationFailure
start
Symfony utilises à partir de la version 5,3 un nouveau Authenticator based Security
Pour la gestion des utilisateurs elle utilises Passport

Un site est généralement décomposé en deux parties :
Partie public : accessible à tous le monde
Partie privée : accessible à des utilisateurs particuliers.
Au sein même de la partie privée, certaines ressources sont spécifiques à des rôles ou des utilisateurs particuliers.
Nous identifions donc deux niveaux de sécurité :

L'authentification est le processus permettant d’authentifier un utilisateur.

Deux réponses possibles

Non authentifié : Anonyme.

Authentifié : membre

Le Bundle qui gère la sécurité dans Symfony s’appelle SecurityBundle.
Si vous ne l’avez pas dans votre application, installer le via la commande
composer require security

L’ensemble du système de sécurité est basé sur la classe User qui représente l’utilisateur de votre application.
Afin de créer la classe User, utiliser la commande :
symfony console make:user
Si vous n’avez pas le MakerBundle, installer le.
Cette outils vous posera un ensemble de questions, selon votre besoin répondez y et il fera tout le reste.
Catégories
Tutoriels Sculptures

Ajouter un commentaire

Commentaires

Soyez le premier à commenter cette vidéo.