Modifié par Aurelie Bertrand le 2025/03/14 15:45

Afficher les derniers auteurs
1 {{ddtoc/}}
2
3 ----
4
5 (% class="box infomessage" %)
6 (((
7 **Prérequis : **Les propositions d'intégration d'objets DigDash (tableaux de bord, pages, flux, etc.) dans des iframe nécessitent de mettre en place ces balises iframe au sein de pages HTML, elles-mêmes distribuées par un serveur Web.
8 )))
9
10 (% class="wikigeneratedid" id="HIntroduction" %)
11 Dans ce document, nous présentons des URLs fonctionnant dans le contexte suivant :
12
13 * Nom du serveur: ddsrv
14 * Port: 8080
15 * Domaine DigDash : ddenterpriseapi
16 * Domaine tableau de bord DigDash: digdash_dashboard
17
18 = Tableau de bord =
19
20 Vous pouvez intégrer une ou plusieurs pages de tableau de bord dans une iframe.
21
22 URL : http:~/~/ddsrv:8080/digdash_dashboard/index.html
23
24 Paramètres disponibles :
25
26 * **user**=<user> Utilisateur à authentifier
27 * **pass**=<password> Mot de passe pour l’utilisateur
28 * **domain**=<domainname> Nom du domaine DigDash Enterprise (Exemple : ddenterpriseapi)
29 * **server**=<server URL> URL du domaine DigDash Enterprise (Exemple : [[http:~~/~~/localhost:8080)>>http://localhost:8080)]]
30 * **defaultPage**=<pageId> Identifiant de la page que l'utilisateur souhaite afficher par défaut à la place de la première page (voir note ci-dessous pour plus de détails)
31 * **hideBanner**=<true|false> Cache (true) ou montre (false) la barre de titre
32 * **hideFilters**=<true|false> Cache (true) ou montre (false) la barre de filtres
33 * **hideNavigationMenu**=<true|false> => Active (true) ou désactive (false) le menu de navigation (Vertical ou Onglets).
34 * **useHistory**=<true|false> Désactive (false) l'historique de navigation. Le menu de navigation dans l'historique en haut à droite n'est plus visible.
35 * <nomVariable>=<valeurVariable> Spécifie la valeur de la variable nomVariable
36 * <filterselection> Voir le paragraphe Filtres ci-dessous
37
38 Exemple :
39
40 (% class="box" %)
41 (((
42 http:~/~/ddsrv:8080/digdash_dashboard/index.html?server=http:~/~/localhost:8080&domain=ddenterpriseapi&user=user1&pass=pass1&hideBanner=true&hideFilters=true&var=1
43 )))
44
45 (% class="box infomessage" %)
46 (((
47 **Identifiant de la page (pageId)**
48 Cet identifiant est visible dans l'Éditeur de tableau de bord dans le menu contextuel de la page (affiché via un clic droit sur le titre de l'onglet de la page).
49 Deux identifiants sont affichés, l'un est unique et non modifiable (uid), l'autre est "calculé" en fonction du nom du rôle et de la page (ces 2 éléments étant modifiables, l'identifiant peut donc changer et le paramètre ne plus être efficace).
50 Les 2 identifiants sont utilisables par l'utilisateur pour ce paramètre.
51 )))
52
53 (% class="box infomessage" %)
54 (((
55 **Note** : Vous pouvez aussi utiliser un mécanisme d'authentification server-side pour éviter les paramètres user/pass dans l'URL. Consulter le document [[Anonymisation des Urls>>doc:Digdash.customization.anonymisation_url.WebHome]].
56 )))
57
58 = Pages de tableaux de bord =
59
60 Vous pouvez intégrer une page ou toutes les pages d’un tableau de bord d’un rôle ou d’un utilisateur dans une iframe.
61
62 URL : http:~/~/ddsrv:8080/digdash_dashboard/index.html?page=<user|role>[.<pagename>]
63
64 Si vous souhaitez afficher une page, spécifiez le nom de la page, sinon, l’URL affiche toutes les pages de l’utilisateur ou rôle.
65
66 Paramètres disponibles :
67
68 * **page**=<user|role>[.<pagename>] Nom de la page préfixée par le rôle ou le user
69 * **user**=<user> Utilisateur à authentifier
70 * **pass**=<password> Mot de passe pour l’utilisateur non authentifié
71 * **server**=<server URL> URL du domaine DigDash Enterprise (Exemple : http:~/~/localhost:8080)
72 * **domain**=<domainname> Nom du domaine DigDash Enterprise (Exemple : ddenterpriseapi)
73 * **hideBanner**=<true|false> Cache (true) ou montre (false) la barre de titre
74 * **hideFilters**=<true|false> Cache (true) ou montre (false) la barre de filtres
75 * <nomVariable>=<valeurVariable> Spécifie la valeur de la variable nomVariable
76 * <filterselection> Voir le paragraphe  Filtres ci-dessous
77
78 Exemple :
79
80 (% class="box" %)
81 (((
82 http:~/~/ddsrv:8080/digdash_dashboard/index.html?page=user1.page1&server=http:~/~/localhost:8080&domain=ddenterpriseapi&user=user1&pass=pass1&hideBanner=true&hideFilters=true&var=1
83 )))
84
85 (% class="box infomessage" %)
86 (((
87 Note : Vous pouvez aussi utiliser un mécanisme d'authentification server-side pour éviter les paramètres user/pass dans l'URL. Consulter le document [[Anonymisation des Urls>>doc:Digdash.customization.anonymisation_url.WebHome]]
88 )))
89
90 = {{glossaryReference glossaryId="Glossary" entryId="Flux"}}Flux{{/glossaryReference}} d’information =
91
92 Vous pouvez intégrer un flux d’information (composant graphique) de votre portefeuille d’informations dans une iframe.
93
94 URL : http:~/~/ddsrv:8080/ddenterpriseapi/viewflow?flowId=<flowid>
95
96 Vous pouvez facilement obtenir l’URL d’un flux d’information depuis la console d’administration. Pour cela, sélectionnez le flux, faites un clic droit et choisissez **Copier l’URL du flux**
97
98 Paramètres disponibles :
99
100 * **flowId**=<flow> Identifiant du flux à afficher
101 * **user**=<user> Utilisateur à authentifier
102 * **pass**=<password> Mot de passe pour l’utilisateur
103 * **hideFilters**=<true|false> Cache (true) ou montre (false) la barre de filtres
104 * {{id name="_GoBack"/}}<nomVariable>=<valeur> Spécifie la valeur de la variable nomVariable
105 * <filterselection> Voir le paragraphe Filters ci-dessous
106
107 Exemple :
108
109 (% class="box" %)
110 (((
111 http:~/~/ddsrv:8080/ddenterpriseapi/viewflow?flowId=2340fd0&user=user1&pass=pass1&hideFilters=true
112 )))
113
114 (% class="box infomessage" %)
115 (((
116 Note : Vous pouvez aussi utiliser un mécanisme d'authentification server-side pour éviter les paramètres user/pass dans l'URL. Consulter le document [[Anonymisation des Urls>>doc:Digdash.customization.anonymisation_url.WebHome]]
117 )))
118
119 = Filtres =
120
121 Vous pouvez définir des filtres spécifiques sur des dimensions qui seront pris en compte lors de l’intégration des URLs dans vos iframes.
122
123 Pour cela, renseignez les paramètres supplémentaires suivants :
124
125 * NomDimension=ValeurFiltre
126
127 Si la dimension contient une hiérarchie ou plus, vous pouvez sélectionner la hiérarchie et le niveau souhaités en ajoutant :
128
129 * **H**<DimensionName>=NomHierarchie
130 * **L**<DimensionName>=NiveauHierarchie
131
132 Exemple :
133
134 (% class="box" %)
135 (((
136 http:~/~/ddsrv:8080/ddenterpriseapi/viewflow?flowId=2340fd0&user=user1&pass=pass1&Geo=France&HGeo=Geography&LGeo=Country
137 )))
138
139 = Contraintes de sécurité =
140
141 Certains navigateurs, par exemple Chrome à partir de sa version 80, peuvent refuser de transmettre des cookies provenant d'une page intégrée par une iframe, si cette iframe n'a pas le même domaine que la page l'incluant. Une erreur apparait alors dans la console du navigateur, à propos d'un attribute //SameSite //qui n'est pas défini.
142
143 L'attribut //SameSite// ne peut pas être défini sur un cookie non sécurisé. Donc le cookie doit aussi avoir un attribut //Secure //pour permettre de définir //SameSite=None//. Et l'attribut //Secure// ne peut être défini que si la connexion est en HTTPS.
144
145 Donc, en conséquence, intégrer une page de tableaux de bord, ou une page viewflow, en tant qu'iframe,** si l'iframe et la page l'incluant ont des domaines différents**, nécessite d'utiliser une connexion HTTPS, et de configurer les cookies.
146
147 Le document Mozilla suivant explique cette contrainte : [[https:~~/~~/developer.mozilla.org/fr/docs/Web/HTTP/Headers/Set-Cookie/SameSite>>url:https://developer.mozilla.org/fr/docs/Web/HTTP/Headers/Set-Cookie/SameSite]]