Cas d’utilisation
- Prise en charge des communications de service à service.
- Exécution de tâches planifiées ou de tâches cron sur des serveurs qui doivent accéder à des ressources protégées ou à des API.
- Appareils IoT autorisés à communiquer avec des services dorsaux ou des API.
- Couche API qui doit communiquer avec d’autres couches API sans intervention de l’utilisateur ou après l’expiration d’un jeton utilisateur.
- API privilégiée qui peut devoir être appelée avant qu’un utilisateur ne se soit authentifié (par exemple, à partir d’une action à partir d’une règle ou d’un script de base de données personnalisé dans votre locataire Auth0).
- Passerelle API pour gérer les services dorsaux.
- Applications non interactives ou des outils sans intervention humaine, tels que des démons ou des services dorsaux.
Ces services auront toujours besoin d’un jeton d’accès M2M pour l’authentification.
Comment utiliser ce guide
- En matière d’architecture, nous vous recommandons de configurer Auth0 de manière à soutenir votre cycle de vie de développement logiciel ainsi que votre infrastructure actuelle.
- Dans la section Créer un compte, nous expliquons comment configurer une instance d’API dans Auth0 et créer une application afin de prendre en charge le flux d’authentification (ou le type d’autorisation) requis pour l’authentification machine-machine.
- Dans la section Authentification, nous détaillons le type d’autorisation à utiliser pour l’authentification, ainsi que les jetons d’accès et les permissions que vous pouvez définir.
- Dans la section Image de marque, nous expliquons où trouver les informations nécessaires pour configurer des domaines personnalisés, en fonction de la manière dont vous compter gérer les certificats.
- Dans la section Automatisations de déploiement, vous découvrirez nos outils conçus pour faciliter vos processus de déploiement.
- Dans la section Assurance qualité, vous trouverez des informations sur les tests unitaires et les contrôles de préparation disponibles dans le tableau de bord Auth0.
Architecture
Considérations
-
Comment vous partitionnez ou regroupez vos API pour appeler des points de terminaison spécifiques.
- Cela peut déterminer l’audience et d’autres demandes sur les jetons d’accès.
- Tout consommateur tiers de votre ressource peut demander un jeton d’accès pour chaque appel. Les appels excessifs pourraient affecter votre limite anti-attaques.
Créer un compte
Avant de commencer
Dans l’Auth0 Dashboard ou Management API, créez :
- Une API qui représente votre API
- Une application de communication entre machines (M-M) qui utilise le flux des d’identifiants client.
- Le nom de votre locataire joue un rôle dans votre domaine Auth0. Avant d’en définir un, vous devriez passez en revue les caractéristiques du locataire.
- Les fonctionnalités d’Auth0 dont vous avez besoin selon l’utilisation que vous en faites. Certaines fonctionnalités ne sont disponibles qu’avec les abonnements Professionnel et Entreprise.
- Déterminez si vous devez prendre en charge plusieurs environnements, notamment pour le développement, la simulation et la production. Pour en savoir plus, consultez Configurer plusieurs environnements.
- Si votre cas d’utilisation implique des applications tierces que vous souhaitez enregistrer dans un locataire, vous pouvez utiliser l’Enregistrement dynamique d’applications basé sur le protocole OIDC pour l’enregistrement des clients.
- Passez en revue nos services dorsaux et nos librairies d’API pour essayer l’un de nos démarrages rapides.
Provisionner un locataire
Enregistrer une API
Vous pouvez toujours mettre à jour votre API dans Auth0 Dashboard ou en appelant la mise à jour de Management API un point de terminaison de serveur de ressources
- Auth0 Dashboard
- Management API
Commencez par créer une instance dans Auth0 Dashboard pour vos API.
- Suivez les instructions pour enregistrer votre API.
Associer une application
L’API d’Auth0 a plusieurs paramètres que vous devriez passer en revue avant la configuration. Pour en savoir plus, consultezParamètres de l’API.
- Auth0 Dashboard
- Management API
Si vous créez votre API dans Dashboard, Auth0 génère automatiquement une application de test et l’associe à votre API.
- Allez à Auth0 Dashboard > Applications.
-
Sélectionnez l’application de test de communication entre machines (M2M) créée lors de la création de votre API
.Vous pouvez créer une autre application pour le développement ou la production ultérieurement en suivant les instructions pour Enregistrer les applications de communication entre machines.
- Passez à la vue API, puis localisez l’API que vous souhaitez activer pour cette application.
- Activez la bascule Authorize (Autoriser), puis sélectionnez le bouton fléché à droite pour développer la carte.
-
Sélectionnez Update (Mise à jour).
Dans cette vue, vous pouvez sélectionner la liste déroulante et choisir les permissions que vous souhaitez ajouter. Nous en apprendrons davantage sur les permissions lorsque nous aborderons les jetons d’accès dans la section Authentification.
Authentification
client_id et client_secret), puis autorisée en un seul appel.
Pour les applications ou services non interactifs à authentifier, vous devez sélectionner une autorisation client ou un flux d’authentification. Le Flux des identifiants client , ne nécessite pas d’interaction humaine et est particulièrement adapté aux applications M2M.
Avant de commencer
Dans Auth0 Dasboard ou Management API, vous pourrez :
- Configurer votre application pour qu’elle utilise le Flux des identifiants client.
- Mettre à jour les permissions de vos jetons d’accès M2M.
- Examinez le Flux des identifiants client pour l’authentification machine à machine. Voici le flux de travail pour l’authentification et l’autorisation non interactive.
- Déterminez le niveau d’accès pour vos API. Cela permet de déterminer quelles permissions vous configurerez lors de la création de votre API.
Configurer le flux des identifiants client
Jetons d’accès M2M
client_id et client_secret dans un appel au point de terminaison du jeton Authentication API pour obtenir un jeton d’accès. Ce jeton d’accès permet d’accéder à votre API protégée.
Le profil ou format par défaut est le profil de jeton Auth0 associé à deux profils de jeton. Vous pouvez choisir de modifier le profil du jeton en choisissant RFC 9068. Pour en savoir plus, lisez Profils de jetons d’accès. Pour vérifier que le jeton est valide, votre API vérifiera les Algorithmes de signature. L’algorithme de signature par défaut est RSA256, un algorithme basé sur une clé.
Auth0 prend en charge d’autres méthodes d’authentification client en plus de fournir l’ID client et le secret client en tant qu’identifiants. Ces méthodes, y compris notre recommandation de Clé privée JWT pour les configurations M2M, sont disponibles avec un plan Entreprise. Pour en savoir plus, consultez Identifiants d’application.
Exemple
/oauth/token doit être similaire à l’exemple ci-dessous :
La réponse devrait être similaire à l’exemple ci-dessous :
Expiration du jeton
Permissions
Pour ajouter des demandes personnalisées à un jeton d’accès, vous pouvez utiliser le flux de communication entre machines des actions. Pour en savoir plus, consultez Flux de communication entre machines.
Image de marque
Domaines personnalisés
/authorize pour demander des jetons d’accès.
Intégration M2M – domaines personnalisés
Dans Auth0 Dashboard, vous devez :
- Enregistrer et vérifier votre domaine avant de pouvoir l’utiliser avec vos services Auth0.
- Déterminer si vous souhaitez gérer votre propre certificat ou utiliser un certificat géré par Auth0. Pour en savoir plus sur les certificats, lisez Options de gestion des certificats.
- Vérifiez que la version TLS (SSL) et le chiffre que vous souhaitez utiliser pour les certificats autogérés sont pris en charge par Auth0. Pour en savoir plus, lisez Versions et chiffres TLS (SSL).
-
Pour configurer votre domaine personnalisé avec des certificats gérés par Auth0, suivez les instructions fournies à la section Configurer des domaines personnalisés avec des certificats gérés par Auth0.
-
Si vous souhaitez gérer vos propres certificats, suivez les instructions fournies à la section Configurer des domaines personnalisés avec des certificats autogérés.
Vous devez avoir un abonnement Enterprise pour gérer les certificats dans votre domaine personnalisé. Pour en savoir plus, lisez Tarification et connexion Auth0.
-
Si vous souhaitez gérer vos propres certificats, suivez les instructions fournies à la section Configurer des domaines personnalisés avec des certificats autogérés.
- Lisez Configuration de l’API avec des domaines personnalisés. Vous devrez peut-être ajuster vos paramètres API pour intégrer un domaine personnalisé.
Automatisation du déploiement
Meilleure pratique
Quelle que soit la manière dont vous configurez l’automatisation du déploiement, nous vous recommandons de tester votre code personnalisé et vos actions avant le déploiement, et d’exécuter des tests d’intégration avec votre locataire après le déploiement.
Outil Deploy CLI
Extension des journaux Webtask en temps réel
console.log et autres exceptions. Si vous utilisez Auth0 Actions ou une autre logique personnalisée, vous pouvez utiliser cette extension pour déboguer et dépanner les problèmes. Pour en savoir plus sur l’installation et la configuration, veuillez consulter Extension des journaux WebTask en temps réel.
Assurance qualité
- Comment votre API se comportera-t-elle lorsqu’elle seront soumise à des charges de production inattendues?
- Comment vos limites anti-attaques seront-elles affectées par les applications tierces?
Tests unitaires
Tests de simulation
Déploiement
