Code source wiki de Outil d’importation d'utilisateurs
Modifié par fperrier le 2022/07/12 16:32
Afficher les derniers auteurs
author | version | line-number | content |
---|---|---|---|
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 | (% class="box warningmessage" id="HImportationd2019utilisateurs" %) | ||
21 | ((( | ||
22 | {{id name="__RefHeading___Toc474_3721803795"/}} | ||
23 | |||
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 | (% class="wikigeneratedid" %) | ||
28 | = Importation d’utilisateurs = | ||
29 | |||
30 | Elle consiste principalement à avoir deux fichiers en entrée : | ||
31 | |||
32 | * 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). | ||
33 | * 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. | ||
34 | |||
35 | Et un fichier en sortie : | ||
36 | |||
37 | * 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. | ||
38 | |||
39 | |=Tag|=Description | ||
40 | |**-conf** <config file>|Chemin du fichier de configuration XML. Par défaut, conf.xml. | ||
41 | |**-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. | ||
42 | |**-out** <outputfile>|Chemin du fichier de sortie XML faisant le mapping avec LDAP. Par défaut, out.xml. | ||
43 | |**-help**|Commande d’aide d’usage. | ||
44 | |**-debug**|Affiche les traces dans les cas erreurs. | ||
45 | |**-import**|Envoie le fichier de sortie (par défaut out.xml) au serveur pour l’importer dans LDAP. | ||
46 | |**-importonly**|Utilise un fichier de sortie existant (par défaut, out.xml) et l’envoie au serveur pour l’importer dans LDAP. | ||
47 | |**-server**|L’adresse du serveur DigDash. | ||
48 | |**-user**|L’utilisateur superviseur. | ||
49 | |**-pass**|Le mot de passe de l’utilisateur superviseur. | ||
50 | |||
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 | |||
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. | ||
77 | |(% style="color:#2ecc71" %)**//Depuis 2020R2 patch 20210302 ~://**| | ||
78 | |**-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. | ||
79 | |**-removeall -license_type=**"all.missing.forbidden.[type d'utilisateur]"|((( | ||
80 | Supprime tous les utilisateurs selon leur type ou leur statut dans la licence : | ||
81 | |||
82 | * **all** : tous | ||
83 | * **missing **: les utilisateurs absents de la licence | ||
84 | * **forbidden** : les utilisateurs dans la licence mais non autorisés | ||
85 | * **[type d'utilisateur]** : les valeurs possibles sont **named**, **extranet**, **concurrent**, **public**, **broadcast**. | ||
86 | Aucun, un ou plusieurs valeurs sont utilisables, séparés par un ".". | ||
87 | Exemple : named.extranet ou missing.extranet.named | ||
88 | |||
89 | Au moins un de ces paramètres doit être utilisé. | ||
90 | ))) | ||
91 | |(% style="color:#2ecc71" %)**//Avant 2020R2 patch 20210302 ~://**| | ||
92 | |**-removeall** **-attr** "ldap attribute name" **-regexp** "regexp"|Supprime toutes les entrées dans LDAP ET la licence lorsque l’attribut spécifié de l’entrée LDAP correspond à l’expression régulière mentionnée. | ||
93 | |**-removeall** **-attr** "license_type" **-regexp** "extranet"|Cas spécial : supprime l’utilisateur dans LDAP ET le licence si le type de la licence de l’utilisateur est « extranet ». | ||
94 | |||
95 | = {{id name="__RefHeading___Toc478_3721803795"/}}Exportation d’utilisateurs = | ||
96 | |||
97 | Il est possible d’exporter les utilisateurs de la base LDAP. | ||
98 | |||
99 | **Options :** | ||
100 | |||
101 | |=Tag|=Description | ||
102 | |**-export**|Exporte tous les utilisateurs dans un fichier CSV. Par défaut, le fichier d’export se nomme users_export.csv. | ||
103 | |**-exportfile** "file.csv"|Exporte tous les utilisateurs dans le fichier CSV mentionné par son chemin absolu (précédé de **-export**). | ||
104 | |||
105 | (% id="HIV.Exemples" %) | ||
106 | = {{id name="__RefHeading___Toc1856_2652393712"/}}Paramètres généraux = | ||
107 | |||
108 | |(% colspan="2" %)**Logs** | ||
109 | |**-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. | ||
110 | |**-log** "C:\log.txt"|Le fichier log sera créé dans le répertoire et sous le nom spécifiés. | ||
111 | |(% colspan="2" %)**Autres** | ||
112 | |**-loginForm**|Force l’authentification LDAP dans le cas SSO. | ||
113 | |||
114 | = Exemples = | ||
115 | |||
116 | * **java -jar importtools.jar** | ||
117 | * **java -jar importtools.jar -conf conf.xml -users users.xls -out out.xml** | ||
118 | * **java -jar importtools.jar -conf conf.xml -users users.xls -out out.xml -import -server http:~/~/localhost:8080 -domain ddenterpriseapi -user admin -pass admin** | ||
119 | * **java -jar importtools.jar -export -server http:~/~/localhost:8080 -domain ddenterpriseapi -user admin -pass admin** | ||
120 | * **java -jar importtools.jar -export -exportfile "D:\my_users_export.csv" -server http:~/~/localhost:8080 -domain ddenterpriseapi -loginForm -user admin -pass admin** | ||
121 | * **java -jar importtools.jar -removeall -server http:~/~/localhost:8080 -domain ddenterpriseapi -user admin -pass admin** | ||
122 | * **java -jar importtools.jar -removeall -attr "license_type" -regexp "extranet" -server http:~/~/localhost:8080 -domain ddenterpriseapi -user admin -pass admin** | ||
123 | * **java -jar importtools.jar -removeall -attr "uid" -regexp "toto1[0-9]*" -server http:~/~/localhost:8080 -domain ddenterpriseapi -user admin -pass admin** | ||
124 | |||
125 |