Mise en place d'un reverse proxy via Microsoft IIS pour Sage X3 V12

SUGGESTED

Bonjour,

Nous disposons d'une installation de Sage X3 V12 avec un serveur Apache fonctionnant sur une machine virtuelle Windows Server 2019.

Dans cette configuration, nous avons également un ADCS (Autorité de certification Active Directory) capable de délivrer un certificat SSL valide (utilisé uniquement en interne). De plus, nous avons un serveur web IIS (Internet Information Services) avec les modules Application Request Routing et URL Rewrite. Actuellement, l'accès à Sage X3 se fait via l'URL http://XXXX:8124/ sans certificat SSL.

Étant donné que les prochaines versions d'X3 n'utiliseront plus Apache, nous souhaitons mettre en place un reverse proxy via IIS avec un certificat SSL pour accéder à X3 de manière plus sécurisée et optimale. Malheureusement, nous n'avons trouvé aucune configuration spécifique pour IIS, seules des informations sont disponibles pour Apache. Nous avons essayé différentes configurations, ce qui nous permet désormais d'accéder à la page de connexion et de nous connecter avec succès. Cependant, une fois connectés, nous obtenons une page blanche avec un message d'erreur : "Échec de chargement du profil Forbidden [x-9c41b01b73bb 2023-06-26T09:56:45.703Z]".

Nous souhaitons savoir si quelqu'un a déjà mis en place un reverse proxy via IIS et quelles configurations spécifiques doivent être mises en place pour résoudre ce problème.

Nous vous remercions par avance pour votre aide !

Top Replies

  • Bonjour ,

    Merci d'avoir utilisé Sage City.

    Nous remarquons qu'il n'y a malheureusement pas eu de réponse à votre question de la part des autres membres de la communauté.

    Nous invitons vivement chacun des membres de la communauté à être actifs et à répondre sur les forums. Les réponses sont l’affaire de tous et permettent  aux forums de grandir, et aux utilisateurs de mieux connaitre et utiliser leur solution.
    Aussi, n’hésitez pas vous-même à répondre aux questions qui pourraient être posées et qui seraient en attente de réponse.

    De notre côté et après avoir sollicité nos services, nous n'avons pas d'éléments supplémentaire à apporter concernant ce type d'implémentation.. 

    Nous espérons une réponse prochaine à votre demande de la part de la communauté.

    Dans l’attente, et pour vous aiguiller d'avantage, vous pouvez consulter l’assistance ou  certains articles sur la base de Connaissance SageKb: https://fr-kb.sage.com

    Merci d'avoir utilisé la communauté.

    Yannick

  • 0
    SUGGESTED

    Bonjour ,
    Je pense que vous mélangez plusieurs choses:
    - TLS: vous pouvez configurer votre certificats pour HTTPS dans Syracuse sans mettre de reverse proxy.

    - Le serveur Apache n'est pas utilisé pour se connecter. Les utilisateurs se connectent à Syracuse. Syracuse se connecte ensuite à Apache pour récupérer des fichiers d'écrans notamment. A partir de la version 2022R2, on peut (pas une obligation) configurer Syracuse pour ne pas utiliser Apache mais passer directement par les moteurs X3 via le process sadfsq.

    - Pour le reverse proxy, on voit généralement des équilibreurs de charge type VMWare NSX, F5 Big IP, HAPROXY ou NGINX. On peut effectivement utiliser IIS, mais nous n'en voyons pas souvent. Nous n'avons pas de configuration type pour IIS, mais il faut que vous configuriez la persistence des sessions par cookies (sticky session).

    Vous pouvez ensuite bien entendu faire des choses plus compliquées avec du TLS Offloading et mettre le certificat sur IIS, mais il faut configurer Syracuse de manière particulière.

    Je vous encourage à vous rapprocher de votre revendeur/partenaire X3 pour être accompagné si besoin.

  • Bonjour ,

    Faites-nous savoir si la réponse de Bruno a été utile en la marquant comme vérifiée .

    Pour cela, cliquez sur  la ligne ‘Vérifier la réponse’.

    Cela aura pour effet de marquer la réponse en vert et de permettre aux autres membres de la communauté, ou aux personnes qui auraient également le besoin de voir que cela a fonctionné.

    Merci d'avoir utilisé la communauté.

    Yannick

  • 0 in reply to Bruno Gonzalez

    Bonjour,

    Je vous remercie pour votre réponse.

    Je comprends tout à fait l'idée de mettre directement le certificat SSL/TLS dans Syracuse. Cependant, nous utilisons un certificat local provenant d'un ADCS, ce qui entraîne des problèmes de compatibilité avec les formats natifs de Syracuse. Nous avons vérifié cela avec notre prestataire, mais le format du certificat ne semble pas être correct ou valide (même si nous l'avons généré de la même manière que pour d'autres services web internes).

    Envisager de migrer vers la version 2022R2 sans Apache pourrait en effet simplifier l'architecture et faciliter la résolution de notre problème.

    Pour notre cas, étant en local avec une douzaine d'utilisateurs, nous n'avons pas besoin d'un équilibreur de charge. De plus, nous ne considérons pas comme la meilleure option d'avoir un HAProxy ou NGINX sur un serveur Windows, surtout que nous disposons déjà d'IIS qui est nativement compatible avec un ADCS.

    Nous avons regardé sur IIS et nous ne voyons pas de possibilité pour activer la persistance des sessions par cookies (sticky session) excepté via ASP.NET (solution qui ne fonctionne pas). Cependant, nous sommes d'accord avec votre raisonnement, et il est fort probable que cela soit la cause du problème.

    L'objectif principal de cette démarche est de permettre une installation autonome d'X3 vis-à-vis du reverse proxy/SSL-TLS, afin que notre prestataire n'ait pas à s'en soucier (en cas de mise à jour, changement de fonctionnement ou autre).

    Je vous souhaite une agréable journée.

    Cordialement,

  • 0 in reply to Groupe Cheminal

    Je comprend mieux votre besoin.
    Pour info, HAPROXY tourne sous Linux, et vu vos volumes d'utilisateurs, une mini-VM avec 2 cores et 4Go de RAM devrait suffire. Nous avons des exemples disponibles pour HAPROXY si besoin.
    Concernant IIS, je ne suis pas spécialiste. En regardant sur le web, certains parlent d'utiliser la fonction NLB qui justement est équilibre la charge en TCP. Ce n'est pas exactement la même chose pour autant, mais si cela vous aide.