You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2014-08-14 12:45:44

yongue88
Member
Registered: 2014-05-09
Posts: 31

Import automatique des utilisateurs LDAP -> GLPI

Bonjour,

Je voudrais faire un import automatique, sans avoir à y penser des utilisateurs créés dans mon LDAP sur GLPI.

Cependant, en suivant le tuto suivant (cf WIKI) :

Le script a besoin d'arguments pour fonctionner (le server id et l'action qu’il doit exécuter). Le serveur ID, pour trouver notre ID, allez dans:

## CONFIGURATION =⇒ AUTENTIFICATION =⇒ ouvrez votre server LDAP


Votre ID se trouve dans l'adresse URL, pour nous 2 :

## http://192.X.X.X/glpi/front/setup.auth. … _ldap&ID=2


Pour l'action nous avons deux choix :

## 1 Pour Synchroniser


## 0 Pour importer.


Tache planifiée Windows


## Créez un fichier BAT et collez y les lignes :





REM Placer vous dans le dossier ou se trouve le script

REM Go to the folder where is the script.

cd “C:\Program Files\OCS Inventory NG\xampp\htdocs\glpi\scripts”

REM Exécuter php.exe avec le script

REM Run php.exe and launch script

“C:\Program Files\OCS Inventory NG\xampp\php\php.exe” ldap_mass_sync.php –server_id=2 action=0

Des zones d'ombres obscures perdures. Je souhaite donc savoir si des âmes charitables auraient :

1 - un script qui marche bien

2 - le contenu concret du fameux fichier .bat

3 - Un exemple de tâche planifiée qui marche pour Windows

Je suis conscient que c'est trop demandé mais croyez moi, avant de venir vous voir, j'ai bel et bien fait un tour chez notre ami à tous : GOOGLE mais sans succès.

D'avance, je vous remercie.

Offline

#2 2014-08-28 16:53:17

dethegeek
HELPER
From: France
Registered: 2013-09-03
Posts: 588
Website

Re: Import automatique des utilisateurs LDAP -> GLPI

Bonjour

Voilà comment j'ai fait, sous linux et avec un annuaire Active Directory. Le script est situé dans le dossier scripts de GLPI.

Les comptes sont importés par petits lots pour éviter les ennuis liés au dépassement de 1000 comptes. Pour le moment, ça fonctionne.

Si tu as besoin d'aide pour convertir cela en .bat, fais la demande.

#!/bin/bash

# samaccountname commençant pa la lettre a à z ou 0 à 9
for a in a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9
do
        samaccountname=$a*
        echo Processing samaccountname=$samaccountname
        /path/to/php -q -f ldap_mass_sync.php action=0 ldapservers_id=2 ldap_filter="(samaccountname=$samaccountname)"
        /path/to/php -q -f ldap_mass_sync.php action=1 ldapservers_id=2 ldap_filter="(samaccountname=$samaccountname)"
done

Offline

#3 2014-08-28 17:22:39

Erwan35
Member
Registered: 2014-08-28
Posts: 23

Re: Import automatique des utilisateurs LDAP -> GLPI

Voilà ce que j'ai sur mon serveur Windows 2012:

Script "Script_GLPI_Liaison_AD.bat"

REM Placer vous dans le dossier ou se trouve le script
cd "C:\xampp\htdocs\glpi\scripts"

REM Exécuter php.exe avec le script
"C:\xampp\php\php.exe" ldap_mass_sync.php –server_id=1 action=2

Tâche planifiée:

468478glpipb2.png


GLPI 0.84.7-Operating system : Windows 2012 Server- XAMPP 1.7.7  - Apache/2.2.21MySQL-5.0.8-dev

Offline

#4 2014-08-29 13:53:01

dethegeek
HELPER
From: France
Registered: 2013-09-03
Posts: 588
Website

Re: Import automatique des utilisateurs LDAP -> GLPI

@Erwan35

un petit truc qui peut rendre ton script un poil plus robuste :

en début de script batch je place toujours ces commandes :

@echo off
set curdir=%~dp0

la variable d'environnement "curdir" contiendra le chemin où se trouve ton script, avec l'antislash final, et ça fonctionne aussi si tu exécutes ton script depuis un partage réseau (peu probable pour ce cas précis, mais bon).

Offline

#5 2016-02-18 18:52:36

Yacine31
Member
Registered: 2015-10-19
Posts: 44

Re: Import automatique des utilisateurs LDAP -> GLPI

Bonjour,

Existe-t-il une possibilité d'importer seulement les comptes nouveaux et/ou les comptes qui ont été modifié dans Active Directory ?


Glpi 0.85.4

Offline

#6 2016-02-18 19:22:29

LaDenrée
HELPER
Registered: 2012-11-19
Posts: 6,146

Re: Import automatique des utilisateurs LDAP -> GLPI

@yacine31 :

http://www.glpi-project.org/DOC/FR/glpi … _sync.html


php ldap_mass_sync.php action=2 ldapservers_id=1 before-days=1


avec un cron qui tourne toutes les 24 heures, ça limite la mise à jour aux utilisateurs modifiés depuis 1 jour.

attention, les autres utilisateurs  seront considérés comme supprimés du LDAP : retirer les règles qui désactivent le compte GLPI si pas dans ldap


Trouver la panne avant de réparer...
GLPI10.0.10 (ubuntu 22.04 PHP8.1  Mariadb10.6 ) plugins : comportements 2.7.2 reports 1.16.0 formcreator 2.13.8, datainjection 2.13.4 fields 1.21.6

Offline

#7 2016-06-12 14:28:46

