Sécuriser l'accès à distance avec le proxy d'application Azure AD

Sécuriser l'accès à distance avec le proxy d'application Azure AD

14/03/2025

Cet article technique et pédagogique vise à guider les analystes de sécurité, les administrateurs informatiques et les ingénieurs système dans la mise en œuvre et la configuration du proxy d'application Azure AD pour sécuriser l'accès à distance aux applications Web sur site. Dans un environnement de travail hybride, où les utilisateurs doivent accéder aux ressources internes depuis n'importe où, la sécurité de cet accès est fondamentale. Azure AD Application Proxy fournit une solution sécurisée et simplifiée pour la publication d'applications Web sur site pour des utilisateurs distants sans avoir besoin de VPN ou de DMZ complexes [1].

Présentation

Traditionnellement, l'accès à distance aux applications internes nécessitait la configuration de réseaux privés virtuels (VPN) ou l'exposition des applications à des réseaux de périmètre (DMZ), ce qui ajoutait de la complexité et générait des vecteurs d'attaque potentiels. Avec l’adoption croissante de modèles de travail à distance et hybrides, les organisations ont besoin d’un moyen plus sécurisé et plus efficace pour fournir un accès aux applications existantes qui résident toujours sur site [2].

Azure AD Application Proxy est une fonctionnalité d'Azure Active Directory (maintenant Microsoft Entra ID) qui permet aux utilisateurs d'accéder en toute sécurité aux applications Web sur site depuis n'importe quel emplacement. Il agit comme un proxy inverse, acheminant le trafic des applications internes via Azure AD, qui gère l'authentification et l'autorisation. Cela signifie que les applications sur site sont accessibles comme s'il s'agissait d'applications SaaS, en tirant parti des fonctionnalités de sécurité d'Azure AD telles que l'authentification multifacteur (MFA) et l'accès conditionnel [3].

Ce guide pratique couvrira les prérequis, l'installation et la configuration des connecteurs Application Proxy, la publication de différents types d'applications (applications Web, client Web de bureau à distance, SharePoint), l'intégration avec les politiques d'accès conditionnel et comment tester et valider l'accès à distance. Des instructions étape par étape, des exemples pratiques et des explications concises seront fournis afin que le lecteur puisse implémenter, tester et valider ces fonctionnalités. De plus, des conseils de sécurité, des contrôles de conformité et des bonnes pratiques seront abordés pour garantir un accès à distance sûr et efficace, de manière autonome, professionnelle et fiable.

Pourquoi le proxy d'application Azure AD est-il crucial pour l'accès à distance ?

  • Sécurité améliorée : centralise l'authentification et l'autorisation dans Azure AD, permettant l'utilisation de fonctionnalités de sécurité telles que MFA, l'accès conditionnel et la protection de l'identité pour les applications sur site.
  • Accès simplifié : offre une expérience d'authentification unique (SSO) pour les applications sur site, facilitant ainsi l'accès aux utilisateurs.
  • Réduction de la complexité : élimine le besoin de VPN ou de DMZ pour l'accès à distance, simplifiant ainsi l'architecture réseau et réduisant la surface d'attaque.
  • Économique : utilise l'infrastructure Azure AD existante, sans avoir besoin de matériel ou de logiciels supplémentaires pour l'accès à distance.
  • Publication flexible : prend en charge la publication d'un large éventail d'applications Web, notamment les applications basées sur des en-têtes, SharePoint, le client Web de bureau à distance et d'autres applications Web personnalisées.

Prérequis

Pour configurer le proxy d'application Azure AD, vous aurez besoin des éléments suivants :

  1. Licence : un abonnement Azure AD Premium P1 ou P2 (ou une licence qui inclut ces fonctionnalités, comme Microsoft 365 E3/E5) [4].
  2. Accès administrateur : un compte avec le rôle « Administrateur global » ou « Administrateur d'application » dans le portail Azure (https://portal.azure.com).
  3. Windows Server pour Connector : un serveur Windows Server (2012 R2 ou version ultérieure) au sein de votre réseau sur site disposant d'une connectivité aux applications que vous souhaitez publier et à Azure AD. Ce serveur doit disposer d'un accès Internet sortant (ports 80 et 443 pour Azure AD et 443 pour le service Azure AD Application Proxy) [5].
  4. Applications Web sur site : applications Web internes que vous souhaitez rendre accessibles à distance.
  5. Domaine personnalisé (facultatif) : un domaine personnalisé vérifié dans Azure AD si vous souhaitez utiliser des URL conviviales pour vos applications publiées.

Étape par étape : configuration du proxy d'application Azure AD

Configurons le proxy d'application et publions une application.

1. Installation et configuration du connecteur proxy d'application

