Skip To Content

Configurer votre portail pour utiliser un serveur proxy inverse

Un serveur proxy inverse est un ordinateur déployé sur un réseau de périmètre (appelé également zone démilitarisée [DMZ] ou sous-réseau filtré) qui gère des requêtes provenant d’Internet et les transmet aux machines de votre réseau interne. La transmission des requêtes via un serveur proxy inverse permet de masquer l’identité des machines derrière le pare-feu de votre organisation et ainsi de protéger les machines en interne contre toute attaque provenant des utilisateurs d’Internet. Vous pouvez intégrer des fonctions de sécurité supplémentaires au serveur proxy inverse pour protéger davantage votre réseau interne contre toute attaque provenant de l'extérieur.

Si votre serveur proxy inverse prend en charge une fonction de contrôle de l'intégrité, vous pouvez utiliser l'extrémité de contrôle de l'intégrité de Portal for ArcGIS pour déterminer si le portail peut recevoir des requêtes. Ceci est utile pour déterminer rapidement si le site rencontre une défaillance logicielle ou matérielle. Pour plus d'informations, reportez-vous à la rubrique Contrôle de l'intégrité du portail dans l'API REST d'ArcGIS.

Attention :

Les instructions de configuration détaillées dans cette rubrique doivent être exécutée avant de fédérer un site ArcGIS Server avec votre ArcGIS Enterprise portail. La suppression d’un site fédéré ArcGIS Server a des répercussions importantes et il sera difficile de rétablir une configuration existante. Pour en savoir plus, reportez-vous à la rubrique Administrer un serveur fédéré.

Ajouter Portal for ArcGIS à votre serveur proxy inverse

Avant d'ajouter Portal for ArcGIS au serveur proxy inverse de votre organisation, vous devez effectuer les opérations suivantes :

  • Configurez HTTPS (HTTP et HTTPS ou HTTPS uniquement) sur le serveur proxy inverse. Portal for ArcGIS utilise le chiffrement HTTPS par défaut pour les communications. Consultez la documentation de votre serveur proxy pour savoir comment configurer HTTPS.

Vérifiez que le serveur proxy prend en charge le gzipcodage et qu’il est configuré pour autoriser l’en-tête Accept-Encoding. Cet en-tête permet aux réponses HTTP 1.1 d’être compressées à l’aide du codage gzip. Ainsi, si l’en-tête est autorisé, une demande de chargement de Map Viewer (Visionneuse de carte) renvoie une réponse compressée d’environ 1,4 Mo au navigateur. Si l'en-tête n'est pas autorisé ou est ignoré, la demande renvoie une réponse non compressée d'environ 6,8 Mo au navigateur. Si le débit de votre réseau est lent, le chargement de Map Viewer (Visionneuse de carte) est lent lorsque les réponses ne sont pas compressées. Esri recommande vivement d’autoriser cet en-tête dans le cadre de la configuration de votre serveur proxy inverse.

Ajouter ArcGIS Web Adaptor aux directives du serveur proxy

Après avoir configuré ArcGIS Web Adaptor avec Portal for ArcGIS, vous pouvez utiliser ArcGIS Web Adaptor avec un serveur proxy inverse de votre réseau en ajoutant les composants directement aux directives de proxy. Par exemple, si vous utilisez Apache comme serveur proxy inverse, vous devez ajouter ArcGIS Web Adaptor aux directives ProxyPass du fichier de configuration du serveur Web Apache httpd.conf :

ProxyPass /arcgis https://webadaptorhost.domain.com/webadaptorname
ProxyPassReverse /arcgis https://webadaptorhost.domain.com/webadaptorname

