Possibilit de changer le mdp d'un adhrent avec droits en tant root.
Petite doc. darcs-hash:20041022122257-41617-7f657141e679d73e323a000ee779379bc31a73ff.gz
This commit is contained in:
parent
b0e56235b1
commit
a9e248434e
1 changed files with 22 additions and 6 deletions
|
@ -1,6 +1,23 @@
|
||||||
#! /usr/bin/env python
|
#! /usr/bin/env python
|
||||||
# -*- coding: iso-8859-15 -*-
|
# -*- coding: iso-8859-15 -*-
|
||||||
|
|
||||||
|
"""
|
||||||
|
Script de changement de mots de passe LDAP
|
||||||
|
|
||||||
|
Utilisation :
|
||||||
|
* cas 1 : sans arguements par un utlisateur lambda :
|
||||||
|
changement de son propre mdp
|
||||||
|
* cas 2 : avec argument par un utilisateur ayant accès
|
||||||
|
total à la base LDAP (respbats) mais PAS ROOT :
|
||||||
|
changement du mdp de l'adhérent fourni en argument,
|
||||||
|
impossibilité de modifier le mdp d'un compte privilégié
|
||||||
|
* cas 3 : lancé par root : possibilité de modifier
|
||||||
|
tous les mots de passe LDAP
|
||||||
|
|
||||||
|
Copyright (C) Frédéric Pauget
|
||||||
|
Licence : GPLv2
|
||||||
|
"""
|
||||||
|
|
||||||
import getpass, commands, os, sys
|
import getpass, commands, os, sys
|
||||||
from user_tests import getuser
|
from user_tests import getuser
|
||||||
|
|
||||||
|
@ -94,7 +111,7 @@ if __name__ == '__main__' :
|
||||||
print "Changement du mot de passe du compte choisi."
|
print "Changement du mot de passe du compte choisi."
|
||||||
sys.exit(255)
|
sys.exit(255)
|
||||||
else :
|
else :
|
||||||
# Changement du mot de passe par un admin câbleur ou une nounou
|
# Changement du mot de passe par un câbleur ou une nounou
|
||||||
login = sys.argv[1]
|
login = sys.argv[1]
|
||||||
self_mode = False
|
self_mode = False
|
||||||
for c in login[:] :
|
for c in login[:] :
|
||||||
|
@ -139,12 +156,11 @@ if __name__ == '__main__' :
|
||||||
cprint("Erreur lors de l'authentification",'rouge')
|
cprint("Erreur lors de l'authentification",'rouge')
|
||||||
sys.exit(7)
|
sys.exit(7)
|
||||||
if resultat != dn :
|
if resultat != dn :
|
||||||
print '|%s|' % resultat
|
|
||||||
cprint({ 'Invalid credentials (49)' : 'Mot de passe invalide' }.get(resultat,resultat),'rouge')
|
cprint({ 'Invalid credentials (49)' : 'Mot de passe invalide' }.get(resultat,resultat),'rouge')
|
||||||
sys.exit(8)
|
sys.exit(8)
|
||||||
|
|
||||||
elif len(s) > 3 :
|
elif len(s) > 3 and os.getuid()!=0 :
|
||||||
# Adhérent avec droits
|
# Adhérent avec droits et on est pas root
|
||||||
From = 'roots@crans.org'
|
From = 'roots@crans.org'
|
||||||
To = 'roots@crans.org'
|
To = 'roots@crans.org'
|
||||||
mail = """From: Root <%s>
|
mail = """From: Root <%s>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue