Az - API Management
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
Informations de base
Azure API Management (APIM) est un service entiĂšrement managĂ© qui propose une plateforme unifiĂ©e pour publier, sĂ©curiser, transformer, gĂ©rer et surveiller les API. Il permet aux organisations de centraliser leur stratĂ©gie dâAPI et dâassurer une gouvernance, des performances et une sĂ©curitĂ© cohĂ©rentes pour lâensemble de leurs services. En servant de couche dâabstraction entre les services backend et les consommateurs dâAPI, APIM simplifie lâintĂ©gration et amĂ©liore la maintenabilitĂ© tout en fournissant des capacitĂ©s opĂ©rationnelles et de sĂ©curitĂ© essentielles.
Concepts clés
The API Gateway sert de point dâentrĂ©e unique pour tout le trafic API, gĂ©rant des fonctions telles que le routage des requĂȘtes vers les services backend, lâapplication de limites de dĂ©bit, la mise en cache des rĂ©ponses, et la gestion de lâauthentification et de lâautorisation. Cette passerelle est entiĂšrement hĂ©bergĂ©e et gĂ©rĂ©e par Azure, garantissant haute disponibilitĂ© et scalabilitĂ©.
The Developer Portal fournit un environnement en libre-service oĂč les consommateurs dâAPI peuvent dĂ©couvrir les API disponibles, lire la documentation et tester les endpoints. Il facilite lâonboarding en proposant des outils interactifs et lâaccĂšs aux informations de subscription.
The Management Portal (Management Plane) est utilisĂ© par les administrateurs pour configurer et maintenir le service APIM. Depuis cet endroit, les utilisateurs peuvent dĂ©finir des APIs et des opĂ©rations, configurer le contrĂŽle dâaccĂšs, appliquer des politiques, gĂ©rer les utilisateurs et organiser les APIs en produits. Ce portail centralise lâadministration et garantit une gouvernance cohĂ©rente des API.
Authentification et autorisation
Azure API Management supporte plusieurs mĂ©canismes dâauthentification pour sĂ©curiser lâaccĂšs aux API. Ceux-ci incluent les clĂ©s dâabonnement, les OAuth 2.0 tokens et les certificats client. APIM sâintĂšgre Ă©galement nativement avec Microsoft Entra ID, permettant la gestion des identitĂ©s au niveau entreprise et un accĂšs sĂ©curisĂ© aux API et aux services backend.
Politiques
Les politiques dans APIM permettent aux administrateurs de personnaliser le traitement des requĂȘtes et des rĂ©ponses Ă diffĂ©rents niveaux de granularitĂ©, y compris le service, lâAPI, lâopĂ©ration ou le produit. GrĂące aux politiques, il est possible dâappliquer la validation de JWT, de transformer des payloads XML ou JSON, dâappliquer des limites de dĂ©bit, de restreindre les appels par adresse IP, ou de sâauthentifier auprĂšs des services backend en utilisant des identitĂ©s gĂ©rĂ©es. Les politiques sont trĂšs flexibles et constituent lâune des forces principales de la plateforme API Management, permettant un contrĂŽle fin du comportement au runtime sans modifier le code backend.
Named Values
Le service propose un mĂ©canisme appelĂ© Named Values, qui permet de stocker des informations de configuration telles que des secrets, des API keys, ou dâautres valeurs requises par les politiques.
Ces valeurs peuvent ĂȘtre stockĂ©es directement dans APIM ou rĂ©fĂ©rencĂ©es de maniĂšre sĂ©curisĂ©e depuis Azure Key Vault. Named Values favorisent une gestion centralisĂ©e et sĂ©curisĂ©e des donnĂ©es de configuration et simplifient la rĂ©daction des politiques en autorisant des rĂ©fĂ©rences rĂ©utilisables plutĂŽt que des valeurs codĂ©es en dur.
Intégration réseau et sécurité
Azure API Management sâintĂšgre parfaitement aux environnements Virtual Network (VNet), permettant une connectivitĂ© privĂ©e et sĂ©curisĂ©e vers les systĂšmes backend.
Lorsquâil est dĂ©ployĂ© Ă lâintĂ©rieur dâun Virtual Network (VNet), APIM peut accĂ©der aux services internes sans les exposer publiquement. Le service permet Ă©galement la configuration de certificats personnalisĂ©s pour prendre en charge mutual TLS authentication avec les services backend, renforçant la sĂ©curitĂ© dans les scĂ©narios nĂ©cessitant une validation dâidentitĂ© forte.
Ces fonctionnalités réseau rendent APIM adapté aux architectures cloud-native et hybrides.
ĂnumĂ©rer
Pour énumérer le service API Management :
# Lists all Named Values configured in the Azure API Management instance
az apim nv list --resource-group <resource-group> --service-name <service-name>
# Retrieves all policies applied at the API level in raw XML format
az rest --method GET \
--uri "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ApiManagement/service/<service-name>/apis/<api-id>/policies/?api-version=2024-05-01&format=rawxml"
# Retrieves the effective policy for a specific API in raw XML format
az rest --method GET \
--uri "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ApiManagement/service/<service-name>/apis/<api-id>/policies/policy?api-version=2024-05-01&format=rawxml"
# Gets the configuration details of the APIM service instance
az rest --method GET \
--uri "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ApiManagement/service/<apim>?api-version=2024-05-01"
# Lists all backend services registered in the APIM instance
az rest --method GET \
--uri "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ApiManagement/service/<service-name>/backends?api-version=2024-05-01"
# Retrieves details of a specific backend service
az rest --method GET \
--uri "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ApiManagement/service/<service-name>/backends/<backend-id>?api-version=2024-05-01"
# Gets general information about the APIM service
az rest --method GET \
--uri "https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ApiManagement/service/<service-name>?api-version=2024-05-01"
# Calls an exposed API endpoint through the APIM gateway
curl https://<apim>.azure-api.net/<api-path>
Tip
Apprenez & pratiquez AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Apprenez & pratiquez GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Apprenez & pratiquez Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Soutenez HackTricks
- Consultez les subscription plans!
- Rejoignez le đŹ Discord group ou le telegram group ou suivez-nous sur Twitter đŠ @hacktricks_live.
- Partagez des hacking tricks en soumettant des PRs aux HackTricks et HackTricks Cloud github repos.
HackTricks Cloud

