Partager via


Sécuriser les services principaux à l’aide de l’authentification par certificat client dans Gestion des API Azure

S'APPLIQUE À : Tous les niveaux de Gestion des API

Gestion des API vous permet de sécuriser l’accès au service principal d’une API à l’aide de certificats clients et d’authentification TLS mutuelle. Cet article explique comment gérer des certificats dans Gestion des API à l’aide du portail Azure. Il explique également comment configurer une API pour utiliser un certificat pour accéder à un service principal.

Vous pouvez également gérer les certificats Gestion des API à l’aide de l’API REST Gestion des API.

Options de certificat

Gestion des API fournit deux options pour gérer les certificats utilisés pour sécuriser l’accès aux services principaux :

  • Référencez un certificat géré dans Azure Key Vault.
  • Ajoutez un fichier de certificat directement dans Gestion des API.

Remarque

Actuellement, l’intégration avec Key Vault pour ce scénario n'est pas disponible dans les espaces de travail.

Nous vous recommandons d’utiliser des certificats key vault, car cela améliore la sécurité gestion des API :

  • Les certificats stockés dans des coffres de clés peuvent être réutilisés entre les services.
  • Les stratégies d’accès granulaires peuvent être appliquées aux certificats stockés dans des coffres de clés.
  • Les certificats mis à jour dans le coffre de clés sont automatiquement permutés dans Gestion des API. Après une mise à jour dans le coffre de clés, un certificat dans Gestion des API est mis à jour dans les quatre heures. Vous pouvez également actualiser manuellement le certificat à l’aide du portail Azure ou via l’API REST de gestion.

Prérequis

Remarque

Nous vous recommandons d’utiliser le module Azure Az PowerShell pour interagir avec Azure. Pour bien démarrer, consultez Installer Azure PowerShell. Pour savoir comment migrer vers le module Az PowerShell, consultez Migrer Azure PowerShell à partir d’AzureRM vers Az.

  • Si vous n’avez pas encore créé d’instance Gestion des API, consultez Créer une instance de service Gestion des API.

  • Configurez l’authentification par certificat client du service principal. Pour plus d’informations sur la configuration de l’authentification par certificat dans Azure App Service, consultez Configurer l’authentification mutuelle TLS dans App Service.

  • Vérifiez que vous avez accès au certificat et au mot de passe pour la gestion dans un coffre de clés Azure, ou un certificat à charger sur le service Gestion des API. Le certificat doit être au format PFX. Les certificats auto-signés sont autorisés.

  • Si vous utilisez un certificat auto-signé ou un autre certificat d’autorité de certification personnalisé et que votre instance Gestion des API se trouve dans l’un des niveaux classiques, installez les certificats d’autorité de certification racine et intermédiaire correspondants dans Gestion des API pour activer la validation du certificat de service principal. Pour plus d’informations, consultez Comment ajouter un certificat d’autorité de certification personnalisé dans Gestion des API Azure

    Si vous n’installez pas les certificats d’autorité de certification, Gestion des API ne peut pas valider le certificat de service principal et les demandes adressées au service principal échouent, sauf si vous désactivez la validation de la chaîne de certificats. Consultez Désactiver la validation de la chaîne de certificats pour les certificats auto-signés plus loin dans cet article.

    Important

    Si votre instance Gestion des API se trouve dans l’un des niveaux v2, vous ne pouvez configurer que les détails des certificats d’autorité de certification dans les informations d’identification d’autorisation d’un serveur principal. Pour plus d’informations, consultez les instructions relatives aux back-ends.

    Remarque

    Les certificats d’autorités de certification ne sont pas pris en charge dans le niveau Consommation.

Conditions préalables à l’intégration d’un coffre de clés

  1. Si vous n’avez pas encore de coffre de clés, créez-en un. Pour plus d’informations sur la création d’un coffre de clés, consultez Démarrage rapide : Créer un coffre de clés à l’aide du portail Azure.

  2. Activez une identité managée affectée par le système ou affectée par l’utilisateur dans Gestion des API.

