Déployez votre instance Gestion des API Azure sur un réseau virtuel – mode externe
S'APPLIQUE À : développeur | Premium
Gestion des API Azure peut être déployé (injecté) dans un réseau virtuel Azure (VNet) pour accéder aux services backend au sein du réseau. Pour connaître les options de connectivité de VNet, les exigences et les considérations, consultez :
- Utiliser un réseau virtuel avec la Gestion des API Azure
- Exigences en matière de ressources de réseau virtuel pour l’injection de Gestion des API dans un réseau virtuel
Cet article explique comment configurer la connectivité VNet pour votre instance Gestion des API en mode externe, où le portail des développeurs, la passerelle API et d’autres points de terminaison de Gestion des API sont accessibles à partir de l’Internet public, et les services back-en sont situés dans le réseau.
Pour les configurations spécifiques au mode interne, où les points de terminaison sont accessibles uniquement au sein du réseau virtuel, consultez Déployer votre instance de Gestion des API Azure sur un réseau virtuel – mode interne.
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 depuis AzureRM vers Az.
Prérequis
Passez en revue la configuration requise pour l’injection de gestion des API dans un réseau virtuel avant de commencer.
Certains prérequis varient en fonction de la version (stv2
ou stv1
) de la stv2
qui héberge votre instance Gestion des API.
Conseil
Quand vous utilisez le portail pour créer ou mettre à jour la connexion réseau d’une instance Gestion des API existante, l’instance est hébergée sur la plateforme de calcul stv2
.
- Une instance APIM. Pour en savoir plus, voir Créer une instance de gestion des API Azure.
Un réseau et un sous-réseau virtuels dans la même région et le même abonnement que votre instance Gestion des API.
- Le sous-réseau utilisé pour se connecter à l’instance Gestion des API peut contenir d’autres types de ressources Azure.
- Aucune délégation ne doit être activée pour le sous-réseau. Le paramètre Déléguer le sous-réseau à un service pour le sous-réseau doit être défini sur Aucun.
Un groupe de sécurité réseau associé au sous-réseau ci-dessus. Un groupe de sécurité réseau (NSG) est nécessaire pour autoriser explicitement la connectivité entrante, car l’équilibreur de charge utilisé en interne par Gestion des API est sécurisé par défaut et rejette tout le trafic entrant. Pour une configuration spécifique, consultez Configurer des règles NSG plus loin dans cet article.
Pour certains scénarios, activez des points de terminaison de service dans le sous-réseau pour des services dépendants tels que Stockage Azure ou Azure SQL. Pour obtenir plus d’informations, consultez Forcer le tunneling du trafic vers le pare-feu local à l’aide d’ExpressRoute ou de l’appliance virtuelle réseau plus loin dans cet article.
(Facultatif) Une adresse IPv4 publique de la référence SKU Standard.
Important
- Depuis mai 2024, il n’est plus nécessaire de disposer d’une ressource d’adresse IP publique lors du déploiement (injection) d’une instance de Gestion des API dans un réseau virtuel en mode interne ou lors de la migration de la configuration d’un réseau virtuel interne vers un nouveau sous-réseau. En mode réseau virtuel externe, la spécification d’une adresse IP publique est facultative. Si vous n’en fournissez pas, une adresse IP publique gérée par Azure est automatiquement configurée et utilisée pour le trafic de l’API runtime. Ne fournissez l’adresse IP publique uniquement si vous souhaitez posséder et contrôler l’adresse IP publique utilisée pour les communications entrantes ou sortantes vers Internet.
Si elle est fournie, l’adresse IP doit être dans la même région et le même abonnement que l’instance Gestion des API et le réseau virtuel.
Lorsque vous créez une ressource d’adresse IP publique, veillez à lui attribuer une étiquette de nom DNS. En général, vous devez utiliser le même nom DNS que votre instance Gestion des API. Si vous le modifiez, redéployez votre instance afin que la nouvelle étiquette DNS soit appliquée.
Pour des performances réseau optimales, il est recommandé d’utiliser la préférence de routage par défaut : réseau Microsoft.
Lors de la création d’une adresse IP publique dans une région où vous envisagez d’activer la redondance de zone pour votre instance de Gestion des API, configurez le paramètre redondant interzone.
La valeur de l’adresse IP est affectée en tant qu’adresse IPv4 publique virtuelle de l’instance Gestion des API dans cette région.
Pour les déploiements de Gestion des API dans plusieurs régions, configurez les ressources de réseau virtuel séparément pour chaque emplacement.
Activer la connexion au réseau virtuel
Activer la connectivité aux réseaux virtuels à l’aide du portail Azure (plateforme de calcul stv2
)
Accédez au portail Azure pour rechercher votre instance Gestion des API. Recherchez et sélectionnez Services Gestion des API.
Choisissez votre instance Gestion des API.
Sélectionnez Réseau.
Sélectionnez le type d’accès Externe.
Dans la liste des localisations (régions) où votre service Gestion des API est provisionné :
- Choisissez un Emplacement.
- Sélectionnez Réseau virtuel, Sous-réseau et (éventuellement) Adresse IP.
La liste des réseaux virtuels contient les réseaux virtuels Resource Manager, disponibles dans vos abonnements Azure, qui sont installés dans la région que vous configurez.
Sélectionnez Appliquer. La page Réseau de votre instance Gestion des API est mise à jour avec vos nouveaux choix de réseau virtuel et de sous-réseau.
Poursuivez la configuration des paramètres de réseau virtuel pour les autres emplacements de votre instance de Gestion des API.
Dans la barre de navigation supérieure, sélectionnez Enregistrer.
La mise à jour de l’instance Gestion des API peut prendre de 15 à 45 minutes. Les instances du niveau Développeur ont un temps d’arrêt pendant le processus. Les instances du niveau Premium n’ont pas de temps d’arrêt pendant le processus.
Activer la connectivité à l’aide d’un modèle Resource Manager (plateforme de calcul stv2
)
Modèle Azure Resource Manager (Version API 2021-08-01)
Activer la connectivité à l’aide de cmdlets Azure PowerShell (plateforme stv1
)
Créez ou mettez à jour une instance de Gestion des API dans un réseau virtuel.
Configurer les règles du groupe de sécurité réseau
Configurez des règles de réseau personnalisées dans le sous-réseau Gestion des API pour filtrer le trafic vers et à partir de votre instance de Gestion des API. Nous vous recommandons d’utiliser les règles NSG minimales suivantes pour garantir le bon fonctionnement et l’accès à votre instance. Passez soigneusement en revue votre environnement pour déterminer si d’autres règles sont nécessaires.
Important
En fonction de votre utilisation de la mise en cache et d’autres fonctionnalités, il est possible que vous deviez configurer des règles NSG supplémentaires au-delà des règles minimales du tableau suivant. Pour plus d’informations sur les paramètres, consultez Informations de référence sur la configuration de réseau virtuel.
- Pour la plupart des scénarios, utilisez les étiquettes de service indiquées au lieu des adresses IP de service pour spécifier les sources et les destinations réseau.
- Affectez à ces règles une priorité supérieure à celle des règles par défaut.
Port(s) source / de destination | Sens | Protocole de transfert | Balises de service Source / Destination |
Objectif | Type de réseau virtuel |
---|---|---|---|---|---|
* / [80], 443 | Trafic entrant | TCP | Internet / Réseau virtuel | Communication client avec Gestion des API | Externe uniquement |
* / 3443 | Trafic entrant | TCP | ApiManagement / VirtualNetwork | Point de terminaison de gestion pour le Portail Azure et PowerShell | Externe et interne |
* / 6390 | Trafic entrant | TCP | AzureLoadBalancer / VirtualNetwork | Équilibrage de charge de l’infrastructure Azure | Externe et interne |
* / 443 | Trafic entrant | TCP | AzureTrafficManager / VirtualNetwork | Routage Azure Traffic Manager pour le déploiement multi-région | Externe uniquement |
* / 443 | Règle de trafic sortant | TCP | VirtualNetwork / Stockage | Dépendance sur stockage Azure pour les fonctionnalités de service de base | Externe et interne |
* / 1433 | Règle de trafic sortant | TCP | VirtualNetwork / SQL | Accès aux points de terminaison Azure SQL pour les fonctionnalités de service de base | Externe et interne |
* / 443 | Règle de trafic sortant | TCP | VirtualNetwork / AzureKeyVault | Accès à Azure Key Vault pour les fonctionnalités de service de base | Externe et interne |
* / 1886, 443 | Règle de trafic sortant | TCP | VirtualNetwork / AzureMonitor | Publier les journaux et métriques de diagnostic, Resource Health et Application Insights | Externe et interne |
Se connecter à un service web hébergé sur un réseau virtuel
Une fois que vous avez connecté votre service Gestion des API au réseau virtuel, vous pouvez accéder aux services back-end qu’il contient comme vous le feriez avec des services publics. Lorsque vous créez ou modifiez une API, tapez l’adresse IP locale ou le nom d’hôte (si un serveur DNS est configuré pour le réseau virtuel) de votre service web dans le champ URL du service web.
Configuration d’un serveur DNS personnalisé
En mode VNet externe, Azure gère le DNS par défaut. Vous pouvez éventuellement configurer un serveur DNS personnalisé.
le service de la gestion des API dépend de plusieurs services Azure. Si la gestion des API est hébergée dans un réseau virtuel comportant un serveur DNS personnalisé, il doit résoudre les noms d’hôte de ces services Azure.
- Pour obtenir des conseils sur la configuration de DNS personnalisée, y compris le transfert pour les noms d’hôte fournis par Azure, consultez Résolution de noms pour les ressources dans les réseaux virtuels Azure.
- L’accès au réseau sortant sur le port
53
est nécessaire pour la communication avec des serveurs DNS. Pour plus d’informations sur les paramètres, consultez Référence de configuration du réseau virtuel.
Important
Si vous envisagez d’utiliser des serveurs DNS personnalisés pour le réseau virtuel, vous devez les configurer avant d’y déployer un service Gestion des API. Sinon, vous devez mettre à jour le service Gestion des API chaque fois que vous changez les serveurs DNS en exécutant l’opération Appliquer une configuration réseau.
Routage
- Une adresse IP publique à charge équilibrée (adresse IP virtuelle) est réservée pour fournir l’accès aux points de terminaison et ressources de Gestion des API en dehors du réseau virtuel.
- L’adresse IP publique se trouve dans le panneau Vue d’ensemble/Bases sur le portail Azure.
Pour plus d’informations et d’éléments à prendre en considération, consultez Adresses IP de gestion des API Azure.
Adresses IP virtuelles et adresses DIP
Des adresses IP dynamiques (DIP) seront attribuées à chaque machine virtuelle sous-jacente du service et utilisées pour accéder aux points de terminaison et aux ressources au sein du réseau virtuel et des réseaux virtuels appairés. L’adresse IP virtuelle (VIP) publique du service Gestion des API est utilisée pour accéder aux ressources publiques.
Si une restriction d’IP liste des ressources sécurisées au sein du réseau virtuel ou des réseaux virtuels appairés, nous vous conseillons de préciser la plage entière du sous-réseau où le service Gestion des API est déployé pour accorder ou restreindre l’accès à partir du service.
En savoir plus sur la taille de sous-réseau recommandée.
Forcer le tunneling du trafic vers le pare-feu local à l’aide d’ExpressRoute ou de l’appliance virtuelle réseau
Un tunneling forcé vous permet de rediriger ou de « forcer » tout le trafic Internet vers votre sous-réseau localement à des fins d'inspection et d'audit. Généralement, vous configurez et définissez votre propre route par défaut (0.0.0.0/0
), ce qui force tout le trafic du sous-réseau Gestion des API à traverser un pare-feu local ou une appliance virtuelle réseau. Ce flux de trafic interrompt la connectivité avec la Gestion des API Azure, car le trafic sortant est bloqué en local ou fait l’objet d’une opération NAT sur un jeu d’adresses non reconnaissable qui ne fonctionne plus avec différents points de terminaison Azure. Vous pouvez résoudre ce problème en appliquant les méthodes suivantes :
Activez les points de terminaison de service sur le sous-réseau où le service Gestion des API est déployé pour :
- Azure SQL (requis uniquement dans la région primaire si le service Gestion des API est déployé dans plusieurs régions)
- Stockage Azure
- Hubs d'événements Azure
- Azure Key Vault (requis lorsque la Gestion des API est déployée sur la plateforme
stv2
)
En activant des points de terminaison directement du sous-réseau Gestion des API vers ces services, vous pouvez utiliser le réseau principal Microsoft Azure pour un routage optimal du trafic du service. Si vous utilisez des points de terminaison de service avec le service Gestion des API tunnelisé de force, le trafic des services Azure susmentionnés n’est pas tunnelisé de force. Cependant, l’autre trafic de dépendance du service Gestion des API est tunnelisé de force. Assurez-vous que votre pare-feu ou votre appliance virtuelle ne bloque pas ce trafic, ou que le service Gestion des API ne fonctionne pas correctement.
Notes
Nous vous recommandons vivement d’activer les points de terminaison des services directement à partir du sous-réseau Gestion des API vers les services dépendants tels qu’Azure SQL et Stockage Azure qui les prennent en charge. Toutefois, certaines organisations peuvent avoir besoin de forcer le tunneling de l’ensemble du trafic à partir du sous-réseau Gestion des API. Dans ce cas, veillez à configurer votre pare-feu ou votre appliance virtuelle pour autoriser ce trafic. Vous devez autoriser la plage d’adresses IP complète de chaque service dépendant et mettre à jour cette configuration quand l’infrastructure Azure change. Votre service Gestion des API peut également faire l’objet d’une latence ou d’expirations de délai inattendus en raison du tunneling forcé de ce trafic réseau.
Tout le trafic du plan de contrôle provenant d’Internet vers le point de terminaison de gestion de votre service Gestion des API est acheminé via un ensemble spécifique d’adresses IP entrantes, hébergées par la Gestion des API et regroupées sous la balise de service ApiManagement. Lorsque le trafic est tunnelisé de force, les réponses ne sont pas mappées de manière symétrique à ces adresses IP sources entrantes et la connectivité au point de terminaison de gestion est perdue. Pour surmonter cette limitation, configurez une route définie par l’utilisateur (UDR) pour l’étiquette de service ApiManagement avec le type de tronçon suivant défini sur « Internet » pour renvoyer le trafic vers Azure.
Remarque
L’autorisation du trafic de gestion de la Gestion des API pour contourner un pare-feu local ou une appliance virtuelle réseau n’est pas considérée comme un risque de sécurité significatif. La configuration recommandée pour votre sous-réseau Gestion des API autorise le trafic de gestion entrant sur le port 3443 uniquement à partir de l’ensemble d’adresses IP Azure comprises par l’étiquette de service ApiManagement. La configuration UDR recommandée n’est que pour le chemin d’accès de retour de ce trafic Azure.
(Mode réseau virtuel externe) Le trafic de plan de données pour les clients tentant d’atteindre la passerelle Gestion des API et le portail des développeurs à partir d’Internet sera également supprimé par défaut en raison du routage asymétrique introduit par le tunneling forcé. Pour chaque client qui nécessite un accès, configurez un UDR explicite avec le type de tronçon suivant « Internet » pour contourner le pare-feu ou l’appliance de réseau virtuel.
Pour les autres dépendances du service Gestion des API tunnelisées de force, résolvez le nom d’hôte et atteignez le point de terminaison. Il s’agit notamment des paramètres suivants :
- Métriques et supervision de l’intégrité
- Diagnostics du portail Azure
- Relais SMTP
- CAPTCHA du portail des développeurs
- Serveur Azure KMS
Pour plus d'informations, consultez Référence de configuration de réseau virtuel.
Problèmes courants liés à la configuration réseau
Cette section a été déplacée. Consultez Informations de référence sur la configuration de réseau virtuel.
Résolution des problèmes
Échec du déploiement initial du service Gestion des API dans un sous-réseau
- Déployer une machine virtuelle dans le même sous-réseau.
- Connectez-vous à la machine virtuelle et vérifiez la connectivité à chacune des ressources suivantes de votre abonnement Azure :
- Stockage Blob Azure
- Azure SQL Database
- Azure Storage Table
- Azure Key Vault (pour une instance Gestion des API hébergée sur la plateforme
stv2
)
Important
Après avoir validé la connectivité, supprimez toutes les ressources du sous-réseau avant de déployer la Gestion des API dans le sous-réseau (nécessaire quand la Gestion des API est hébergée sur la plateforme stv1
).
Vérifier l’état du réseau
Après avoir déployé Gestion des API dans le sous-réseau, utilisez le portail pour vérifier la connectivité de votre instance aux dépendances, telles que Stockage Azure.
Dans le menu de gauche du portail, sous Déploiement et infrastructure, sélectionnez Réseau>État du réseau.
Filtrer | Description |
---|---|
Obligatoire | Sélectionnez cette option pour vérifier la connectivité aux services Azure requis pour Gestion des API. Un échec indique que l’instance ne peut pas effectuer des opérations de base pour gérer les API. |
Facultatif | Sélectionnez cette option pour vérifier la connectivité aux services facultatifs. Tout échec indique uniquement que la fonctionnalité spécifique ne fonctionnera pas (par exemple, SMTP). Un échec peut entraîner une dégradation dans l’utilisation et la surveillance de l’instance de Gestion des API et empêcher d’offrir le contrat SLA validé. |
Pour résoudre les problèmes de connectivité, sélectionnez :
Métriques : pour passer en revue les métriques de l’état de la connectivité réseau
Diagnostiquer : pour exécuter un vérificateur de réseau virtuel sur une période spécifiée
Pour résoudre les problèmes de connectivité, consultez les paramètres de configuration réseau, puis corrigez les paramètres réseau nécessaires.
Mises à jour incrémentielles
Lorsque vous changez votre réseau, consultez API NetworkStatus pour vérifier que le service Gestion des API n’a pas perdu l’accès aux ressources critiques. L’état de connectivité doit être mis à jour toutes les 15 minutes.
Pour appliquer une modification de configuration du réseau à l’instance de Gestion des API à l’aide du portail :
- Dans le menu de gauche de votre instance, sous Déploiement et infrastructure, sélectionnez Réseau>Réseau virtuel.
- Sélectionnez Appliquer la configuration du réseau.
Liens de navigation dans les ressources
Une instance API Management hébergée sur la plateforme de calculstv1
, quand elle est déployée dans un sous-réseau de réseau virtuel Resource Manager, réserve le sous-réseau en créant un lien de navigation dans les ressources. Si le sous-réseau contient déjà une ressource d’un autre fournisseur, le déploiement échoue. De même, lorsque vous supprimez un service Gestion des API ou le déplacez vers un sous-réseau différent, le lien de navigation des ressources est supprimé.
Problèmes rencontrés lors de la réaffectation d’une instance API Management à un sous-réseau précédent
- Verrou de réseau virtuel : lorsque vous déplacez une instance Gestion des API vers son sous-réseau d’origine, il est possible que le verrou de réseau virtuel empêcher une réaffectation immédiate, avec une suppression qui peut prendre jusqu’à une heure. Si le sous-réseau d’origine a d’autres services API Management basés sur une plateforme
stv1
, sa suppression et une attente sont nécessaires pour déployer un servicestv2
basé sur une plateforme dans le même sous-réseau. - Verrou de groupe de ressources : un autre scénario à envisager est la présence d’un verrou d’étendue au niveau du groupe de ressources ou à un niveau supérieur, ce qui entrave le processus de suppression du lien de navigation dans les ressources. Pour résoudre ce problème, supprimez le verrou d’étendue. Prévoyez alors un délai approximatif de 4 à 6 heures avant que le service API Management se dissocie du sous-réseau d’origine et que le verrou soit supprimé, permettant ainsi le déploiement sur le sous-réseau souhaité.
Résoudre des problèmes de connexion à Microsoft Graph dans un VNet
Une connectivité réseau à Microsoft Graph est nécessaire pour les fonctionnalités, notamment une connexion utilisateur dans le portail des développeurs en utilisant le fournisseur d’identité Microsoft Entra.
Pour résoudre des problèmes de connectivité à Microsoft Graph à partir d’un VNet :
Vérifiez qu’un NSG et d’autres règles de réseau sont configurés pour une connectivité sortante à partir de votre instance API Management dans Microsoft Graph (en utilisant une étiquette de service AzureActiveDirectory).
Vérifiez que le réseau et la résolution DNS accèdent à
graph.microsoft.com
à partir du réseau virtuel. Par exemple, approvisionnez une machine virtuelle dans le réseau virtuel, connectez-vous-y et essayez deGET https://graph.microsoft.com/v1.0/$metadata
à partir d’un navigateur ou en utilisant cURL, PowerShell ou d’autres outils.
Étapes suivantes
Pour en savoir plus :
- Référence de configuration du réseau virtuel
- Connexion d’un réseau virtuel à un back-end à l’aide de la passerelle VPN
- Connexion d’un réseau virtuel à partir de modèles de déploiement différents
- Déboguer vos API à l’aide du suivi des demandes
- Questions fréquentes (FAQ) sur les réseaux virtuels
- Balises de service