Considérations de sécurité pour l’accès aux applications à distance avec le proxy d’application Microsoft Entra

Cet article décrit les composants qui facilitent la protection des utilisateurs et des applications quand vous utilisez le proxy d’application Microsoft Entra.

Le diagramme ci-dessous illustre la façon dont Microsoft Entra ID permet un accès à distance sécurisé à vos applications locales.

Diagram of secure remote access through Microsoft Entra application proxy

Avantages en matière de sécurité

Le proxy d’application Microsoft Entra offre de nombreux avantages de sécurité. Voici la liste des avantages :

  • Accès authentifié
  • Accès conditionnel
  • Arrêt du trafic
  • Tous les accès sortants
  • Analytique et Machine Learning à l’échelle du cloud
  • Accès à distance en tant que service
  • Service de protection Microsoft contre les attaques par déni de service distribué (DDoS)

Accès authentifié

Seules les connexions authentifiées peuvent accéder à votre réseau quand vous utilisez la pré-authentification Microsoft Entra.

Le proxy d’application Microsoft Entra s’appuie sur le service STS (Microsoft Entra security token service) pour toute l’authentification. La pré-authentification, par essence, bloque un nombre conséquent d’attaques anonymes parce que seules les identités authentifiées peuvent accéder à l’application back-end.

Si vous choisissez Direct comme méthode de pré-authentification, vous ne bénéficiez pas de cet avantage.

Accès conditionnel

Appliquez des contrôles de stratégie plus riches avant que les connexions à votre réseau soient établies.

Avec l’accès conditionnel, vous pouvez définir des restrictions quant à la façon dont les utilisateurs sont autorisés à accéder à vos applications. Vous pouvez créer des stratégies qui limitent les connexions en fonction de l’emplacement, de la force de l’authentification et du profil de risque de l’utilisateur.

Vous pouvez également utiliser l’accès conditionnel pour configurer des stratégies d’authentification multifacteur, qui ajoutent une couche de sécurité supplémentaire aux authentifications de vos utilisateurs. De plus, vos applications peuvent également être acheminées vers Microsoft Defender for Cloud Apps via l’accès conditionnel Microsoft Entra pour assurer des contrôles et une surveillance en temps réel par le biais de stratégies d’accès et de session.

Arrêt du trafic

Tout le trafic est arrêté dans le cloud.

Étant donné que le proxy d’application Microsoft Entra est un proxy inversé, tout le trafic vers les applications principales est arrêté au niveau du service. La session peut être ré-établie uniquement avec le serveur back-end, ce qui signifie que vos serveurs back-end ne sont pas exposés au trafic HTTP direct. La configuration signifie que vous êtes mieux protégé contre les attaques ciblées.

Tous les accès sont sortants

Vous n’avez pas besoin d’ouvrir de connexion sortante sur le réseau d’entreprise.

Les connecteurs de proxy d’application utilisent seulement des connexions sortantes au service de proxy d’application Microsoft Entra. Il n’est pas nécessaire d’ouvrir des ports de pare-feu pour les connexions entrantes. Les proxys traditionnels exigent un réseau de périmètre (également appelé DMZ, zone démilitarisée, ou sous-réseau filtré) et autorisent l’accès à des connexions non authentifiées à la périphérie du réseau. Avec le proxy d’application, vous n’avez pas besoin de réseau de périmètre parce que toutes les connexions sont sortantes et sur un canal sécurisé.

Pour plus d’informations sur les connecteurs, consultez Présentation des connecteurs de proxy d’application Microsoft Entra.

Analyse à l’échelle du cloud et apprentissage automatique

Bénéficiez d’une protection de sécurité de pointe.

Comme il fait partie de Microsoft Entra ID, le proxy d’application utilise la Protection Microsoft Entra ID, avec les données du Centre de réponse aux problèmes de sécurité Microsoft et de la DCU (Digital Crimes Unit). Ensemble, nous identifions de façon proactive les comptes compromis et offrons une protection contre les connexions à haut risque. Nous prenons en compte plusieurs facteurs pour déterminer les tentatives de connexion à haut risque. Ces facteurs incluent le marquage des appareils infectés, l’anonymisation des réseaux et les emplacements atypiques ou peu probables.