Configurer l’accès au coffre de clés

  1. Dans le Portail Azure, accédez à votre coffre de clés.
  2. Dans le menu de gauche, sélectionnez Configurationd’accès aux>. Notez le modèle d’autorisation configuré.
  3. Selon le modèle d’autorisation, configurez une stratégie d’accès au coffre de clés ou un accès RBAC Azure pour une identité managée Gestion des API.

Pour ajouter une stratégie d’accès au coffre de clés :

  1. Dans le menu de gauche, sélectionnez Stratégies d’accès.
  2. Dans la page Stratégies d’accès, sélectionnez + Créer.
  3. Sous l’onglet Autorisations , sous Autorisations secrètes, sélectionnez Obtenir et Liste, puis sélectionnez Suivant.
  4. Sous l’onglet Principal , recherchez le nom de la ressource de votre identité managée, puis sélectionnez Suivant. Si vous utilisez une identité attribuée par le système, le principal est le nom de votre instance Gestion des API.
  5. Sélectionnez Suivant de nouveau. Sous l’onglet Review + create (Vérifier + créer), sélectionnez Créer.

Pour créer un certificat dans le coffre de clés ou importer un certificat dans le coffre de clés, consultez Démarrage rapide : Définir et récupérer un certificat à partir d’Azure Key Vault à l’aide du portail Azure.

Exigences pour le pare-feu Key Vault

Si le pare-feu Key Vault est activé sur votre coffre de clés, vous devez répondre à ces exigences :

  • Vous devez utiliser l’identité managée affectée par le système de l’instance Gestion des API pour accéder au coffre de clés.

  • Dans le pare-feu Key Vault, activez l’option Autoriser les services Microsoft approuvés à contourner ce pare-feu. Gestion des API prend en charge la connectivité du service approuvé afin d’accéder au coffre de clés pour les options de plan de contrôle.

  • Vérifiez que votre adresse IP du client local est autorisée à accéder temporairement au coffre de clés pendant que vous sélectionnez un certificat ou un secret à ajouter à Gestion des API Azure. Pour plus d’informations, consultez Configurer les paramètres de mise en réseau du Coffre de clés Azure.

    Une fois la configuration terminée, vous pouvez bloquer votre adresse client dans le pare-feu du coffre de clés.

Important

À compter de mars 2026, la connectivité de service de confiance aux services Azure à partir de la passerelle de gestion des API en activant le paramètre de pare-feu "Autoriser les services Microsoft approuvés à contourner ce pare-feu" ne sera plus prise en charge. Pour continuer à accéder à ces services à partir de la passerelle Gestion des API après cette modification, veillez à choisir une autre option d’accès réseau prise en charge. Pour les opérations de plan de contrôle, vous pouvez continuer à utiliser la connectivité du service approuvé. En savoir plus.

Conditions requises pour le réseau virtuel

Si l’instance Gestion des API est déployée dans un réseau virtuel, configurez également les paramètres réseau suivants :

  • Activez un point de terminaison de service sur Key Vault sur le sous-réseau Gestion des API.
  • Configurez une règle de groupe de sécurité réseau (NSG) pour autoriser le trafic sortant vers les balises de service AzureKeyVault et AzureActiveDirectory.

Pour plus d’informations, consultez Configuration réseau lors de la configuration de gestion des API dans un réseau virtuel.

Ajouter un certificat de coffre de clés

Voir Conditions préalables à l’intégration d’un coffre de clés.

Important

Pour ajouter un certificat de coffre de clés à votre instance Gestion des API, vous devez disposer des autorisations nécessaires pour répertorier les secrets à partir du coffre de clés.

Attention

Lorsque vous utilisez un certificat de coffre de clés dans Gestion des API, veillez à ne pas supprimer le certificat, le coffre de clés ou l’identité managée utilisée pour accéder au coffre de clés.

