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

Show last authors
1
2
3 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é.
4
5 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.
6
7 == Configuration du Serveur Web (Nginx) ==
8
9 Cette étape permet au navigateur d'accepter les réponses provenant du serveur DigDash distant.
10
11 === Définition des domaines autorisés ===
12
13 Dans votre configuration Nginx, utilisez un bloc map pour lister les origines de confiance.
14
15 {{code language="nginx"}}
16 # À placer dans le bloc 'http' ou avant le bloc 'server'
17 map $http_origin $cors_origin {
18     default "";
19     "https://mywebsite.com"    $http_origin;
20     "https://qa05.digdash.com" $http_origin;
21 }
22 {{/code}}
23
24
25 # À 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; }
26
27 === B. Ajout des Headers de sécurité ===
28
29 Dans le bloc server {} de votre site, ajoutez les instructions suivantes :
30
31 Nginx
32
33
34 # 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;"; }
35
36 >**Note :** Le paramètre SameSite=None est indispensable pour que les sessions persistent dans une iframe. Le site doit impérativement être en **HTTPS**.
37
38 ----
39
40 == 4. Configuration applicative (DigDash) ==
41
42 Une fois le réseau configuré, il faut autoriser les domaines au niveau de la protection anti-CSRF de DigDash.
43
44 1. Éditez le fichier : /etc/digdash/digdash.properties
45 1. (((
46 Modifiez ou ajoutez la propriété suivante :
47
48 Properties
49
50 # Liste des domaines séparés par une virgule digdash_dashboard.PROP_CSRF_TARGET_ORIGIN=https:~/~/mywebsite.com,https:~/~/qa05.digdash.com
51
52 //Alternative (non recommandé en production) ~:// digdash_dashboard.PROP_CSRF_CHECK=false
53
54
55 )))
56
57 ----
58
59 == 5. Validation de la configuration ==
60
61 1. Redémarrez Nginx : sudo nginx -s reload
62 1. Redémarrez le service DigDash (Tomcat).
63 1. **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.
64
65 ----
66
67 === Résumé des flux de communication ===
68
69 >**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.