Modifié par Aurelie Bertrand le 2025/02/07 10:18

Masquer les derniers auteurs
jhurst 1.1 1 {{ddtoc/}}
2
3 ----
4
5 = **{{id name="__RefHeading___Toc1848_2652393712"/}}**Description =
6
7 **importtools **est un outil pour gérer les utilisateurs dans le LDAP DigDash. Il est notamment utile dans le cas de gestion d’une grosse base d’utilisateurs.
8
9 L'importtools peut être lancé directement via le fichier de commande « importtools.bat » fourni, avec les arguments par défaut (modifiables en éditant le fichier .bat)
10
11 ou
12
13 Il peut être exécuté via l’outil Java « importtools.jar » fourni dans le dossier <digdash_install>\add-ons\tools\lib avec les arguments par défaut ou personnalisables (voir partie suivante).
14
mperroud 2.1 15 (% class="box infomessage" %)
16 (((
jhurst 1.1 17 java -jar importtools.jar [-conf configfile] [-users userfile] [-out outputfile]
mperroud 2.1 18 )))
jhurst 1.1 19
fperrier 9.1 20 (% class="box warningmessage" id="HImportationd2019utilisateurs" %)
21 (((
22 {{id name="__RefHeading___Toc474_3721803795"/}}
jhurst 1.1 23
fperrier 9.1 24 Depuis la version 2022R1, la valeur du paramètre utilisateur **langChoice **est maintenant un code langue et non plus un index. Par exemple 0 est devenu "en", 1 est devenu "fr". Il faut prendre en compte ce changement et adapter vos scripts existants d'import des utilisateurs si besoin.
25 )))
26
27 = Importation d’utilisateurs =
28
jhurst 1.1 29 Elle consiste principalement à avoir deux fichiers en entrée :
30
31 * le fichier de configuration au format XML : le fichier d’exemple conf.xml est livré dans <digdash_install>\add-ons\tools\importtools ; il permet de faire la correspondance entre une colonne du fichier utilisateurs (voir suite) et un attribut d’un utilisateur LDAP dans le fichier de sortie (voir suite).
32 * le fichier utilisateurs au format Excel ou CSV : le fichier d’exemple users.xls est livré dans <digdash_install>\add-ons\tools\importtools ; Il s’agit de la base utilisateurs (une ligne par utilisateur) à importer dans LDAP. Ses colonnes correspondent aux attributs du fichier de configuration XML.
33
34 Et un fichier en sortie :
35
36 * le fichier de sortie au format XML : nommé « out.xml » par défaut, il est généré au lancement de l’outil « importtools » avec les deux fichiers mentionnés précédemment en entrée ; il est généré de manière à se mapper sur la structure LDAP.
37
38 |=Tag|=Description
39 |**-conf** <config file>|Chemin du fichier de configuration XML. Par défaut, conf.xml.
40 |**-users** <excel file / csvfile>|Chemin du fichier en entrée des utilisateurs à importer. Il s’agit d’un fichier Excel ou d’un fichier CSV. Par défaut, users.xls.
41 |**-out** <outputfile>|Chemin du fichier de sortie XML faisant le mapping avec LDAP. Par défaut, out.xml.
42 |**-help**|Commande d’aide d’usage.
43 |**-debug**|Affiche les traces dans les cas erreurs.
44 |**-import**|Envoie le fichier de sortie (par défaut out.xml) au serveur pour l’importer dans LDAP.
45 |**-importonly**|Utilise un fichier de sortie existant (par défaut, out.xml) et l’envoie au serveur pour l’importer dans LDAP.
abertrand 11.1 46 |**-server**|Adresse du serveur DigDash.
47 |**-domain**|Nom du domaine DigDash Enterprise (par exemple, ddenterpriseapi)
jhurst 1.1 48 |**-user**|L’utilisateur superviseur.
49 |**-pass**|Le mot de passe de l’utilisateur superviseur.
50
mperroud 7.2 51 = {{id name="__RefHeading___Toc476_3721803795"/}}Commandes d'ajout d'utilisateurs =
52
53 Un utilisateur peut être ajouté selon trois méthodes dans le LDAP :
54
55 == create ==
56
57 Dans ce mode l'utilisateur sera ajouté si, et seulement si, il n'existe pas.
58 En d'autres termes, avec la commande create, l'ajout d'un utilisateur existant est une erreur.
59
60 == overwrite ==
61
62 Cette commande va écraser un utilisateur existant.
63 Plus précisément il va être effacé avant d'un créé complètement avec les nouveaux attributs.
64 Si l'utilisateur n'existe pas au préalable, il sera simplement ajouté.
65
66 == update ==
67
68 Cette commande va mettre à jour l'utilisateur avec les attributs contenus dans votre fichier d'import.
69 L'utilisateur doit donc exister au préalable. Il ne sera pas effacé.
70
mperroud 2.1 71 = {{id name="__RefHeading___Toc476_3721803795"/}}Suppression d’utilisateurs =
72
73 Il est possible de supprimer tout ou partie selon critères des utilisateurs de la base LDAP DigDash.
74
75 |=Tag|=Description
76 |**-removeall**|Supprime TOUS les utilisateurs présents dans LDAP ET la licence.
Aurelie Bertrand 19.1 77 |**-removeall -attr **"nom de l'attribut ldap" **-regexp **"valeur de l'attribut ou expression régulière"|Supprime tous les utilisateurs dont la valeur de l'attribut ldap sépcifié vérifie l'expression régulière.
78 |**-removeall -license_type **"all.missing.forbidden.[type d'utilisateur]"|(((
mperroud 5.1 79 Supprime tous les utilisateurs selon leur type ou leur statut dans la licence :
80
81 * **all** : tous
82 * **missing **:  les utilisateurs absents de la licence
83 * **forbidden** : les utilisateurs dans la licence mais non autorisés
84 * **[type d'utilisateur]** : les valeurs possibles sont **named**, **extranet**, **concurrent**, **public**, **broadcast**.
85 Aucun, un ou plusieurs valeurs sont utilisables, séparés par un ".".
mperroud 7.1 86 Exemple : named.extranet ou missing.extranet.named
mperroud 5.1 87
88 Au moins un de ces paramètres doit être utilisé.
mperroud 4.1 89 )))
mperroud 2.1 90
91 = {{id name="__RefHeading___Toc478_3721803795"/}}Exportation d’utilisateurs =
92
93 Il est possible d’exporter les utilisateurs de la base LDAP.
94
95 **Options :**
96
97 |=Tag|=Description
98 |**-export**|Exporte tous les utilisateurs dans un fichier CSV. Par défaut, le fichier d’export se nomme users_export.csv.
99 |**-exportfile** "file.csv"|Exporte tous les utilisateurs dans le fichier CSV mentionné par son chemin absolu (précédé de **-export**).
100
jhurst 1.1 101 (% id="HIV.Exemples" %)
mperroud 3.1 102 = {{id name="__RefHeading___Toc1856_2652393712"/}}Paramètres généraux =
jhurst 1.1 103
mperroud 3.1 104 |(% colspan="2" %)**Logs**
105 |**-log** "C:\temp"|Le fichier log sera créé dans le répertoire spécifié, nommé de la manière suivante : importtool-yyyy-mm-dd_hh-mm-ss.log.
106 |**-log** "C:\log.txt"|Le fichier log sera créé dans le répertoire et sous le nom spécifiés.
107 |(% colspan="2" %)**Autres**
108 |**-loginForm**|Force l’authentification LDAP dans le cas SSO.
109
110 = Exemples =
111
jhurst 1.1 112 * **java -jar importtools.jar**
abertrand 9.2 113 * **java -jar importtools.jar -conf ../importtools/conf.xml -users ../importtools/users.xls -out ../importtools/out.xml**
114 * **java -jar importtools.jar -conf ../importtools/conf.xml -users ../importtools/users.xls -out ** **../importtools/out.xml -import -server http:~/~/localhost:8080 -domain ddenterpriseapi -user admin -pass admin**
jhurst 1.1 115 * **java -jar importtools.jar -export -server http:~/~/localhost:8080 -domain ddenterpriseapi -user admin -pass admin**
116 * **java -jar importtools.jar -export -exportfile "D:\my_users_export.csv" -server http:~/~/localhost:8080 -domain ddenterpriseapi -loginForm -user admin -pass admin**
117 * **java -jar importtools.jar -removeall -server http:~/~/localhost:8080 -domain ddenterpriseapi -user admin -pass admin**
118 * **java -jar importtools.jar -removeall -attr "license_type" -regexp "extranet" -server http:~/~/localhost:8080 -domain ddenterpriseapi -user admin -pass admin**
119 * **java -jar importtools.jar -removeall -attr "uid" -regexp "toto1[0-9]*" -server http:~/~/localhost:8080 -domain ddenterpriseapi -user admin -pass admin**
120
abertrand 12.1 121 = Résolution d'erreur d'encodage sous Windows =
122
123 Sous Windows, il peut y avoir des erreurs d'encodage. Afin de pallier à ces erreurs, il faut rajouter la commande suivante lors de l'export :
124
125 {{code language="shell"}}
126 -Dfile.encoding=utf-8
127 {{/code}}
128
129 Cette commande est un paramètre pour JAVA, il faut donc la placer en amont des options pour l'importtool.jar. Par exemple :
130
abertrand 14.1 131 {{code language="shell"}}
abertrand 13.1 132 "C:\java.exe" -Dfile.encoding=utf-8 -jar "importtools.jar" %* -export -exportFile "export_.csv" -server https://serveur.digdash.com -domain ddenterpriseapi -user admin -pass "AdminPassWrd"
133 {{/code}}
abertrand 12.1 134
Aurelie Bertrand 16.1 135 = Problématique de certificat SSL =
Aurelie Bertrand 15.1 136
137 (% class="wikigeneratedid" id="HContexte" %)
138 L'exécution du module **importtools **afin d'importer des utilisateurs en masse sur un serveur DigDash protégé par un **certificat SSL, **depuis votre poste local ou un poste qui n'est pas le serveur DigDash, peut échouer en raison d'une mauvaise configuration du certificat SSL.
139 Vous êtes susceptibles d'obtenir le message suivant à l'exécution du script :
140
141 (% class="box errormessage" %)
142 (((
143 2020-11-09 20:39:34,407 INFO [main] (DDEnterpriseAPIRest.java:1593) - Exception raised (params: clientId=ImportTool, method=login, pass=~*~*~*~*~*~*, user=~#~#~#~##@~#~##.fr): Erreur de téléchargement de l'URL: https:~/~/~#~##.fr/~#~#~#~#DOMAINE~#~##/DDEnterpriseAuthServlet
144 )))
145
146 (% class="wikigeneratedid" id="HContournement" %)
147 Pour contourner ce problème :
148
149 1. Modifiez le fichier **importools.bat.**
150 1. Ajoutez le paramètre **-DSSLNoPathCheck=true **avant **-jar **comme dans l'exemple ci-dessous :
151
152 (% class="box" %)
153 (((
Aurelie Bertrand 18.1 154 java -Dlog4j.configuration="file:~/~//%importtoolshome%/import_log4j.properties" **-DSSLNoPathCheck=true** -jar "%importtoolshome%/importtools.jar" %* -conf conf.xml -users users.xls -out out.xml -import -server https:~/~/~#~##.fr -domain ~#~##DOMAINE~#~## -user admin -pass ~#~#PASS~#~#
Aurelie Bertrand 15.1 155 )))
156
157