Pour ajouter un certificat de coffre de clés à Gestion des API :

  1. Dans le portail Azure, accédez à votre instance Gestion des API.

  2. Sous Sécurité, sélectionnez Certificats.

  3. Sélectionnez Certificats>+ Ajouter.

  4. Dans ID, entrez un nom.

  5. Dans Certificat, sélectionnez Coffre de clés.

  6. Entrez l’identificateur d’un certificat de coffre de clés ou choisissez Sélectionner pour choisir un certificat dans un coffre de clés.

    Important

    Si vous entrez vous-même l’identificateur d’un certificat de coffre de clés, soyez sûr qu’il ne contient pas d’informations de version. Sinon, le certificat n’est pas automatiquement permuté dans Gestion des API après une mise à jour dans le coffre de clés.

  7. Dans l’identité du client, sélectionnez une identité affectée par le système ou une identité managée affectée par l’utilisateur existante. Pour plus d’informations, voir Utiliser des identités managées dans Gestion des API.

    Remarque

    L’identité a besoin d’avoir des autorisations pour obtenir et lister les certificats du coffre de clés. Si vous n’avez pas encore configuré l’accès au coffre de clés, Gestion des API vous invite à configurer automatiquement l’identité avec les autorisations nécessaires.

  8. Sélectionnez Ajouter.

    Capture d’écran montrant comment ajouter un certificat key vault à Gestion des API dans le portail.

  9. Sélectionnez Enregistrer.

Téléchargement d'un certificat

Pour charger un certificat client dans Gestion des API :

  1. Dans le portail Azure, accédez à votre instance Gestion des API.

  2. Sous Sécurité, sélectionnez Certificats.

  3. Sélectionnez Certificats>+ Ajouter.

  4. Dans ID, entrez un nom.

  5. Dans Certificat, sélectionnez Personnalisé.

  6. Accédez au fichier .pfx du certificat, sélectionnez-le et entrez son mot de passe.

  7. Sélectionnez Ajouter.

    Capture d’écran du chargement d’un certificat client vers le service Gestion des API dans le portail.

  8. Sélectionnez Enregistrer.

Une fois le certificat chargé, il s’affiche dans la fenêtre Certificats. Si vous avez de nombreux certificats, notez l’empreinte numérique du certificat que vous venez de charger. Vous en aurez besoin pour configurer une API pour utiliser le certificat client pour l’authentification de passerelle.

Configurer une API afin d’utiliser un certificat client pour l’authentification de passerelle

  1. Dans le portail Azure, accédez à votre instance Gestion des API.

  2. Sous API, sélectionnez API.

  3. Sélectionnez une API dans la liste.

  4. Sous l’onglet Création , sélectionnez l’icône de crayon dans la section Back-end .

  5. Dans les informations d’identification de la passerelle, sélectionnez Certificat client , puis sélectionnez votre certificat dans la liste des certificats clients .

  6. Sélectionnez Enregistrer.

    Utiliser un certificat client pour l’authentification de passerelle

Attention

Cette modification prend effet immédiatement. Les appels aux opérations de l’API utilisent le certificat pour s’authentifier sur le serveur principal.

Conseil

Lorsqu’un certificat est spécifié pour l’authentification de passerelle pour le service principal d’une API, il fait partie de la stratégie de cette API et peut être consulté dans l’éditeur de stratégie.

Désactiver la validation de la chaîne de certificats pour les certificats auto-signés

Si vous utilisez des certificats auto-signés et que votre instance Gestion des API se trouve dans l’un des niveaux classiques, vous devez désactiver la validation de la chaîne de certificats pour permettre à Gestion des API de communiquer avec le système principal. Sinon, vous obtiendrez un code d’erreur 500. Pour désactiver cette validation, vous pouvez utiliser les New-AzApiManagementBackend applets de commande PowerShell (pour un nouveau back-end) ou Set-AzApiManagementBackend (pour un back-end existant) et définir le -SkipCertificateChainValidation paramètre sur True:

$context = New-AzApiManagementContext -ResourceGroupName 'ContosoResourceGroup' -ServiceName 'ContosoAPIMService'
New-AzApiManagementBackend -Context  $context -Url 'https://contoso.com/myapi' -Protocol http -SkipCertificateChainValidation $true

Vous pouvez également désactiver la validation de la chaîne de certificats à l’aide de l’API REST back-end.

Supprimer un certificat client

Pour supprimer un certificat, sélectionnez Supprimer dans le menu points de suspension (...) :

Supprimer un certificat

Important

Si le certificat est référencé par des politiques, un écran d’avertissement s’affiche. Pour supprimer le certificat, vous devez d’abord le supprimer de toutes les stratégies configurées pour l’utiliser.