Le connecteur est un agent léger qui connecteà Azure AD et à vos applications locales.

  1. Ouvrez votre navigateur et accédez au portail Azure : « https://portal.azure.com ».
  2. Connectez-vous avec un compte disposant des autorisations nécessaires.
  3. Dans le champ de recherche supérieur, tapez « Azure Active Directory » et sélectionnez-le dans les résultats.
  4. Dans le volet de navigation de gauche, sélectionnez Application Proxy sous « Gérer ».
  5. Cliquez sur « Télécharger le service de connecteur ».

  6. Sur le serveur Windows local que vous avez désigné pour le connecteur :

    • Téléchargez et exécutez le programme d'installation du connecteur (AADApplicationProxyConnectorInstaller.exe).
    • Suivez les instructions de l'assistant d'installation. Lors de l'installation, vous serez invité à vous connecter avec vos informations d'identification d'administrateur global Azure AD.
    • Après une installation réussie, le service de connecteur démarrera automatiquement.
  7. De retour dans le portail Azure, sur la page Proxy d'application, vérifiez que le connecteur nouvellement installé apparaît dans la liste « Connecteurs » avec le statut « Actif ».

    • Explication : Il est recommandé d'installer au moins deux connecteurs pour la haute disponibilité et l'équilibrage de charge. Les connecteurs se mettent à jour automatiquement, garantissant que vous disposez toujours de la dernière version.

2. Publication d'une application Web sur site

Publions une application Web interne. Pour cet exemple, imaginez que nous ayons une application Web interne appelée « MinhaAppInterna » accessible sur « http://minhaappinterna.local:8080 ».

  1. Dans le volet de navigation de gauche d'Azure Active Directory, sélectionnez Applications d'entreprise sous « Gérer ».
  2. Cliquez sur « + Nouvelle application ».
  3. Cliquez sur « Intégrer toute autre application que vous ne trouvez pas dans la galerie (hors galerie) ».
  4. Bases :
    • Nom : donnez un nom significatif (par exemple MyInternal-ProxyApp).
    • Type d'application : sélectionnez « Application sur site ».
  5. Cliquez sur « Ajouter ».

  6. Après avoir créé l'application, vous serez redirigé vers la page de gestion des applications. Dans le volet de navigation de gauche, sélectionnez Application Proxy sous « Gérer ».

  7. Paramètres de base :

    • URL interne : Saisissez l'URL interne de votre application (ex : http://minhaappinterna.local:8080). Assurez-vous que le connecteur peut résoudre et accéder à cette URL.
    • URL externe : cette URL sera automatiquement générée en fonction de votre domaine Azure AD par défaut (par exemple myappinternal-proxy.msappproxy.net). Vous pouvez créer un domaine personnalisé si vous en avez un.
    • Méthode de pré-authentification : sélectionnez « Azure Active Directory » (recommandée pour une sécurité maximale).
    • Groupe de connecteurs : sélectionnez le groupe de connecteurs par défaut ou un groupe personnalisé si vous disposez de plusieurs connecteurs.
  8. Cliquez sur Enregistrer.

  9. Dans le volet de navigation de gauche, sélectionnez Utilisateurs et groupes sous « Gérer ».

  10. Cliquez sur « + Ajouter un utilisateur/groupe » et attribuez des utilisateurs ou des groupes Azure AD qui seront autorisés à accéder à cette application.

    • Explication : L'attribution d'utilisateurs et de groupes est cruciale pour contrôler qui peut accéder à l'application publiée. Azure AD Application Proxy garantit que seuls les utilisateurs authentifiés et autorisés peuvent accéder à l'application interne.

3. Configuration de l'accès conditionnel pour les applications publiées

L'accès conditionnel vous permet d'appliquer des politiques de sécurité supplémentaires, telles que MFA, pour l'accès aux applications.

  1. Dans le volet de navigation de gauche d'Azure Active Directory, sélectionnez Sécurité > Accès conditionnel.
  2. Cliquez sur « + Nouvelle politique ».
  3. Bases :
    • Nom : Donnez un nom significatif (ex : MFA_para_MinhaAppInternal).
  4. Responsabilités :
    • Utilisateurs d'identité ou charges de travail : Sélectionnez les utilisateurs et les groupes qui seront affectés par la politique (ex : Grupo_Usuarios_MinhaAppInterna).
    • Applications ou actions cloud : sélectionnez « MyAppInternal-Proxy ».
  5. Contrôles d'accès :
    • Accorder : sélectionnez « Accorder l'accès » et « Exiger une authentification multifacteur ».
  6. Activer la stratégie : sélectionnez « Activé ».
  7. Cliquez sur Créer.

    • Explication : Cette stratégie garantira que tout utilisateur tentant d'accéder à « MyInternal-ProxyApp » sera invité à effectuer une authentification multifacteur, même si l'application sur site ne prend pas en charge MFA de manière native.

