
L'authentification est un élément essentiel des applications web modernes. Avec WorkOS, l'intégration de fonctionnalités d'authentification, y compris l'authentification unique (SSO), devient simple et efficace, notamment dans Laravel 12.
Ce tutoriel vous guidera pas à pas pour configurer WorkOS avec Laravel 12, depuis la préparation de votre application jusqu'à la mise en place d'un système de connexion fonctionnel. À la fin de ce guide, vous disposerez d'un système d'authentification robuste basé sur WorkOS AuthKit.
Pour utiliser WorkOS comme fournisseur d'authentification, vous aurez besoin d'un compte WorkOS. Ce service propose une offre gratuite pour les applications comptant jusqu'à un million d'utilisateurs actifs mensuels, ce qui laisse pas mal de marge...
WorkOS prend en charge plusieurs méthodes d'authentification modernes :
-
Authentification sociale (via Google, Microsoft, GitHub et Apple)
-
Authentification par clé de passe
-
Authentification par email avec la fonctionnalité "Magic Auth"
-
Authentification unique (SSO)
Ce guide vous permettra de tirer parti de ces différentes options pour offrir une expérience utilisateur à la fois fluide et sécurisée. Les trois starters kits de Laravel 12 proposent d'utiliser WorkOS.
Installation du starter kit
On va l'installer avec l'installeur CLI de Laravel :
laravel new laravel12
On tombe sur une première question :
Là, on choisit livewire. On a ensuite cette question :
Là, vous choisissez workos.
On nous demande ensuite quel système de test, on veut adopter. Dans le contexte de cet article, ça n'a aucune importance, alors choisissez ce que vous voulez. Vous n'avez plus qu'à attendre la fin de l'installation. Vous avez une dernière question :
Répondez yes. Et c'est terminé ! Évidemment, sur la page d'accueil, il n'y a que le bouton pour la connexion :
Le compte workOS
Comme je l'ai signalé ci-dessus, vous avez besoin d'un compte workOS. Dans votre tableau de bord, vous trouvez votre identifiant et votre clé d'API :
Il faut copier ça dans votre fichier .env :
WORKOS_CLIENT_ID=your-client-id
WORKOS_API_KEY=your-api-key
WORKOS_REDIRECT_URL="${APP_URL}/authenticate"
Il faut ensuite définir la redirection dans votre compte workOS. Dans le menu latéral, vous avez cette option :
Qui ouvre une page avec ces éléments :
Entrez votre lien dans le formulaire :
Ensuite, cliquez sur le menu Authentication :
Vous trouvez toutes les méthodes d'authentification que vous pouvez activer ;
Elles ne figurent pas toutes sur mon illustration. Dans la documentation de Laravel, il est conseillé de ne pas activer "Email + Password" pour ne laisser que les versions sociales. Après, vous faites comme vous voulez.
Dans la même documentation, il est aussi conseiller d'ajuster le "WorkOS AuthKit session inactivity timeout"pour le faire correspondre avec la durée des sessions de Laravel qui sont par défaut de deux heures.
C'est parti !
À présent, lorsque je clique sur le bouton de connexion, j'arrive sur cette page :
Si je choisis par exemple Github :
Après avoie complété la double authentification, j'arrive sur le tableau de bord de mon application Laravel :
Conclusion
En suivant ce tutoriel, vous avez appris à intégrer WorkOS dans une application Laravel 12, en tirant parti de ses fonctionnalités d'authentification avancées. Grâce à WorkOS, vous pouvez désormais offrir à vos utilisateurs une expérience de connexion fluide et sécurisée, en utilisant diverses méthodes d'authentification modernes telles que l'authentification sociale, par clé de passe, par email avec "Magic Auth", et l'authentification unique (SSO).
L'intégration de WorkOS simplifie grandement le processus d'authentification, vous permettant de vous concentrer sur le développement des fonctionnalités principales de votre application. De plus, avec une offre gratuite généreuse, WorkOS est une solution accessible même pour les applications à grande échelle. Vous pouvez trouver une documentation très complète sur le site. Je n'ai pas encore tout exploré et je n'ai fait dans cet article qu'évoquer le AuthKit, et je suis curieux de vos retours éventuels.
En configurant correctement votre compte WorkOS et en ajustant les paramètres de session, vous assurez une sécurité optimale pour vos utilisateurs. Vous êtes maintenant prêt à déployer une application Laravel 12 robuste et sécurisée, capable de gérer efficacement l'authentification des utilisateurs.
Par bestmomo
Aucun commentaire