Skip to main content

Avant de commencer

Vous aurez besoin d’un compte Microsoft ayant accès à l’Azure Portal.
Le service Azure API Management vous permet de créer de nouvelles API ou d’importer des définitions d’API existantes, puis de les publier pour qu’elles soient utilisées par les publics approuvés. Auth0 facilite l’autorisation des utilisateurs de votre API (à l’aide des normes ). Dans ce tutoriel, vous apprendrez à utiliser Auth0 pour authentifier et autoriser les utilisateurs lorsqu’ils accèdent à l’API Basic Calculator gérée par Azure API Management.

Configurer Auth0

Créer une API

Vous devez créer une API dans Auth0 pour représenter l’API gérée par Azure API Management Service. Pour en savoir plus, consultez Register APIs.
  1. Accédez à Auth0 Dashboard > Applications > APIs, puis sélectionnez Create API.
  2. Définissez les paramètres suivants :
  3. Sélectionnez Create.

Créer une Regular Web Application

Vous devrez créer une Regular Web Application (RWA) dans Auth0 afin de communiquer avec le OAuth 2.0 dans Azure :
  1. Accédez à Auth0 Dashboard > Applications > Applications, puis sélectionnez le bouton Create Application.
  2. Saisissez un Name pour votre application, puis sélectionnez Regular Web Applications comme type d’application.

Créer et activer une connexion

Vous devez créer une connexion dans Auth0 et l’activer pour votre application :
  1. Accédez à Auth0 Dashboard > Authentication > Database, puis sélectionnez Create DB Connection.
  2. Saisissez un Name pour votre connexion. Nous vous suggérons de choisir un nom qui reflète la source des utilisateurs (par exemple, Facebook pour une connexion contenant des utilisateurs qui se connectent avec leurs identifiants Facebook, ou site-sign-ups pour une connexion de base de données où les utilisateurs s’inscrivent sur votre site).
  3. Sélectionnez Create.
  4. Accédez à la page Settings de votre connexion.
  5. Passez à la vue Applications, où vous verrez la liste de toutes les applications de votre tenant.
  6. Activez la bascule de l’application que vous avez créée précédemment pour l’associer à la connexion.

Créer un utilisateur

Si vous avez déjà un ensemble d’utilisateurs, vous pouvez les importer ou créer une custom database connection.
Vous devez avoir au moins un utilisateur dans votre connexion pour tester l’authentification et l’autorisation. Si vous n’avez pas déjà un ensemble d’utilisateurs pour cette connexion, vous pouvez en créer un manuellement :
  1. Accédez à Auth0 Dashboard > User Management > Users, puis sélectionnez Create User.
  2. Entrez une Email et un Password, puis sélectionnez la connexion que vous avez créée à l’étape 3 dans le champ Connection.
  3. Sélectionnez Create.

Configurer Azure

Créer Azure API Management Service

Vous devrez créer une instance d’API Management Service dans Azure pour gérer votre API :
  1. Dans la barre de navigation, sélectionnez Create a resource.
  2. Une fois redirigé, sélectionnez Web > API Management.
  3. Fournissez les paramètres de configuration suivants :
  4. Sélectionnez Create pour lancer le provisionnement de votre service (cela peut prendre jusqu’à 15 minutes).

Importer l’API d’exemple

Pour ce tutoriel, nous allons importer et utiliser l’API Basic Calculator fournie par Microsoft. Pour des instructions détaillées, consultez Importer et publier votre première API de Microsoft. Une fois terminé, sélectionnez Create pour importer votre API. Vous serez redirigé vers la page Summary de votre API une fois l’importation terminée.

Configurer un serveur d’autorisation OAuth 2.0

Pour utiliser Auth0 pour sécuriser votre API Azure, vous devez enregistrer Auth0 comme serveur d’autorisation OAuth 2.0 :
  1. Repérez la section OAuth 2.0 + OpenID Connect de votre instance du service API Management près de la barre de navigation. Sélectionnez OAuth 2.0, puis Ajouter.
  2. Accédez à l’écran de configuration Ajouter un service OAuth2, puis sélectionnez le type d’octroi Authorization Code.
  3. Définissez les paramètres suivants :
  4. Dans la section Client Credentials, entrez l’ID client de vos applications Auth0 dans le champ Client ID et le secret client dans le champ Client secret.
  5. Passez à la vue Redirect URI, puis copiez la valeur de l’URI dans le champ Authorization code flow grant.
  6. Sélectionnez Créer.

Configurer l’API Azure pour utiliser Auth0

Après avoir créé votre serveur d’autorisation OAuth 2.0 dans Azure, vous devrez mettre à jour votre API Azure pour qu’elle utilise Auth0 pour l’autorisation des utilisateurs :
  1. Dans la section APIs du menu de navigation, sélectionnez APIs.
  2. Sélectionnez l’API Basic Calculator, puis ouvrez la vue Design.
  3. Passez à la vue Settings.
  4. Accédez à la section Sécurité, puis sélectionnez OAuth 2.0 sous User Authorization.
  5. Pour le champ Authorization Server, sélectionnez le serveur que vous avez configuré à l’étape précédente.
  6. Cliquez sur Save.

Définir l’Allowed Callback URL dans Auth0

Une fois votre API Azure provisionnée et configurée pour utiliser Auth0 pour l’autorisation des utilisateurs, vous devrez mettre à jour votre application Auth0 :
  1. Accédez à Auth0 Dashboard > Applications > Applications.
  2. Sélectionnez votre application, puis passez à la vue Settings.
  3. Saisissez la Redirect URI que vous avez copiée précédemment dans le champ Allowed Callback URLs.
  4. Cliquez sur Save.

Testez l’intégration

Dans Azure Portal, ouvrez votre instance d’API Management Service.
  1. Sélectionnez console de développement pour lancer l’interface destinée aux développeurs de vos API.
  2. Accédez à APIs > Basic Calculator. Cette action ouvre la page où vous pouvez effectuer une requête GET qui vous permet d’additionner deux nombres entiers.
  3. Sélectionnez Try It. La page où vous pourrez entrer les paramètres de votre requête s’affichera.
  4. Accédez à la section Authorization, puis sélectionnez Authorization Code (à côté du champ Auth0).
  5. Une fenêtre contextuelle s’affichera avec le widget de connexion Auth0 (si ce n’est pas le cas, assurez-vous que les bloqueurs de fenêtres contextuelles sont désactivés dans votre navigateur). Entrez les identifiants de l’utilisateur Auth0 que vous avez créé à l’étape 4, puis connectez-vous.
  6. Si vous avez réussi à vous connecter, un message s’affichera avec la date d’expiration du jeton d’accès que vous pouvez utiliser pour appeler votre API.
  7. Accédez au bas de la page, puis sélectionnez Send. Si la requête réussit, vous verrez un message contenant la réponse HTTP 200 au bas de la page.

Configurer une politique de validation JWT pour les jetons d’accès

À l’étape précédente, l’utilisateur est invité à se connecter lorsqu’il tente d’effectuer une requête depuis la console de développement. La console de développement essaie d’obtenir un au nom de l’utilisateur afin de l’inclure dans la requête d’API. Tous les jetons d’accès sont transmis à l’API dans l’en-tête Authorization. Si vous souhaitez valider le jeton d’accès inclus dans chaque requête, vous pouvez le faire à l’aide de la politique Validate JWT. Consultez la documentation de Microsoft sur la configuration d’une politique dans API Management.