Project

General

Profile

shadowlastchange_eleves.py

Cédric Frayssinet, 03/23/2016 03:10 PM

Download (1.13 KB)

 
1
#!/usr/bin/python2.6
2

    
3
# -*- coding: utf-8 -*-
4

    
5
# Script python
6
#
7
# Modification du champ shadowLastChange de l'annuaire LDAP
8
# pour contourner le blocage des utilisateurs anciens sur les clients Ubuntu
9
#
10
# Laurent.Brillard@ac-reunion.fr
11
#
12
# Pour executer : python shadowlastchange_eleves.py <valeur_shadowlastchange_voulue>
13

    
14
import sys
15

    
16
fichier = open("ModifLDAP.log","a")
17

    
18
from scribe import eleves
19
from scribe.eleves import Eleve
20
slc_voulue = sys.argv[1]
21

    
22
ldapuser = Eleve()
23
allusers = ldapuser.get_members('eleves')
24
ldapuser.ldap_admin.connect()
25
for login in allusers:
26
        ldapuser = Eleve()
27
        ldapuser.ldap_admin.connect()
28
        slc_lue_ldap = ldapuser._get_attr(login, 'shadowLastChange')
29
        slc_lue = slc_lue_ldap[0]
30
        if int(slc_lue) < int(slc_voulue):
31
                ldapuser._set_attr(login, 'shadowLastChange', slc_voulue)
32
                ldapuser._touch(login)
33
                log = login + " shadowlastchange change de " + slc_lue + " a " + slc_voulue
34
                print log
35
                log = "\n" + log
36
                fichier.write(log)
37
        else:
38
                log = login + " shadowlastchange reste a " + slc_lue
39
                print log
40
                log = "\n" + log
41
                fichier.write(log)
42
# ldapuser._set_attr(login, 'shadowMax', '9999')
43
ldapuser.ldap_admin.close()
44