Configuration de l'intégration multi-domaines

Version 1.1 by Aurelie Bertrand on 2026/04/13 16:58

 

Lorsqu'un dashboard DigDash est intégré dans une page web hébergée sur un serveur différent, le navigateur bloque les requêtes par mesure de sécurité. 

Afin d'autoriser l'affichage de portlets ou de tableaux de bord sur un domaine tiers, il ets nécessaire d'effectuer les configuration suivantes.

Configuration du Serveur Web (Nginx)

Cette étape permet au navigateur d'accepter les réponses provenant du serveur DigDash distant.

Définition des domaines autorisés

Dans votre configuration Nginx, utilisez un bloc map pour lister les origines de confiance. 

# À placer dans le bloc 'http' ou avant le bloc 'server'
map $http_origin $cors_origin {
    default "";
    "https://mywebsite.com"    $http_origin;
    "https://qa05.digdash.com" $http_origin;
}

# À placer dans le bloc 'http' ou avant le bloc 'server' map $http_origin $cors_origin { default ""; "https://mywebsite.com" $http_origin; "https://qa05.digdash.com" $http_origin; }

B. Ajout des Headers de sécurité

Dans le bloc server {} de votre site, ajoutez les instructions suivantes :

Nginx

# 1. Autorisation de l'origine dynamique add_header Access-Control-Allow-Origin $cors_origin always; add_header Access-Control-Allow-Methods "GET, POST, OPTIONS" always; add_header Access-Control-Allow-Headers "Content-Type, Authorization, x-gwt-module-base, x-gwt-permutation, x-requested-with" always; add_header Access-Control-Allow-Credentials "true" always; # 2. Gestion des cookies en mode embarqué location / { proxy_cookie_path / "/; Secure; SameSite=None;"; }

Note : Le paramètre SameSite=None est indispensable pour que les sessions persistent dans une iframe. Le site doit impérativement être en HTTPS.


4. Configuration applicative (DigDash)

Une fois le réseau configuré, il faut autoriser les domaines au niveau de la protection anti-CSRF de DigDash.

  1. Éditez le fichier : /etc/digdash/digdash.properties
  2. Modifiez ou ajoutez la propriété suivante :

    Properties

    # Liste des domaines séparés par une virgule digdash_dashboard.PROP_CSRF_TARGET_ORIGIN=https://mywebsite.com,https://qa05.digdash.com

    Alternative (non recommandé en production) : digdash_dashboard.PROP_CSRF_CHECK=false

     


5. Validation de la configuration

  1. Redémarrez Nginx : sudo nginx -s reload
  2. Redémarrez le service DigDash (Tomcat).
  3. Test : Ouvrez la page hôte, videz le cache du navigateur et vérifiez dans l'onglet Réseau (Network) des outils de développement que les requêtes vers le serveur distant affichent un statut 200 OK avec les headers Access-Control-Allow-Origin présents.

Résumé des flux de communication

Attention : Si vous ajoutez un nouveau site client à l'avenir, n'oubliez pas de le déclarer à la fois dans le map Nginx ET dans le fichier digdash.properties.