4. Publication d'autres types d'applications

Le proxy d'application peut être utilisé pour publier d'autres types de ressources, telles que RemoteClient Web de bureau et SharePoint.

4.1. Publication du client Web du Bureau à distance

  1. Suivez les étapes de la section 2 pour créer une nouvelle application d'entreprise.
  2. Dans la configuration du proxy d'application :
    • URL interne : saisissez l'URL de votre serveur client Web Bureau à distance (ex : https://rdweb.contoso.com/RDWeb).
    • URL externe : sera générée automatiquement.
    • Méthode de pré-authentification : Azure Active Directory.
    • Type d'en-tête de traduction d'URL : En-têtes d'URL backend.
  3. Attribuez des utilisateurs/groupes.

4.2. Publication de SharePoint sur site

  1. Suivez les étapes de la section 2 pour créer une nouvelle application d'entreprise.
  2. Dans la configuration du proxy d'application :
    • URL interne : Saisissez l'URL de votre site SharePoint (ex : https://sharepoint.contoso.local).
    • URL externe : sera générée automatiquement.
    • Méthode de pré-authentification : Azure Active Directory.
    • Type d'en-tête de traduction d'URL : En-têtes d'URL backend.
  3. Attribuez des utilisateurs/groupes.

Validation et tests

Il est crucial de tester l’accès à distance pour garantir que les applications sont accessibles en toute sécurité.

1. Test de l'accès à l'application publiée

  1. Scénario : depuis un ordinateur extérieur au réseau d'entreprise (par exemple votre domicile), ouvrez un navigateur et accédez à l'URL externe de MinhaAppInternal-Proxy (par exemple https://minhaappinterna-proxy.msappproxy.net).
  2. Action attendue : vous devez être redirigé vers la page de connexion Azure AD. Après avoir saisi vos informations d’identification Azure AD et, si configuré, terminé l’authentification MFA, vous devez être redirigé vers MyApp sur site.
  3. Vérification :
    • Confirmez que l'application se charge correctement et que vous pouvez interagir avec elle.
    • Vérifiez les journaux de connexion Azure AD pour confirmer que l'accès a été authentifié via le proxy d'application et que MFA a été appliqué.

2. Vérification des journaux de connexion Azure AD

  1. Dans le portail Azure, accédez à Azure Active Directory > Surveillance > Journaux entrants.
  2. Filtrez les journaux par Application (MyAppInternal-Proxy).
  3. Vérifiez les détails de connexion, y compris « Statut d'accès conditionnel » (doit afficher « Succès » et indiquer que l'AMF a été appliqué).

Conseils de sécurité et bonnes pratiques

  • Toujours utiliser la pré-authentification Azure AD : la pré-authentification Azure AD est la méthode la plus sécurisée car elle garantit que seuls les utilisateurs authentifiés et autorisés accèdent à votre réseau interne. Évitez le « Pass-through » sauf si cela est strictement nécessaire pour les applications qui ne peuvent pas gérer la pré-authentification.
  • Accès conditionnel : utilisez l'accès conditionnel pour appliquer des politiques de sécurité supplémentaires telles que l'authentification multifacteur, les restrictions de localisation, la conformité des appareils, etc. pour toutes les applications publiées via le proxy d'application.
  • Groupes de connecteurs : organisez vos connecteurs en groupes pour isoler les applications ou pour rapprocher les connecteurs d'applications spécifiques pour de meilleures performances.
  • Haute disponibilité : installez au moins deux connecteurs sur des serveurs distincts pour garantir une haute disponibilité et une résilience. Envisagez d'installer dans différentes régions ou zones de disponibilité, le cas échéant.
  • Maintenance des connecteurs : bien que les connecteurs se mettent à jour automatiquement, surveillez leur état dans le portail Azure pour vous assurer qu'ils sont toujours actifs et sains.
  • Sécurité du serveur du connecteur : sécurisez le serveur sur lequel le connecteur est installé. Gardez-le à jour, appliquez le principe du moindre privilège et surveillez-le pour détecter toute activité suspecte.
  • Optimisation des performances : Pour les applications à fort trafic ou nécessitant une faible latence, tenez compte de l'emplacement des connecteurs par rapport aux serveurs d'applications et de la bande passante disponible.
  • Surveillance : surveillez les journaux de connexion Azure AD et les journaux de connecteur pour détecter les activités suspectes ou les problèmes d'accès.