Nombre de ces rapports et événements sont déjà disponibles via une API pour l’intégration avec vos systèmes de gestion des événements et des informations de sécurité.

Accès à distance en tant que service

Vous n’avez pas à vous soucier de la maintenance et de l’application de correctifs sur vos serveurs locaux.

Les logiciels sans correctifs sont toujours responsables d’un grand nombre d’attaques. Le proxy d’application Microsoft Entra est un service Internet contrôlé par Microsoft ; vous obtenez donc toujours les derniers correctifs de sécurité et mises à niveau.

Pour améliorer la sécurité des applications publiées par le proxy d’application Microsoft Entra, nous empêchons les robots web d’indexer et d’archiver vos applications. Chaque fois qu’un robot d’indexation tente de récupérer les paramètres d’un robot d’une application publiée, le proxy d’application retourne un fichier robots.txt qui inclut User-agent: * Disallow: /.

Service de protection Microsoft contre les attaques par déni de service distribué (DDoS)

Les applications publiées via le proxy d’application sont protégées contre les attaques par déni de service distribué (DDoS). Microsoft active automatiquement cette protection dans tous les centres de données. Le service de protection DDoS de Microsoft fournit une surveillance du trafic en continu et une atténuation en temps réel des attaques courantes au niveau du réseau.

Sous le capot

Le proxy d’application Microsoft Entra se compose de deux parties :

  • Le service basé sur le cloud : ce service s’exécute dans le cloud Microsoft, et c’est là que sont établies les connexions client/utilisateur externes.
  • Le connecteur local : un composant local, le connecteur écoute les demandes du service de proxy d’application Microsoft Entra et gère les connexions vers les applications internes.

Un flux entre le connecteur et le service de proxy d’application est établi lorsque :

  • Le connecteur est configuré pour la première fois.
  • Le connecteur extrait les informations de configuration du service de proxy d’application.
  • Un utilisateur accède à une application publiée.

Notes

Toutes les communications se produisent via le protocole TLS et partent toujours du connecteur pour aller vers le service de proxy d’application. Le service est uniquement sortant.

Le connecteur utilise un certificat client pour s’authentifier auprès du service de proxy d’application pour presque tous les appels. La seule exception est l’étape initiale d’installation, au cours de laquelle le certificat client est établi.

Installation du connecteur

Le flux suivant se déroule lorsque le connecteur est configuré pour la première fois :

  1. L’inscription du connecteur sur le service se produit dans le cadre de l’installation du connecteur. Les utilisateurs sont invités à saisir leurs informations d’identification administrateur Microsoft Entra. Le jeton obtenu à partir de cette authentification est ensuite présenté au service de proxy d’application Microsoft Entra.
  2. Le service de proxy d’application évalue le jeton. Il vérifie si l’utilisateur est un administrateur général dans le locataire. Si l’utilisateur n’est pas administrateur, le processus se termine.
  3. Le connecteur génère une demande de certificat client et la passe, avec le jeton, au service de proxy d’application. À son tour, le service vérifie le jeton et signe la demande de certificat client.
  4. Le connecteur utilise le certificat client pour les communications ultérieures avec le service de proxy d’application.
  5. Le connecteur procède à une première extraction des données de configuration système à partir du service à l’aide de son certificat client et est maintenant prêt à recevoir des demandes.

Mise à jour des paramètres de configuration

Chaque fois que le service de proxy d’application met à jour les paramètres de configuration, les événements de flux suivants se produisent :

  1. Le connecteur se connecte au point de terminaison de configuration dans le service de proxy d’application à l’aide de son certificat client.
  2. Le certificat client est validé.
  3. Le service de proxy d’application retourne les données de configuration au connecteur (par exemple, le groupe auquel le connecteur appartient).
  4. Le connecteur génère une nouvelle demande de certificat si le certificat actuel date de plus de 180 jours.