Les directives ProxyPass doivent correspondre au nom désigné pour ArcGIS Web Adaptor (/webadaptorname dans l'exemple ci-dessus). Si l'URL d'accès à votre site ne se termine pas par la chaîne par défaut /arcgis, indiquez le nom autre que celui par défaut d'ArcGIS Web Adaptor (par exemple, /myorg).

Préparer votre proxy inverse

Avant de déployer votre serveur proxy inverse pour l’utiliser avec le portail, Esri vous recommande de configurer certains en-têtes du proxy inverse afin de garantir la communication.

Dans la configuration de chargement du serveur proxy inverse, définissez un en-tête X-Forwarded-Host. Portal for ArcGIS s’attend à ce que cette propriété soit définie dans l’en-tête envoyé par le proxy inverse et renvoie les requêtes correspondant à l’URL du proxy serveur inverse.

Par exemple, une requête destinée au point d’extrémité REST Portal for ArcGIS (https://reverseproxy.domain.com/arcgis/sharing/rest) sera renvoyée au client sous la forme de l’URL correspondante. Si la propriété n'est pas définie, Portal for ArcGIS peut renvoyer l'URL de la machine interne vers laquelle la requête a été dirigée (par exemple, https://portal.domain.com/arcgis/sharing/rest au lieu de https://reverseproxy.domain.com/arcgis/sharing/rest). Cela pose un problème, car les clients ne pourront pas accéder à cette URL (erreur 404 du navigateur). Le client disposera également d’un accès à des informations sur la machine interne.

Avec l’en-tête X-Forwarded-Host, votre serveur proxy inverse doit être capable de rediriger directement (codes HTTP 301 ou 302). Actualisez également son en-tête Location pour vous assurer que le nom de domaine complet (FQDN) et le contexte de la réponse correspondent à la valeur WebContextURL du portail.

Définir la propriété WebContextURL

La propriété WebContextURL du portail l’aide à créer les URL correctes sur toutes les ressources transmises à l’utilisateur final.

Remarque :

Si vous n’utilisez pas ArcGIS Web Adaptor dans votre déploiement, assurez-vous que le nom contextuel du serveur proxy inverse ne descend que d’un niveau d’URL. Par exemple, vous pourriez spécifier l’URL d’un serveur proxy inverse https://proxy.domain.com/enterprise, mais pas la suivante : https://proxy.domain.com/myorg/enterprise.

Procédez comme suit pour modifier WebContextURL :

  1. Ouvrez un navigateur Web et connectez-vous au répertoire Portal for ArcGIS en tant que membre du rôle d’administrateur par défaut de l’organisation de votre portail. L’URL est au format https://portal.domain.com:7443/arcgis/portaladmin.
  2. Cliquez sur Système > Propriétés > Mettre à jour les propriétés.
  3. Dans la boîte de dialogue Mettre à jour les propriétés du système, insérez la notation JSON suivante en remplaçant l'URL de l'alias DNS ou de votre serveur proxy inverse, telle qu'elle apparaît aux utilisateurs en dehors du pare-feu de votre organisation.
    {
       "WebContextURL": "https://reverseproxy.domain.com/enterprise"
    }
    Remarque :

    Portal for ArcGIS ne prend en charge qu’un seul DNS.

    Remarque :

    Vous ne pouvez pas utiliser un port non standard (c’est-à-dire un autre port que le port 7443) lorsque vous définissez la propriété WebContextURL.

  4. Cliquez sur Mettre à jour les propriétés.

Répéter les tâches administratives

Une fois que vous avez configuré le serveur proxy inverse avec votre portail, vous pouvez accéder à votre portail via l'URL du serveur proxy inverse à la place de l'URL d'ArcGIS Web Adaptor. Tout ce à quoi vous accédez sur le site Web du portail ou dans le répertoire Portal for ArcGIS retournera l'URL du serveur proxy inverse.

Les tâches administratives suivantes doivent être réexécutées en utilisant l'URL du serveur proxy inverse :

Si vous avez ajouté auparavant des services sécurisés en tant qu'éléments dans votre portail, vous devrez supprimer les éléments d'origine et les ajouter de nouveau. En effet, les éléments d'origine utilisent l'URL d'ArcGIS Web Adaptor à la place de l'URL du serveur proxy inverse. Pour obtenir des instructions, reportez-vous à la rubrique Se connecter à des services sécurisés.

Une fois le serveur proxy inverse configuré avec le portail, il se peut que vous deviez ajuster ses paramètres. Par exemple, si les opérations ou les requêtes au sein de votre déploiement échouent avec une erreur indiquant que la connexion a expiré, le problème peut être lié à une valeur trop faible du délai d’expiration du serveur proxy inverse. Pour résoudre cette erreur, pensez à augmenter la valeur du délai d’expiration afin de permettre aux requêtes de longue durée, comme la fédération d’un serveur, de se terminer.