• Laravel 11

    Cours Laravel 11 – la sécurité – les équipes

    Dans cet article, on va finir l’exploration des possibilités de Jetstream. On a déjà vu précédemment qu’on dispose avec ce package de tout l’arsenal de l’authentification (connexion, déconnexion, oubli du mot de passe, vérification de l’email, vérification du mot de passe…). On a vu également que l’utilisateur dispose d’une gestion complète de son profil (informations personnelles, changement du mot de passe, authentification à double facteur, purge de session…). On va voir dans cet article que Jetstream offre aussi la possibilité de gérer des équipes (teams) avec des permissions. Installation Pour l’installation on retrouve exactement ce qu’on a vu. En partant d’un Laravel 10 tout neuf, on installe Jetstream : composer…

  • Laravel 11

    Cours Laravel 11 – la sécurité – gestion du profil et API

    Lorsqu’on installe Jetstream, on n’obtient pas seulement une authentification complète avec enregistrement, connexion et déconnexion, vérification de l’email, oubli du mot de passe, comme on l’a vu dans les deux articles précédents. On obtient beaucoup plus comme on va le voir dans cet article. Déjà une gestion du profil de l’utilisateur qui peut ainsi modifier ses données personnelles, mais également la possibilité de passer par une authentification à deux facteurs qui devient de plus en plus à la mode. L’utilisateur peut en plus supprimer sa session ou carrément son compte. On verra par ailleurs la possibilité de demander la confirmation du mot de passe pour l’accès à des pages sensibles.…

  • Laravel 11

    Cours Laravel 11 – la sécurité – Jetstream

    On a vu précédemment l’utilisation de Breeze pour installer un système complet d’authentification. Il existe un deuxième starter kit dans Laravel, il s’agit de Jetstream. Celui-ci reprend toutes les fonctionnalités de Breeze et en ajoute d’autres : authentification à deux facteurs, gestion des sessions, et possibilité de gérer des équipes. Nous allons voir dans cet article comment l’installer et l’utiliser. Les routes de l’authentification Dans l’installation de base vous ne trouvez aucune route pour l’authentification. Pour les créer (et ça ne créera pas seulement les routes) il faut déjà installer Jetstream : composer require laravel/jetstream Ensuite on a le choix entre Livewire (avec Blade) et Inertia (avec Vue.js) selon les…

  • Laravel 11

    Cours Laravel 11 – la sécurité – l’oubli du mot de passe

    Un mot de passe est plus facile à oublier qu’à retenir, d’autant qu’on en est littéralement submergé ! Toute application avec une authentification doit prévoir ce genre de situation et donner la possibilité aux utilisateurs de se sortir de ce mauvais pas. Le plus simple est de leur permettre de créer un nouveau mot de passe. Laravel est équipé pour cela et nous allons le voir dans ce chapitre. Le présent chapitre est une suite du précédent et il faut avoir mis en place ce qui concerne l’authentification avec l’installation de Breeze. La base de données Avec les migrations réalisées dans le chapitre précédent, il y a la table password_reset_tokens dans…

  • Laravel 11

    Cours Laravel 11 – la sécurité – l’authentification

    L’authentification constitue une tâche fréquente. En effet, il y a souvent des parties d’un site qui ne doivent être accessibles qu’à certains utilisateurs, ne serait-ce que l’administration. La solution proposée par Laravel est d’une grande simplicité parce que tout est déjà préparé comme nous allons le voir dans ce chapitre. Au fil de l’évolution de Laravel ce domaine a connu plusieurs fois des changements. Ainsi avec Laravel 6 est apparue une nouveauté. Précédemment il y avait la commande php artisan make:auth pour générer les vues. Cette commande a disparu au profit d’un package à installer (laravel/ui). Mais les changements ont continué parce que désormais on nous conseille d’utiliser un starter…

  • Laravel 11

    Cours Laravel 11 – les données – les ressources d’API

    Laravel permet de bâtir facilement des API à partir de ressource Eloquent. Voyons cela dans cet article. Les API REST Généralités REST (Representational State Transfer) est un style architectural pour la conception de API (Application Programming Interfaces) basé sur des concepts et des constraints bien définis. Dans le contexte de Laravel, une API REST se caractérise par les points suivants: Organisée autour de ressources : les API REST sont structurées autour de ressources, qui peuvent être des entités de données telles que des utilisateurs, des articles, des commandes, etc. Ces ressources sont accessibles via des URL uniques et bien définies. Sans persistance (sans session) : dans une API REST, chaque…