Modifié par Aurelie Bertrand le 2025/03/03 11:54

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