Modifié par Aurelie Bertrand le 2025/10/14 14:07

Afficher les derniers auteurs
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 — ou  —
11 ê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).
12
13 (% class="box infomessage" %)
14 (((
15 java -jar importtools.jar [-conf configfile] [-users userfile] [-out outputfile]
16 )))
17
18 = Importation d’utilisateurs =
19
20 Elle consiste principalement à avoir deux fichiers en entrée :
21
22 * 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).
23 * 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.
24
25 Et un fichier en sortie :
26
27 * 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.
28
29 |=Tag|=Description
30 |**-conf** <config file>|Chemin du fichier de configuration XML. Par défaut, conf.xml.
31 |**-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.
32 |**-out** <outputfile>|Chemin du fichier de sortie XML faisant le mapping avec LDAP. Par défaut, out.xml.
33 |**-help**|Commande d’aide d’usage.
34 |**-debug**|Affiche les traces dans les cas erreurs.
35 |**-import**|Envoie le fichier de sortie (par défaut out.xml) au serveur pour l’importer dans LDAP.
36 |**-importonly**|Utilise un fichier de sortie existant (par défaut, out.xml) et l’envoie au serveur pour l’importer dans LDAP.
37 |**-server**|Adresse du serveur DigDash.
38 |**-domain**|Nom du domaine DigDash Enterprise (par exemple, ddenterpriseapi)
39 |**-user**|L’utilisateur superviseur.
40 |**-pass**|Le mot de passe de l’utilisateur superviseur.
41
42 = {{id name="__RefHeading___Toc476_3721803795"/}}Commandes d'ajout d'utilisateurs =
43
44 (% class="box infomessage" %)
45 (((
46 ℹ Si un utilisateur a un élément (rôle, groupe ACL et profil) qui n'existe pas au moment de l'import, l'utilisateur est quand même ajouté sans cet élément.
47 )))
48
49 Un utilisateur peut être ajouté selon trois méthodes dans le LDAP :
50
51 == create ==
52
53 Dans ce mode l'utilisateur sera ajouté si, et seulement si, il n'existe pas.
54 En d'autres termes, avec la commande create, l'ajout d'un utilisateur existant est une erreur.
55
56 (% class="box" %)
57 (((
58 💡 **Import de profils utilisateur**
59
60 Il est possible d'importer des profils utilisateur en mode création de la même manière que des utilisateurs.
61 Pour cela, vous pouvez utiliser le même fichier au format Excel ou CSV que pour l'importation des utilisateurs :
62
63 1. Dans les colonnes **uid**, **dn** et **cn**, à la place du nom de l'utilisateur, entrez le nom des profils avec le préfixe "**dd_profil_**"
64 Par exemple : //"dd_profil_profilA" //avec //profilA //le nom du profil.
65 Vous pouvez consulter le fichier [[import_profil.csv>>attach:import_profil.csv]] pour exemple.
66 1. Lancez importtools normalement.
67 ➡ Les profils renseignés dans le fichier vont être créés avec les rôles, ACLs... associés.
68 )))
69
70 == overwrite ==
71
72 Cette commande va écraser un utilisateur existant.
73 Plus précisément il va être effacé avant d'un créé complètement avec les nouveaux attributs.
74 Si l'utilisateur n'existe pas au préalable, il sera simplement ajouté.
75
76 == update ==
77
78 Cette commande va mettre à jour l'utilisateur avec les attributs contenus dans votre fichier d'import.
79 L'utilisateur doit donc exister au préalable. Il ne sera pas effacé.
80
81 = {{id name="__RefHeading___Toc476_3721803795"/}}Suppression d’utilisateurs =
82
83 Il est possible de supprimer tout ou partie selon critères des utilisateurs de la base LDAP DigDash.
84
85 |=Tag|=Description
86 |**-removeall**|Supprime TOUS les utilisateurs présents dans LDAP ET la licence.
87 |**-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.
88 |**-removeall -license_type **"all.missing.forbidden.[type d'utilisateur]"|(((
89 Supprime tous les utilisateurs selon leur type ou leur statut dans la licence :
90
91 * **all** : tous
92 * **missing **:  les utilisateurs absents de la licence
93 * **forbidden** : les utilisateurs dans la licence mais non autorisés
94 * **[type d'utilisateur]** : les valeurs possibles sont **named**, **extranet**, **concurrent**, **public**, **broadcast**.
95 Aucun, un ou plusieurs valeurs sont utilisables, séparés par un ".".
96 Exemple : named.extranet ou missing.extranet.named
97
98 Au moins un de ces paramètres doit être utilisé.
99 )))
100
101 = {{id name="__RefHeading___Toc478_3721803795"/}}Exportation d’utilisateurs =
102
103 Il est possible d’exporter les utilisateurs de la base LDAP.
104
105 **Options :**
106
107 |=Tag|=Description
108 |**-export**|Exporte tous les utilisateurs dans un fichier CSV. Par défaut, le fichier d’export se nomme users_export.csv.
109 |**-exportfile** "file.csv"|Exporte tous les utilisateurs dans le fichier CSV mentionné par son chemin absolu (précédé de **-export**).
110
111 (% id="HIV.Exemples" %)
112 = {{id name="__RefHeading___Toc1856_2652393712"/}}Paramètres généraux =
113
114 |(% colspan="2" %)**Logs**
115 |**-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.
116 |**-log** "C:\log.txt"|Le fichier log sera créé dans le répertoire et sous le nom spécifiés.
117 |(% colspan="2" %)**Autres**
118 |**-loginForm**|Force l’authentification LDAP dans le cas SSO.
119
120 = Exemples =
121
122 * **java -jar importtools.jar**
123 * **java -jar importtools.jar -conf ../importtools/conf.xml -users ../importtools/users.xls -out ../importtools/out.xml**
124 * **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**
125 * **java -jar importtools.jar -export -server http:~/~/localhost:8080 -domain ddenterpriseapi -user admin -pass admin**
126 * **java -jar importtools.jar -export -exportfile "D:\my_users_export.csv" -server http:~/~/localhost:8080 -domain ddenterpriseapi -loginForm -user admin -pass admin**
127 * **java -jar importtools.jar -removeall -server http:~/~/localhost:8080 -domain ddenterpriseapi -user admin -pass admin**
128 * **java -jar importtools.jar -removeall -attr "license_type" -regexp "extranet" -server http:~/~/localhost:8080 -domain ddenterpriseapi -user admin -pass admin**
129 * **java -jar importtools.jar -removeall -attr "uid" -regexp "toto1[0-9]*" -server http:~/~/localhost:8080 -domain ddenterpriseapi -user admin -pass admin**
130
131 = Résolution d'erreur d'encodage sous Windows =
132
133 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 :
134
135 {{code language="shell"}}
136 -Dfile.encoding=utf-8
137 {{/code}}
138
139 Cette commande est un paramètre pour JAVA, il faut donc la placer en amont des options pour l'importtool.jar. Par exemple :
140
141 {{code language="shell"}}
142 "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"
143 {{/code}}
144
145 = Problématique de certificat SSL =
146
147 (% class="wikigeneratedid" id="HContexte" %)
148 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.
149 Vous êtes susceptibles d'obtenir le message suivant à l'exécution du script :
150
151 (% class="box errormessage" %)
152 (((
153 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
154 )))
155
156 (% class="wikigeneratedid" id="HContournement" %)
157 Pour contourner ce problème :
158
159 1. Modifiez le fichier **importools.bat.**
160 1. Ajoutez le paramètre **-DSSLNoPathCheck=true **avant **-jar **comme dans l'exemple ci-dessous :
161
162 (% class="box" %)
163 (((
164 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~#~#
165 )))
166
167