Trickybeans
Member
Registered: 2015-11-18
Posts: 11

Re: Import automatique des utilisateurs LDAP -> GLPI

Bonjour,

Je déterre ce message car je tente d'automatiser l'importation des utilisateurs.

J'y arrive en saisissant la commande directement sur mon serveur linux par contre ca ne fonctionne pas avec cron. Pour être honnête je découvre cron...

j'ai donc créé un script synchro_ldap.sh dans lequel j'ai ajouté la commande :

php ldap_mass_sync.php action=2 ldapservers_id=1

lorsque je fais ./synchro_ldap.sh, cela fonctionne.

Dans cron (crontab -e)

j'ai ajouté cette ligne

1 * * * * synchro_ldap.sh qui ne fonctionne pas (je suppose qu'il n'y a pas le chemin donc impossible de fonctionner)
1 * * * * /var/www/html/glpi/scripts/synchro_ldap.sh qui ne fonctionne pas non plus.

J'ai mis exprès une minute pour m'assurer que cela fonctionne.

Merci pour votre aide

Last edited by Trickybeans (2016-06-12 14:30:50)

Offline

#8 2016-06-13 08:22:22

LaDenrée
HELPER
Registered: 2012-11-19
Posts: 6,146

Re: Import automatique des utilisateurs LDAP -> GLPI

bonjour,
1 * * * * /var/www/html/glpi/scripts/synchro_ldap.sh

votre commande ne correspond pas à 1 minute mais une fois par heure à hh:01


Trouver la panne avant de réparer...
GLPI10.0.10 (ubuntu 22.04 PHP8.1  Mariadb10.6 ) plugins : comportements 2.7.2 reports 1.16.0 formcreator 2.13.8, datainjection 2.13.4 fields 1.21.6

Offline

#9 2016-06-13 08:37:27

Trickybeans
Member
Registered: 2015-11-18
Posts: 11

Re: Import automatique des utilisateurs LDAP -> GLPI

Merci pour ce retour ais malgré cette erreur, la synchro ne se fait pas, mon utilisateur n'est pas importé.

Est-ce la bonne syntaxe concernant l'utilisation du script synchro_ldap ?

Offline

#10 2016-06-13 08:44:36

LaDenrée
HELPER
Registered: 2012-11-19
Posts: 6,146

Re: Import automatique des utilisateurs LDAP -> GLPI

il vous manque peut être l'utilisateur dans la ligne de commande.

pour une synchro toutes les minutes ( c'est beaucoup...) j'aurais écrit ça :

*/1  *  * * *   root  cd /var/www/glpi/scripts/ && php ldap_mass_sync.php -server_id=2 action=2


Trouver la panne avant de réparer...
GLPI10.0.10 (ubuntu 22.04 PHP8.1  Mariadb10.6 ) plugins : comportements 2.7.2 reports 1.16.0 formcreator 2.13.8, datainjection 2.13.4 fields 1.21.6

Offline

#11 2016-09-14 21:51:33

jerome.stival
Member
Registered: 2016-07-21
Posts: 78

Re: Import automatique des utilisateurs LDAP -> GLPI

Je déterre ce post pour avoir une petite précision.

J'ai utilisé le script suivant :

#!/bin/bash
# samaccountname commençant pa la lettre a à z ou 0 à 9
for a in a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9;
do
        samaccountname=$a*
        echo Processing samaccountname=$samaccountname
        
        cd /var/www/glpi-dev/scripts/
        php -q -f ldap_mass_sync.php action=0 ldapservers_id=8 ldap_filter="(samaccountname=$samaccountname)"
        
        cd /var/www/glpi-dev/scripts/
        php -q -f ldap_mass_sync.php action=1 ldapservers_id=8 ldap_filter="(samaccountname=$samaccountname)"
done

Ma question est concernant la notion du filtre LDAP, lequel est réellement utilisé ?

J'ai dans la configuration de mon DC, le filtre suivant : (&(objectClass=person)(sn=*)(mail=*MonDomaineMail.*)(!(objectClass=computer))(!(userAccountControl:1.2.840.113556.1.4.803:=2)))

Du coup, est ce que ce filtre est malgré tout utilisé par le script cité ci-dessus ou ce contente-t-il d'utiliser "samaccountname=$samaccountname" pour importer les utilisateurs ?

Si c'est le cas, comment faire en sorte que mon filtre AD soit utilisé dans la boucle du script ?

Merci de votre aide


Plateforme : Linux...
Version GLPI  : 9.5.6 (PROD) / 9.5.7 (TEST)
Plugins activés : Dashboard

Offline

#12 2017-02-22 00:13:59

jerome.stival
Member
Registered: 2016-07-21
Posts: 78

Re: Import automatique des utilisateurs LDAP -> GLPI

Bonjour à tous

Je relance le sujet concernant ma précédente question, est ce que quelqu'un aurait l'info ?

Merci


Plateforme : Linux...
Version GLPI  : 9.5.6 (PROD) / 9.5.7 (TEST)
Plugins activés : Dashboard

Offline

#13 2017-02-22 08:51:16

bzh
Member
Registered: 2016-09-25
Posts: 417

Re: Import automatique des utilisateurs LDAP -> GLPI

Erwan35

Bonjour,
Petite chose amical pour toi évite de posté des copies écran avec le nom de ton domaine véritable wink
tu as bien pensé a un endroit et tu fait l'impasse sur un autre.

merci de ton poste avec tes copie écran smile
a+


Virtual Box \ Ubuntu 20.4  \ GLPI 9.5.3

Offline

Board footer

Powered by FluxBB