Auth0 vous permet d’ajouter rapidement l’authentification et de pouvoir accéder aux informations relatives au profil utilisateur dans votre application. Ce guide explique comment intégrer Auth0 à n’importe quelle application ASP.NET OWIN, nouvelle ou ancienne, en utilisant le package Nuget
Microsoft.Owin.Security.OpenIdConnect
.1
Configuration d’Auth0
Pour utiliser les services Auth0, vous devez avoir une application installée dans Auth0 Dashboard. L’application Auth0 est l’endroit où vous allez configurer le fonctionnement de l’authentification pour le projet que vous développez.
Configurer une application
Utilisez le sélecteur interactif pour créer une nouvelle application Auth0 ou sélectionner une application existante qui représente le projet avec lequel vous souhaitez effectuer l’intégration. Dans Auth0, il est attribué à chaque application un identifiant client unique alphanumérique que votre code d’application utilisera pour appeler les API Auth0 via la trousse SDK.Tous les paramètres que vous configurez à l’aide de ce démarrage rapide seront automatiquement mis à jour pour votre application dans le Dashboard, qui est l’endroit où vous pourrez gérer vos Applications à l’avenir.Si vous préférez explorer une configuration complète, consultez plutôt un exemple d’application.Configuration des URL de rappel
Une URL de rappel est une URL intégrée dans votre application vers laquelle vous souhaitez qu’Auth0 redirige les utilisateurs après leur authentification. Si elle n’est pas définie, les utilisateurs ne seront pas redirigés vers votre application après s’être connectés.Si vous suivez notre exemple de projet, définissez cette URL comme suit :
http://localhost:3000``/callback
.Configuration des URL de déconnexion
Une URL de déconnexion est une URL intégrée dans votre application vers laquelle vous souhaitez qu’Auth0 redirige les utilisateurs après leur déconnexion. Si elle n’est pas définie, les utilisateurs ne pourront pas se déconnecter de votre application et recevront un message d’erreur.Si vous suivez notre exemple de projet, définissez cette URL comme suit :
http://localhost:3000
.2
Configurer le projet
Installer à partir de Nuget
Pour intégrer Auth0 avec ASP.NET OWIN, vous pouvez utiliser les packages NugetMicrosoft.Owin.Security.OpenIdConnect
et Microsoft.Owin.Security.Cookies
.Des problèmes surviennent lorsque vous configurez l’intergiciel de témoin OWIN et les témoins System.Web en même temps. Pour en savoir plus, consultez la documentation sur les problèmes d’intégration des témoins System.Web afin d’atténuer ces problèmes.
Configurer les identifiants
Pour que la trousse SDK fonctionne correctement, définissez les propriétés suivantes dansWeb.config
:auth0:Domain
: Le domaine de votre locataire Auth0. Celui-ci figure dans Auth0 Dashboard, dans les Settings (Paramètres) de votre application dans le champ Domaine. Si vous utilisez un domaine personnalisé, définissez ceci plutôt sur la valeur de votre domaine personnalisé.auth0:ClientId
: L’identifiant de l’application Auth0 que vous avez créée dans Auth0 Dashboard. Celui-ci figure dans Auth0 Dashboard, dans les Settings (Paramètres) de votre application dans le champ Identifiant client.
3
Configurer le logiciel médiateur
Pour activer l’authentification dans votre application ASP.NET OWIN, reportez-vous à la méthode de configuration de votre classe de démarrage et configurez le témoin, ainsi que le logiciel médiateur OIDC.Il est essentiel d’enregistrer à la fois le logiciel médiateur de témoin et le logiciel médiateur OpenID Connect, car les deux sont nécessaires (dans cet ordre) pour que l’authentification fonctionne. le logiciel médiateur OpenID Connect gère l’authentification avec Auth0. Une fois que les utilisateurs se sont authentifiés, leur identité est sauvegardée dans le logiciel médiateur de témoin.Dans l’extrait de code, AuthenticationType est défini sur Auth0. Utilisez AuthenticationType dans la section suivante pour lancer un défi au logiciel médiateur OpenID Connect et commencer le flux d’authentification. L’événement de notification RedirectToIdentityProvider génère la bonne Logout URL (URL de déconnexion).
4
Ajouter une fonctionnalité de connexion à votre application
Pour permettre aux utilisateurs de se connecter à votre application ASP.NET OWIN, ajoutez une action
Login
à votre contrôleur.Appelez HttpContext.GetOwinContext().Authentication.Challenge
et passez Auth0
comme schéma d’authentification. Cette action fait appel au gestionnaire d’authentification OIDC qui a été enregistré plus tôt. Veillez à préciser les AuthenticationProperties
, y compris un RedirectUri
i.Après avoir appelé avec succès HttpContext.GetOwinContext().Authentication.Challenge
, l’utilisateur est redirigé vers Auth0 et est connecté à la fois au logiciel médiateur OIDC et au logiciel médiateur de témoin après avoir été redirigé vers votre application. Cela permettra aux utilisateurs d’être authentifiés lors des requêtes suivantes.Point de contrôle
Maintenant que vous avez configuré la fonction de connexion, lancez votre application pour vérifier que: naviguer vers votre actionLogin
vous redirigera vers Auth0,
saisir vos identifiants vous redirigera vers votre application.5
Ajouter une fonctionnalité de déconnexion à votre application
À partir de l’action de votre contrôleur, appelez
HttpContext.GetOwinContext().Authentication.SignOut
avec le schéma d’authentification CookieAuthenticationDefaults.AuthenticationType
pour déconnecter l’utilisateur de votre application.De plus, si vous souhaitez déconnecter l’utilisateur d’Auth0 (cette action pourrait également le déconnecter d’autres applications qui dépendent de l’authentification unique), appelez HttpContext.GetOwinContext().Authentication.SignOut
avec le schéma d’authentification "Auth0"
.Point de contrôle
Maintenant que vous avez configuré la fonction de déconnexion, exécutez votre application pour vérifier que: Naviguer vers votre actionLogout
garantit que l’utilisateur est déconnecté.
Lors de la déconnexion, vous êtes redirigé vers Auth0 puis immédiatement renvoyé vers votre application pendant la déconnexion.6
Afficher les informations du profil utilisateur
Après que l’intergiciel a réussi à récupérer les jetons d’Auth0, il extraira les informations et les demandes de l’utilisateur à partir du jeton d’ID et les met à disposition en tant que
ClaimsIdentity
. Accédez aux informations extraites en utilisant la propriété User
dans le contrôleur.Pour créer un profil utilisateur, récupérez le nom, l’adresse courriel et l’image de profil de l’utilisateur à partir de User
et visualisez-les à partir de votre contrôleur.Point de contrôle
Maintenant que vous avez configuré votre action pour afficher le profil de l’utilisateur, lancez votre application pour vérifier que: naviguer vers votre actionProfile
après vous être connecté avec succès affiche le profil de l’utilisateur.Étapes suivantes
Beau travail! Si vous en êtes arrivé là, vous devriez avoir la connexion, la déconnexion et les informations de profil utilisateur actives dans votre application.Cela conclut notre tutoriel de démarrage rapide, mais il y a tellement plus à explorer. Pour en savoir plus sur ce que vous pouvez faire avec Auth0, consultez :- Auth0 Dashboard : apprenez à configurer et gérer votre locataire et vos applications Auth0
- Auth0 Marketplace : découvrez des intégrations que vous pouvez activer pour étendre les fonctionnalités d’Auth0