Accès aux applications publiées

Lorsque les utilisateurs accèdent à une application publiée, les événements suivants se produisent entre le service de proxy d’application et le connecteur du proxy d’application :

  1. Le service authentifie l’utilisateur pour l’application.
  2. Le service place une demande dans la file d’attente du connecteur.
  3. Un connecteur traite la demande provenant de la file d’attente
  4. Le connecteur attend une réponse
  5. Le service diffuse les données à l’utilisateur

Pour plus d’informations sur ce qui se passe dans chacune de ces étapes, poursuivez votre lecture.

1. Le service authentifie l’utilisateur pour l’application.

Si l’application utilise Direct comme méthode de pré-authentification, les étapes décrites dans cette section sont ignorées.

Les utilisateurs sont redirigés vers le service d’émission de jeton de sécurité Microsoft Entra pour s’authentifier si l’application est configurée pour pré-authentifier avec Microsoft Entra ID. Les étapes suivantes se produisent :

  1. Le proxy d’application recherche les exigences des stratégies d’accès conditionnel. L’étape permet de vérifier que l’utilisateur est affecté à l’application. Si une vérification en deux étapes est requise, la séquence d’authentification invite l’utilisateur à s’authentifier avec un second facteur.
  2. Le service d’émission de jeton de sécurité Microsoft Entra émet un jeton signé pour l’application et redirige l’utilisateur vers le service de proxy d’application.
  3. Le proxy d’application vérifie que le jeton a été émis pour l’application appropriée, qu’il est signé et qu’il est valide.
  4. Le proxy d’application définit un cookie d’authentification chiffré pour indiquer que l’authentification auprès de l’application a réussi. Le cookie comprend un horodatage d’expiration basé sur le jeton de Microsoft Entra ID. Le cookie comprend également le nom d’utilisateur sur lequel l’authentification est basée. Le cookie est chiffré à l’aide d’une clé privée connue uniquement du service de proxy d’application.
  5. Le proxy d’application redirige l’utilisateur vers l’URL demandée à l’origine.

Si une partie de la procédure de pré-authentification échoue, la demande de l’utilisateur est refusée et l’utilisateur voit un message indiquant la source du problème.

2. Le service place une demande dans la file d’attente du connecteur.

Les connecteurs gardent une connexion sortante ouverte au service de proxy d’application. Lorsqu’une demande arrive, le service met en file d’attente la demande sur une des connexions ouvertes pour récupération par le connecteur.

La demande comprend les en-têtes de la demande, les données du cookie chiffré, l’utilisateur qui fait la demande et l’ID de la demande. Bien que les données du cookie chiffré soient envoyées avec la demande, le cookie d’authentification lui-même ne l’est pas.

3. Le connecteur traite la demande provenant de la file d’attente.

En fonction de la demande, le proxy d’application effectue l’une des actions suivantes :

  • Si la demande est une opération simple (par exemple, le corps de la demande ne contient aucune donnée, comme c’est le cas pour une requête GET d’API RESTful), le connecteur établit une connexion à la ressource interne cible et attend une réponse.

  • Si la demande possède des données associées dans le corps (par exemple, une opération POST d’API RESTful), le connecteur établit une connexion sortante en utilisant le certificat client à l’instance du proxy d’application. Il établit cette connexion pour demander les données et ouvrir une connexion vers la ressource interne. Après réception de la demande du connecteur, le service de proxy d’application commence à accepter le contenu de l’utilisateur et transfère les données au connecteur. Le connecteur transfère à son tour les données vers la ressource interne.

4. Le connecteur attend une réponse.

Une fois la demande et la transmission de tout le contenu vers le serveur principal terminées, le connecteur attend une réponse.

Après avoir reçu une réponse, le connecteur établit une connexion sortante au service de proxy d’application afin de retourner les détails de l’en-tête et de commencer le streaming des données de retour.

5. Le service diffuse les données à l’utilisateur. 

Un traitement de l’application se produit à ce moment-là. Par exemple, le proxy d’application traduit les en-têtes ou les URL.

Étapes suivantes