Introduction à Auth0
Auth0 est un fournisseur de Gestion des identités et des accès (IAM). Mais qu’est-ce que cela signifie? Si vous avez lu Introduction à la gestion des identités et des accès (IAM), vous savez qu’une solution IAM est un gardien des ressources que vous fournissez aux clients sous forme d’applications Web, d’API, etc. Le gardien initie l’autorisation comme décrit dans OAuth 2.0. L’ajout de la couche OpenID Connect ajoute une authentification pour sécuriser les identités numériques de vos utilisateurs et votre produit.
La plateforme d’identité Auth0 prend en charge différents types d’applications et de cadres d’applications. Que votre application soit une application web classique, une application mobile ou une application de communication entre machines, Auth0 fournit des configurations pour l’autorisation ou le flux de production le plus sûr, pour chacun. Vous pouvez en savoir plus sur les autorisations et choisir celle qui convient à votre application dans notre article Quel flux OAuth 2.0 dois-je utiliser?
En plus de prendre en charge des protocoles sécurisés, la plateforme d’identité Auth0 vous permet de personnaliser les services de connexion pour s’adapter à votre entreprise, votre technologie et votre clientèle. En utilisant l’Auth0 Dashboard et Management API, vous pouvez créer votre propre instance Auth0 pour authentifier et autoriser vos clients. Vous pouvez configurer les comportements de connexion, connecter votre magasin de données utilisateur, gérer ces utilisateurs, choisir une autorisation et établir des facteurs d’authentification pour un produit homogène et évolutif avec une expérience utilisateur impactante.
Débuter
Principes fondamentaux de l’identité
Vous n’avez pas besoin d’être un expert en IAM pour intégrer Auth0 dans votre application ou API, mais vous pouvez choisir la configuration appropriée à votre cas d’utilisation si vous connaissez certains concepts clés. Pour en savoir plus, consultez notre article Introduction à la gestion des identités et des accès (IAM) . Si vous avez encore des questions sur la planification de votre implémentation, consultez notre section Scénarios d’architecture pour obtenir des explications sur les scénarios du monde réel.
Intégration avec Auth0
Pour commencer l’intégration avec Auth0, vous pouvez soit commencer avec nos Guides de démarrage rapide interactifs pour la configuration initiale et les configurations rapides, ou vous pouvez enregistrer votre application manuellement dans l’Auth0 Dashboard. Dans le Tableau de bord, vous pouvez créer un locataire ou votre instance Auth0 à partir de zéro. Si vous préférez utiliser des trousses SDK, Auth0 offre plusieurs options pour chaque type d’application. Pour voir l’offre complète, accédez à Bibliothèques Auth0.
Vous pouvez commencer votre configuration avec des détails généraux dans les paramètres du locataire du Tableau de bord, tels que le nom affiché à vos utilisateurs, le logo de votre entreprise, vos URL de rappel ou l’endroit où Auth0 redirige vos utilisateurs après authentification. Vous pouvez consulter nos recommandations en consultant la section Paramètres du locataire.
Une fois que vous avez configuré le locataire, vous pouvez créer et configurer votre application ou API. Vous pouvez utiliser les instructions de nos articles Créer des applications ou Enregistrer des API comme point de départ.
S’authentifier
Le véhicule d’authentification est le formulaire de connexion, ou l’intermédiaire pour permettre à vos utilisateurs d’accéder à votre application. Les utilisateurs fournissent des identifiants prédéterminés, comme un nom d’utilisateur ou un mot de passe, dans le formulaire de connexion pour vérifier leur identité numérique.
La Connexion universelle d’Auth0 est un formulaire de connexion que vous pouvez personnaliser pour adapter votre marque et configurer pour fournir un accès sécurisé. Les avantages de l’utilisation de la Connexion universelle sont :
Connexion sans mot de passe avec biométrie
Choix de méthodes d’authentification multifacteur (MFA) à partir du courriel, de la voix ou Duo
Capacités d’authentification unique (SSO)
Support de localisation
Pour en savoir plus, consultez Connexion universelle. Pour en savoir plus sur les fonctionnalités disponibles, consultez Connexion universelle par rapport à la Connexion classique.
Une fois que vous avez un formulaire de connexion, vous pouvez connecter votre boutique utilisateur à Auth0. Vous pouvez connecter une base de données existante ou utiliser un fournisseur d’identité sociale, juridique ou d’entreprise tel que X ou Microsoft Entra ID. Les nouveaux utilisateurs peuvent s’inscrire avec la connexion que vous avez configurée.
Une fois que vous avez un formulaire de connexion et une connexion au magasin d’utilisateurs, vous pouvez définir des protocoles qui fonctionnent en coulisse lorsque les utilisateurs se connectent à votre application. Les protocoles les plus courants sont associés aux spécifications OAuth 2.0 et OpenID Connect (OIDC) que vous avez peut-être consultées dans notre article sur les Principes fondamentaux de l’identité.
Un autre protocole permettant de transmettre des informations en toute sécurité lors de la connexion est sous forme de jetons. Les jetons du serveur d’autorisation et l’Authentication API Auth0, transmettent des informations entre entités. Lorsqu’un utilisateur se connecte et que l’accès est approuvé, l’Authentication API envoie un jeton d’accès, un jeton d’ID ou les deux en fonction de l’autorisation d’authentification utilisée pour créer une session. Les jetons d’accès contiennent des informations sur les permissions que le demandeur a dans votre application tandis que les jetons d’ID ont des informations sur le demandeur, telles que des métadonnées utilisateur pour améliorer l’expérience utilisateur.
Les jetons de l’Authentication API sont des jetons Web JSON (JWT) structurés avec :
un en-tête qui inclut la signature
la charge utile qui contient des déclarations et des attributs sur le demandeur
la signature qui vérifie que le jeton est valide
Pour en savoir plus sur les jetons, consultez Jetons d’accès, Jetons d’ID, ou Jetons Web JSON.
D’autres protocoles, comme SAML (Security Assertion Markup Language) et WS-Fed (Web Service Federation) sont utilisés avec des systèmes plus spécifiques. SAML fonctionne avec certains fournisseurs d’identité tandis que WS-Fed est utilisé avec les produits Microsoft. Vous pouvez en apprendre davantage en explorant la section Protocoles de notre documentation.
Gérer les utilisateurs
La gestion des profils utilisateurs et de l’accès peut prendre du temps. Si vous choisissez de gérer les utilisateurs avec votre instance Auth0, vous pouvez supprimer certains des points faibles.
Vous pouvez facilement automatiser les opérations CRUD et interroger les profils utilisateurs à l’aide de l’Auth0 Dashboard ou Management API. Vous pouvez classer vos utilisateurs en catégories avec Auth0 Organizations pour organiser votre base de clients selon votre style de gestion. Pour en savoir plus, accédez à la section Manage Users (Gérer les utilisateurs) de notre documentation.
Votre modèle d’affaires peut inclure des niveaux d’accès pour vos utilisateurs. Vous pouvez vouloir qu’une sous-section d’utilisateurs ait des autorisations de lecture seule et une autre sous-section avec la possibilité de modifier. Auth0 Authorization Core vous permet d’implémenter un contrôle d’accès basé sur les rôles (RBAC). Vous pouvez créer des rôles, assigner des rôles aux utilisateurs et définir des autorisations. Pour un modèle d’autorisation plus robuste, vous pouvez utiliser Fine-Grained Authorization (FGA) (Autorisation à granularité fine (FGA)). FGA vous donne plus d’options pour déterminer vos politiques d’autorisation; vous pouvez permettre aux utilisateurs d’accéder à une ressource en fonction de leur relation avec la ressource, leur rôle ou un attribut de l’utilisateur ou de la ressource.
Si vous souhaitez gérer l’accès en fonction des comportements du navigateur, vous pouvez limiter la durée de vie d’une session. Une session, ou l’interaction entre l’entité qui en fait la demande et votre application ou ressource, a une durée de vie limitée. Une session peut se terminer lorsque l’utilisateur ferme le navigateur ou s’éloigne de votre page Web. Vous pouvez prolonger les sessions avec des jetons d’actualisation qui renouvellent les jetons d’accès. Configurer les jetons d’actualisation dans le Tableau de bord. Pour en savoir plus, consultez Limites de durée de vie de la session et Obtenir des jetons d’actualisation.
Les témoins, ou chaînes de données, sont liés à la session et représentent un utilisateur authentifié. Les témoins permettent à vos utilisateurs authentifiés de maintenir une session et de se déplacer entre les pages web sans être obligés de se réauthentifier. Une fois le navigateur fermé, le témoin est effacé par le navigateur.
Personnaliser
Votre marque est importante, et Auth0 offre une personnalisation pour rendre l’expérience de connexion plus personnalisée à votre entreprise. Vous pouvez ajouter votre logo et jeu de couleurs à votre formulaire de connexion, ainsi que d’utiliser un domaine personnalisé pour vous donner le droit de propriété sur l’URL de connexion. Pour en savoir plus sur la configuration, consultez Domaines personnalisés.
La Connexion universelle offre de nombreuses fonctionnalités pour configurer l’authentification en fonction de vos besoins, comme l’authentification multifacteur (MFA), l’authentification sans mot de passe avec données biométriques d’un appareil et la localisation. À un niveau plus granulaire, vous pouvez ajuster le texte des invites que votre utilisateur reçoit lorsqu’une action doit être effectuée. Vous pouvez configurer des invites pour que vos utilisateurs s’inscrivent, inscrivent un appareil pour l’authentification ou envoient un code à un courriel/SMS pour que les utilisateurs puissent le saisir pour vérification. Vous pouvez également personnaliser les communications par courriel pour accueillir de nouveaux utilisateurs, vérifier l’inscription ou réinitialiser les mots de passe à l’aide de modèles de courriel. Pour en savoir plus, consultez Personnaliser les éléments de texte de connexion universelle et Personnaliser les modèles de courriel.
Vous pouvez également configurer certains événements avec Auth0 Actions. Les actions sont des fonctions sécurisées qui s’exécutent pendant l’exécution. Les actions se déclenchent à différents moments du pipeline et ont diverses utilisations. Vous pouvez ajouter des métadonnées avant que l’utilisateur ne s’inscrit ou rediriger les utilisateurs vers un site externe. Pour en savoir plus sur ce que les actions peuvent faire pour vous, consultez Comprendre le fonctionnement d’Auth0 Actions.
Sécuriser
Des attaques malveillantes peuvent se produire à tout moment. Auth0 offre plusieurs options de protection contre les attaques, telles que la détection de robots en combinaison avec Google reCAPTCHA Enterprise pour prévenir les cyberattaques. Pour en savoir plus sur la configuration de la détection de robots, consultez Détection de robots.
Même si vous utilisez votre propre page de connexion, Auth0 offre d’autres options de sécurité que vous pouvez activer dans l’Auth0 Dashboard :
Détection de violation de mot de passe
Protection contre les attaques exhaustives
Le filtrage des adresses IP suspectes
La détection de violation de mot de passe est une mesure de sécurité contre les agents malveillants ayant des identifiants volés. La protection contre les attaques exhaustives défend le compte d’un utilisateur ciblé en limitant le nombre de tentatives de connexion qui bloquent automatiquement l’IP malveillante et envoient une notification au compte utilisateur marqué. La Limitation des adresses IP suspectes fonctionne lorsque la protection contre les attaques exhaustives permet de bloquer le trafic à partir de n’importe quelle adresse IP qui tente des inscriptions ou des connexions rapides.
Les autres mesures de sécurité dépendent de la façon dont vous voulez que vos utilisateurs s’authentifient. L’activation de l’authentification multifacteur (MFA) dans Connexion universelle nécessite que les utilisateurs fournissent deux facteurs d’authentification ou plus. Avec Auth0, vous pouvez personnaliser l’authentification multifacteur (MFA) pour qu’elle se déclenche dans certaines circonstances, comme la connexion d’un utilisateur à partir d’un périphérique inconnu ou d’une adresse IP douteuse. Pour en savoir plus sur la configuration de la MFA, consultez Authentification multifacteur (MFA) adaptative.
Déployer et surveiller
Lorsque vous avez terminé de tester votre instance Auth0 et que vous êtes prêt à déployer, vous pouvez utiliser nos offres de nuage public ou privé. Pour en savoir plus sur les offres disponibles, consultez Options de déploiement. Si vous avez besoin d’un environnement multi-locataire, vous pouvez en savoir plus sur le Nuage privé sur AWS.
Pour assurer le bon déroulement de votre déploiement, nous vous fournissons des conseils sous forme de recommandations préalables au déploiement, d’une liste de contrôle du déploiement, de meilleurs pratiques, de correctifs courants et d’autres conseils pour rendre le déploiement aussi fluide que possible.
Une fois que vous avez établi votre environnement de production prêt pour les utilisateurs, vous pouvez être à l’affût avec le suivi des erreurs et les alertes. Le Gestionnaire des opérations du centre de système vous permet de surveiller, tandis que les journaux d’événements peuvent être exportés vers un outil d’analyse et vous permettent de mieux comprendre les tendances, le comportement des utilisateurs ou les problèmes.