L'essentiel de Ruby on Rails

Authentifier avec Devise

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Votre formateur vous explique comment mettre rapidement en place un système d'authentification grâce à la gem Devise.
03:52

Transcription

Nous allons rajouter un système d'authentification au sein de notre application. Étant donné qu'il s'agit là, de quelque chose de sensible, je préfère vous indiquer l'utilisation d'une gemme plutôt que de vous le faire développer vous-mêmes. Encore une fois, il existe plusieurs solutions, et donc plusieurs gemmes, pour mettre un système d'authentification en place. Je vais vous présenter, ici, une des gemmes les plus utilisées, à savoir devise. De nouveau, vous avez l'ensemble des instructions d'installation de la gemme au sein du Read me. Le générateur de devise vous donnera une petite documentation à réaliser. Pour le moment, ne vous en occupez pas. Continuez en exécutant la commande rails generate devise user. L'installation de devise a eu pour effet d'ajouter un fichier de configuration dans le dossier config initializers devise. Ce fichier est, extrêmement, bien commenté. Chacune des configurations qui y sont présentes sont très bien détaillées. La commande rails generate devise user a eu pour effet de générer un fichier de migration dans lequel nous allons décommenter tout ce que vous voyez ici, donc confirmable et locable. Il faut, également, descendre un peu, il y en a encore. La commande a, également, ajouté cette ligne au niveau de notre modèle user ainsi que cette route. Profitons pour faire descendre ces deux routes au sein de notre fichier. L'ordre des routes au sein du fichier routes.rb a une relative importance. En effet, lorsque Ruby on rails recevra une requête, il regardera ce fichier route du haut vers le bas et prendra la première concordance qu'il trouve. Si vous revenez, maintenant, dans votre modèle user, tâchons de comprendre, un peu, ce qu'il y a ici. devise est une technologie fonctionnant par modules. Il existe différents modules, notamment, registerable, recoverable, rememberable, etc. Chacun de ces modules est expliqué au niveau de la documentation de la gemme. Dans la migration, nous avons décommenté de quoi activer les modules confirmable et locable. Le premier, confirmable, aura pour effet d'envoyer un email de confirmation à l'utilisateur lorsqu'il s'inscrira. Le second, locable, aura pour effet de verrouiller l'accès utilisateur, au bout d'un certain nombre d'échecs de tentatives de connexion. Ça peut être, là, une sécurité importante pour votre site. N'oubliez pas d'exécuter rails db migrate ou rake. Nous pouvons utiliser l'un ou l'autre. Si vous obtenez une erreur sur la présence de la colonne email, n'hésitez pas à la commenter ici, puisque notre modèle user en possède déjà une. Faites de même pour l'index qui existe, déjà. Une fois tout convenablement installé, vous pouvez vérifier les routes qui ont été générées grâce à devise. Celles qui va nous intéresser, ici, est new user registration. Ainsi que new user session pour se connecter. Ajoutez ce code au sein de votre layout application. La méthode user signed in permet de vérifier si l'utilisateur est actuellement connecté. Si c'est le cas, nous lui permettons d'éditer son profil. Autrement, nous fournissons deux liens, un pour se connecter et un pour créer un nouveau compte. Afin que le formulaire de création de compte fonctionne, pour le moment, nous allons désactiver les validations sur les prénoms et les noms. Sachez que cela n'est que temporaire. Il nous faut, aussi, supprimer l'action create de notre contrôleur users, autrement, elle rentrerait en conflit avec les actions de devise. Enfin, dans le fichier routes.rb, supprimons, également, cette route. Maintenant que cela est fait, nous pouvons d'ores et déjà, créer des comptes. Notez la présence des liens en bas de page qui permettent, par exemple, de recevoir des instructions pour modifier son mot de passe. Nous avons vu, dans cette vidéo, comment mettre en place un système d'authentification simple grâce à la gemme devise.

L'essentiel de Ruby on Rails

Concevez des applications web évolutives et intemporelles avec Ruby on Rails. Installez l’environnement, réalisez un projet de stack overflow, enrichissez-le, etc.

6h08 (85 vidéos)
Aucun commentaire n´est disponible actuellement

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !