5 - Inscription et authentification des utilisateurs (Symfony 6)

Catégories : Symfony

Série : Symfony 6

Fichiers : https://github.com/NouvelleTechno/e-commerce-Symfony-6

Mots-clés : Symfony inscription authentification symfony6 auth

2637 lectures

Auteur : user Benoit

Date :

Partager

Partager sur Facebook Partager sur Twitter Partager sur LinkedIn

Dans cette 5ème vidéo de la série, nous allons mettre en place l'inscription et l'authentification des utilisateurs sur notre site.

Tous les fichiers générés par le “maker bundle” peuvent bien sûr être écrits à la main.

Création de l'authentification

Pour créer l'authentification, nous utiliserons la commande

symfony console make:auth

Cette commande va lancer un assistant qui va vous demander de renseigner les informations suivantes :

  • Le type d'authentification (avec ou sans formulaire de connexion)
  • Le nom de la classe contenant l'authentification (UsersAuthenticator dans mon exemple)
  • Le nom du contrôleur qui contiendra les routes de connexion et déconnexion (SecurityController)
  • La création ou non d'une route de déconnexion (/logout)

Après l'exécution de la commande, les fichiers suivants auront été créés ou modifiés

  • config/packages/security.yaml
  • src/Controller/SecurityController.php
  • src/Security/UsersAuthenticator.php
  • templates/security/login.html.twig

Création du formulaire d'inscription

Pour créer le formulaire d'inscription sur le site, nous utiliserons la commande

symfony console make:registration-form

Cette commande va lancer un assistant qui va vous demander de renseigner les informations suivantes :

  • Veut-on ajouter une annotation “@UniqueEntity” dans notre classe Users pour les rendre uniques
  • Veut-on envoyer un email aux utilisateurs pour activer leur compte
  • Veut-on connecter automatiquement les utilisateurs après leur inscription

Après l'exécution de la commande, les fichiers suivants auront été créés ou modifiés

  • config/packages/security.yaml
  • src/Controller/RegistrationController.php
  • src/Entity/Users.php
  • src/Form/RegistrationFormType.php

Nous pourrons ensuite modifier les fichiers en fonction du contexte de notre site.

Vous trouverez plus d'informations sur la personnalisation dans la vidéo.

Obtenir de l'aide

Pour obtenir de l'aide, vous pouvez accéder au serveur Guilded pour une entraide par chat.