Code source wiki de Single sign-on NTLM

Modifié par jhurst le 2021/04/21 10:01

Afficher les derniers auteurs
1 {{ddtoc/}}
2
3 ----
4
5 Ce document décrit comment connecter la valve Waffle dans DigDash Enterprise pour activer la Sécurité Intégrée Windows (NTLM...).
6
7 Cet add-on est situé dans le dossier **<DDE install>/add-ons/singlesignon/Waffle**.
8
9 La version actuelle de Waffle est 1.8.1.
10
11 Ce document décrit chaque dossiers et fichiers à modifier pour activer cette valve.
12
13 = Configuration de Tomcat =
14
15 (((
16 == apache-tomcat / lib ==
17 )))
18
19 __Désinstallation de la version précédente de Waffle :__
20
21 Dans le cas ou vous mettez à jour DigDash, il est possible qu’une ancienne version de Waffle ait été déployée sur votre Tomcat. Vous devez d’abord supprimer cette version de **<DDE install>/apache-tomcat/lib **avant d’installer la nouvelle.
22
23 Veuillez vous référer au guide de déploiement Waffle de votre version précédente de DigDash Enterprise pour connaître la liste des fichiers de la librairie Waffle à supprimer..
24
25 __Tomcat 9 **(à partir de la version 2020R2 patch 20210105)**__
26
27 Ajoutez les librairies JAR Waffle du dossier **<DDE install>/add-ons/singlesignon/Waffle/Tomcat9** dans le dossier **<DDE install>/apache-tomcat/lib **:
28
29 * caffeine-2.8.4.jar
30 * guava-19.0.jar
31 * jna-5.6.0.jar
32 * jna-platform-5.6.0.jar
33 * slf4j-api-1.7.21.jar
34 * slf4j-log4j12-1.7.21.jar
35 * log4j-1.2.15.jar
36 * waffle-jna-2.3.0.jar
37 * waffle-tomcat9-2.3.0.jar
38 * waffle_digdash_extension_tomcat9.jar
39 * log4j.properties
40
41 __Tomcat 8__
42
43 Ajoutez les librairies JAR Waffle du dossier **<DDE install>/add-ons/singlesignon/Waffle/Tomcat8** dans le dossier **<DDE install>/apache-tomcat/lib **:
44
45 * guava-19.0.jar
46 * jna-4.2.1.jar
47 * jna-platform-4.2.1.jar
48 * slf4j-api-1.7.21.jar
49 * slf4j-log4j12-1.7.21.jar
50 * log4j-1.2.15.jar
51 * waffle-jna-1.8.1.jar
52 * waffle-tomcat8-1.8.1.jar
53 * waffle_digdash_extension_tomcat8.jar
54 * log4j.properties
55
56 __Tomcat 7__
57
58 Ajoutez les librairies JAR Waffle du dossier **<DDE install>/add-ons/singlesignon/Waffle/Tomcat7** dans le dossier **<DDE install>/apache-tomcat/lib **:
59
60 * guava-19.0.jar
61 * jna-4.2.1.jar
62 * jna-platform-4.2.1.jar
63 * slf4j-api-1.7.21.jar
64 * slf4j-log4j12-1.7.21.jar
65 * log4j-1.2.15.jar
66 * waffle-jna-1.8.1.jar
67 * waffle-tomcat7-1.8.1.jar
68 * waffle_digdash_extension_tomcat7.jar
69 * log4j.properties
70
71 == apache-tomcat / conf / context.xml ==
72
73 Décommentez ou ajoutez le XML suivant pour la valve de sécurité :
74
75 {{code language="XML"}}
76 <Valve className="waffle.apache.SharedNegotiateAuthenticator"
77 principalFormat="fqn"
78 roleFormat="both"
79 sharedPasswd="SecretPwdToChange"
80 allowAddr="localhost,127.0.0.*">
81 </Valve>
82 {{/code}}
83
84 (% class="box" %)
85 (((
86 Pour décommenter, supprimez les séquences **<!~-~-** et **~-~->** entourant le code xml.
87 )))
88
89 Il est nécessaire de changer le mot de passe partagé (**sharedPasswd**). Ce mot de passe devra être identique à celui spécifié lors de la configuration du Tableau de bord et du Web Studio.
90
91 Vous pouvez aussi ajouter les adresses des hôtes distants autorisés (**allowAddr**) pour permettre à d'autres applications (digdash_dashboard) de se connecter au serveur DigDash Enterprise. Dans l'attribut **allowAddr**, vous devriez ajouter au minimum l'adresse IP de votre serveur.
92
93 (% id="Hapache-tomcat2Fconf2Fweb.xml" %)
94 == apache-tomcat / conf / web.xml ==
95
96 Décommentez ou ajoutez le XML suivant pour la contrainte de sécurité :
97
98 {{code language="XML"}}
99 <security-role>
100 <role-name>Tout le monde</role-name>
101 </security-role>
102 <security-constraint>
103 <display-name>Waffle Security Constraint</display-name>
104 <web-resource-collection>
105 <web-resource-name>Protected Area</web-resource-name>
106 <url-pattern>/*</url-pattern>
107 </web-resource-collection>
108 <auth-constraint>
109 <role-name>Tout le monde</role-name>
110 </auth-constraint>
111 </security-constraint>
112 <security-constraint>
113 <display-name>vjdbc Security Constraint</display-name>
114 <web-resource-collection>
115 <web-resource-name>UnProtected Area</web-resource-name>
116 <url-pattern>/vjdbc/*</url-pattern>
117 </web-resource-collection>
118 </security-constraint>
119
120 {{/code}}
121
122
123 (% class="box warningmessage" %)
124 (((
125 Le nom du "security role" (role-name) DOIT correspondre au rôle réel que vous avez dans votre AD (localisé). Exemple : BUILTIN\Utilisateurs
126 )))
127
128 Si vous n’êtes pas sûr du nom du rôle vous pouvez activer les informations de debug pour Waffle en utilisant le fichier log4j.properties fournit avec les jar.
129
130 Il suffit de le placer dans le répertoire **<DDE install>/apache-tomcat/lib**.
131
132 = Configuration des applications DigDash =
133
134 (% class="wikigeneratedid" id="Hdigdash.properties" %)
135 Depuis la version 2021 R1, toutes les applications de DigDash Enterprise se configurent via un seul fichier : **digdash.properties**
136
137 L'utilisation de ce fichier est décrite ici : [[Externalisation des paramètres dans un fichier //properties//>>doc:Digdash.deployment.configuration.advanced_system_guide.WebHome||anchor="externalisation"]]
138
139 Dans tout ce qui suit les noms par défaut des applications seront utilisés. Si vous avez renommé certains fichiers war vous devrez modifier le fichier **digdash.properties** en conséquence.
140
141 == Serveur (ddenterpriseapi.war) ==
142
143 Cherchez la définition du paramètre **authMethod** et changez sa valeur en **NTUser** ou **NTUserOrLDAP**:
144
145 {{code language="properties"}}
146 ddenterpriseapi.authMethod=NTUser
147 {{/code}}
148
149 //Note ~://
150
151 Le mode «** NTUserOrLDAP **» permet une authentification sur le serveur DigDash via la sécurité Windows Intégrée, avec une option pour s’authentifier via le LDAP DigDash en cas d’échec.
152
153 Par exemple, un utilisateur du domaine NT pourra automatiquement passer la valve Waffle avec son authentifiant Windows, mais, s’il n’existe pas dans le LDAP DigDash, il se verra proposer un écran de login pour s’authentifier avec un login DigDash.
154
155 Dans ce mode, un paramètre supplémentaire «** loginForm **» de certaines URLs permet d’afficher de toujours afficher l’écran de login DigDash. Ainsi, l’authentifiant Windows ne sert qu’à passer la valve Waffle. Un cas typique d’usage est de permettre à un utilisateur Windows de se connecter en tant qu’ « admin » dans des pages de configuration DigDash.
156
157 == Tableau de bord (digdash_dashboard.war) ==
158
159 Cherchez la définition du paramètre **digdash_dashboard.sharedPasswd**.
160 Décommentez la ligne en supprimant le caractère **#** en début de ligne.
161
162 Changez la valeur du mot de passe (toutes les applications utilisant ce même paramètre devront utiliser la même valeur).
163
164 {{code language="properties"}}
165 digdash_dashboard.sharedPasswd=SecretPwdToChange
166 {{/code}}
167
168 (% class="box warningmessage" %)
169 (((
170 Le mot de passe spécifié doit être identique à celui que vous avez mis dans le fichier **<DDE install>/apache-tomcat/conf/context.xml**.
171 )))
172
173
174 (% class="wikigeneratedid" id="HParamE8tresrecommandE9spourleloginautomatiquedutableaudebord" %)
175 __Paramètres recommandés pour le login automatique du tableau de bord__ :
176
177 Il est recommandé de configurer les paramètres suivants lors du déploiement en mode Sécurité Windows Intégrée (Waffle).
178
179 Spécifiez (et forcez) le domaine DigDash Enterprise :
180
181 {{code language="properties"}}
182 digdash_dashboard.DOMAIN=ddenterpriseapi
183 digdash_dashboard.FORCEDOMAIN=true
184
185 {{/code}}
186
187 Spécifiez (et forcez) l’URL du serveur du domain DigDash Enterprise.
188 Utilisez l’adresse //localhost// si l’application web ddenterpriseapi est installée sur le même Tomcat que l’application web digdash_dashboard.
189 Adaptez le port si nécessaire :
190
191 {{code language="properties"}}
192 digdash_dashboard.SERVERURL=http://localhost:8080
193 digdash_dashboard.FORCESERVERURL=true
194 {{/code}}
195
196 Spécifier une URL de déconnexion afin que l’utilisateur puisse se déconnecter de DigDash Enterprise et, par exemple, revenir à une page d’Intranet :
197
198 {{code language="properties"}}
199 digdash_dashboard.urlLogout=/adminconsole
200 {{/code}}
201
202
203 (% class="box warningmessage" %)
204 (((
205 Par défaut la déconnexion du tableau de bord retourne à la page de login de ce dernier. Cette page n’existe pas dans le contexte du SSO.
206 Il est important de spécifier une URL de retour en cas de déconnexion.
207 )))
208
209 Voir la documentation [[Réglages avancés des paramètres système>>doc:Digdash.deployment.configuration.advanced_system_guide.WebHome]] pour plus de détails sur ces paramètres.
210
211 == Web Studio (studio.war) ==
212
213 (% id="cke_bm_653S" style="display:none" %)
214
215 (% id="cke_bm_389S" style="display:none" %) (%%)Cherchez la définition du paramètre **authMethod.**
216 Décommentez la ligne en supprimant le caractère # en début de ligne.
217
218 {{code language="properties"}}
219 studio.authMethod=NTUserOrLDAP
220 {{/code}}
221
222 Cherchez la définition du paramètre **studio.sharedPasswd**.
223 Décommentez la ligne en supprimant le caractère # en début de ligne.
224 Changez la valeur du mot de passe (toutes les applications utilisant ce même paramètre devront utiliser la même valeur).
225
226 {{code language="properties"}}
227 studio.sharedPasswd=SecretPwdToChange
228 {{/code}}
229
230 (% class="box warningmessage" %)
231 (((
232 Le mot de passe spécifié doit être identique à celui que vous avez mis dans le fichier **<DDE install>/apache-tomcat/conf/context.xml**.
233 )))
234
235
236 __Paramètres recommandés pour le login automatique du Web Studio__ :
237
238 Il est recommandé de configurer les paramètres suivants lors du déploiement en mode Sécurité Windows Intégrée (Waffle).
239
240 Spécifiez (et forcez) le domaine DigDash Enterprise :
241
242 {{code language="properties"}}
243 studio.FORCEDOMAIN=true
244 studio.DOMAIN=ddenterpriseapi
245 {{/code}}
246
247 Spécifiez (et forcez) l’URL du serveur du domain DigDash Enterprise.
248 Utilisez l’adresse **//localhost//** si l’application web **ddenterpriseapi** est installée sur le même Tomcat que l’application web **studio**.
249 Adaptez le port si nécessaire :
250
251 {{code language="properties"}}
252 studio.FORCESERVERURL=true
253 studio.SERVERURL=http://localhost:8080
254 {{/code}}
255
256 Spécifiez une URL de déconnexion afin que l’utilisateur puisse se déconnecter de DigDash Enterprise et, par exemple, revenir à une page d’Intranet :
257
258 {{code language="properties"}}
259 studio.urlLogout=/adminconsole
260 {{/code}}
261
262 Par défaut la déconnexion du Web Studio retourne à la page de login de ce dernier. Cette page n’existe pas dans le contexte du SSO.
263 Il est important de spécifier une URL de retour en cas de déconnexion.
264
265 == Desktop Studio (adminconsole.war) ==
266
267 {{warning}}
268 On privilégiera l'utilisation du Studio Web à partir de la version 2020R2.
269 {{/warning}}
270
271 (% id="cke_bm_492S" style="display:none" %) (%%)Cherchez la définition du paramètre **authMethod.**
272 Décommentez la ligne en supprimant le caractère # en début de ligne.
273
274 {{code language="properties"}}
275 adminconsole.authMethod=NTUserOrLDAP
276 {{/code}}
277
278 Cherchez la définition du paramètre **studio.sharedPasswd**.
279 Décommentez la ligne en supprimant le caractère **# **en début de ligne.
280 Changez la valeur du mot de passe (toutes les applications utilisant ce même paramètre devront utiliser la même valeur).
281
282 {{code language="properties"}}
283 adminconsole.sharedPasswd=SecretPwdToChange
284 {{/code}}
285
286 (% class="box warningmessage" %)
287 (((
288 Le mot de passe spécifié doit être identique à celui que vous avez mis dans le fichier **<DDE install>/apache-tomcat/conf/context.xml**.
289 )))
290
291 (% id="cke_bm_619S" style="display:none" %)__ __(%%)__Paramètres recommandés pour le login automatique du Web Studio__ :
292
293 Il est recommandé de configurer les paramètres suivants lors du déploiement en mode Sécurité Windows Intégrée (Waffle).
294
295 Spécifiez (et forcez) le domaine DigDash Enterprise :
296
297 {{code language="properties"}}
298 adminconsole.FORCEDOMAIN=true
299 adminconsole.DOMAIN=ddenterpriseapi
300 {{/code}}
301
302 Spécifiez (et forcez) l’URL du serveur DigDash Enterprise :
303
304 {{code language="properties"}}
305 adminconsole.FORCESERVERURL=true
306 adminconsole.SERVERURL=http://url_serveur
307 {{/code}}
308
309