Dépannage courant

  • Erreur d'accès (404, 500, etc.) :
    • Vérifiez l'URL interne : Assurez-vous que l'URL interne configurée dans le proxy d'application est correcte et que le connecteur peut y accéder directement depuis le serveur sur lequel il est installé.
    • Vérifiez le connecteur : confirmez que le connecteur est « Actif » dans le portail Azure. Redémarrez le service du connecteur sur le serveur.
    • Vérifiez le groupe de connecteurs : assurez-vous que le groupe de connecteurs attribué à l'application am au moins un connecteur actif.
    • Pare-feu local : vérifiez si le pare-feu du serveur de connecteurs ou du serveur d'applications bloque le trafic.
  • Les applications ne se chargent pas correctement (problèmes de rendu) :
    • Traduction d'en-tête : pour certaines applications, vous devrez peut-être ajuster le « Type d'en-tête de traduction d'URL » dans les paramètres du proxy d'application sur « En-têtes d'URL backend » ou « En-têtes d'URL frontend ».
    • Liens codés : les applications comportant des liens codés en dur vers des URL internes peuvent rencontrer des problèmes. Pensez à utiliser la « traduction de lien » d'Application Proxy ou à reconfigurer l'application si possible.
  • Problèmes SSO :
    • Configuration SSO : vérifiez les paramètres SSO dans l'application d'entreprise. Pour les applications qui ne sont pas fédérées, vous devrez peut-être configurer un « SSO par mot de passe » ou un « SSO d'en-tête ».
    • Délégation contrainte Kerberos (KCD) : pour les applications qui utilisent l'authentification Windows intégrée (IWA), vérifiez que KCD est correctement configuré dans Active Directory pour le connecteur.
  • Accès conditionnel bloquant les utilisateurs légitimes :
    • Examinez attentivement les politiques d'accès conditionnel. Vérifiez que les utilisateurs ou les groupes sont correctement inclus ou exclus.
    • Utilisez l'outil « Et si » dans l'accès conditionnel pour simuler l'accès et comprendre pourquoi une politique est appliquée ou bloquée.
  • Connecteur hors ligne :
    • Vérifiez la connectivité réseau du serveur de connecteur à Azure AD (ports sortants 80 et 443) et au service Application Proxy (port sortant 443).
    • Vérifiez les journaux d'événements Windows sur le serveur de connecteurs pour détecter les erreurs liées au service.
    • Assurez-vous que le service « Microsoft AAD Application Proxy Connector » est en cours d'exécution.

Conclusion

Azure AD Application Proxy est un outil puissant et sécurisé permettant d'étendre l'accès aux applications Web locales aux utilisateurs distants, conformément aux principes du modèle Zero Trust. En centralisant l'authentification et l'autorisation dans Azure AD et en éliminant le besoin d'infrastructures d'accès à distance complexes, les organisations peuvent simplifier leur architecture de sécurité tout en renforçant la protection contre les menaces. Une mise en œuvre minutieuse, l'intégration avec l'accès conditionnel et une surveillance continue sont essentielles pour maximiser les avantages en matière de sécurité et garantir une expérience utilisateur fluide. Avec ce guide pratique, les professionnels de la sécurité et les administrateurs informatiques seront bien équipés pour configurer, valider et gérer le proxy d'application Azure AD, sécurisant ainsi l'accès à distance aux applications critiques et renforçant la posture de sécurité de leur organisation.


Références :

[1] Microsoft Apprendre. Publiez des applications locales avec Microsoft Entra Application Proxy. Disponible sur : https://learn.microsoft.com/pt-br/entra/identity/app-proxy/overview-what-is-app-proxy [2] Microsoft Apprendre. Ajoutez une application locale pour un accès à distance via Microsoft Entra Application Proxy. Disponible sur : https://learn.microsoft.com/pt-br/entra/identity/app-proxy/application-proxy-add-on-premises-application [3] Microsoft Apprendre. Publiez un bureau à distance avec le proxy d'application Microsoft Entra. Disponible sur : https://learn.microsoft.com/pt-br/entra/identity/app-proxy/application-proxy-integrate-with-remote-desktop-services [4] Microsoft Apprendre. Licence Microsoft Entra ID. Disponible sur : https://learn.microsoft.com/pt-br/entra/identity/licensing-azure-active-directory [5] Microsoft Apprendre. Connecteurs Microsoft Entra Application Proxy. Disponible sur : https://learn.microsoft.com/pt-br/entra/identity/app-proxy/application-proxy-connectors [6] Microsoft Apprendre. Accès conditionnel sur Microsoft Enter ID. Disponible sur : https://learn.microsoft.com/pt-br/entra/identity/conditional-access/overview [7] Microsoft Apprendre. Dépanner les connecteurs Microsoft Entra Application Proxy. Disponible sur : https://learn.microsoft.com/pt-br/entra/identity/app-proxy/application-proxy-troubleshoot-connectors