Sourcecodes - Passwortwechsel bei LDAP-User

Sprachenübersicht/Python/LDAP

Passwortwechsel bei LDAP-User

Diese Seite wurde 2342 mal aufgerufen.

Dieser Artikel wurde in einem Wikiweb System geschrieben, das heißt, Sie können die Artikel jederzeit editieren, wenn Sie einen Fehler gefunden haben, oder etwas hinzufügen wollen.

Editieren Versionen Linkpartnerschaft Bottom Printversion

Keywords: python ldap user password change

Mit diesem kurzen Skript ist es möglich, das Passwort eines LDAP-Users zu ändern. Erforderlich dazu ist die Python-LDAP-Lib.

Code:


import ldap, sha, sys, string
from base64 import encodestring

if len(sys.argv) is not 4:
    print 'usage: username oldpass newpass'
    sys.exit()

host = 'ldap.mydomain.tld'

base = 'ou=people,dc=mydomain,dc=tld'
who = 'uid=%s, %s' % (sys.argv[1], base)
oldpass = sys.argv[2]
new_pw = sys.argv[3]


l = ldap.open(host)
job = l.bind(who, oldpass, ldap.AUTH_SIMPLE)

try:
    l.result(job)
except:
    print "wrong user/pw"
    sys.exit()

sha_digest = sha.new(new_pw).digest()
encoded_pw = '{SHA}' + string.strip(encodestring(sha_digest))

mod_list = ((ldap.MOD_REPLACE, 'userPassword', encoded_pw),)

l.modify(who, mod_list)

print "password successfully changed"

Gibt es noch irgendwelche Fragen, oder wollen Sie über den Artikel diskutieren?

Editieren Versionen Linkpartnerschaft Top Printversion

Haben Sie einen Fehler gefunden? Dann klicken Sie doch auf Editieren, und beheben den Fehler, keine Angst, Sie können nichts zerstören, der Artikel kann wiederhergestellt werden.

Sprachenübersicht/Python/LDAP/Passwortwechsel bei LDAP-User