Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I've recently enabled LDAP based authentication on my domain. This has allowed us to use a single set of credentials to administer the blog, the forum and the wiki.

Unfortunately, this has come at the cost of users being able to change their own passwords.

Ideally, users would be able to visit a page (i.e. mydomain.com/account), authenticate and then change their password.

Does anyone know of a script or app that will allow me to do this quickly and easily? I guess it wouldn't be hard to write in PHP, but I'd prefer not to have the hassle.

share|improve this question
    
Cross posted: webmasters.stackexchange.com/questions/2975/… –  Tom Wright Sep 12 '10 at 14:23
add comment

4 Answers

up vote 4 down vote accepted

I you might be interested in phpLdapPassword.

phpLdapPasswd is a system that allows certain password management functions to be initiated from a standard web browser. As the name suggests, phpLdapPasswd is designed to integrate with an LDAP directory. The core functionality includes password changes and password resets. Templates, CSS directives and external functions allow for a high degree of flexibility in how phpLdapPasswd looks and acts. However, quick deployments are also possible by using the included default files and settings.

share|improve this answer
    
Perfect for the job. Thanks. –  Tom Wright Sep 12 '10 at 19:02
    
Hmmm... first item in the webpage: "NOTE: phpLdapPasswd is NO LONGER being maintained or supported" –  Jason S Sep 29 '11 at 19:30
add comment

I found phpLdapPasswd the most flexible solution.

As the original site of phpLdapPasswd is down and Karyl discontinued development, I added a separate github project: https://github.com/koppor/phpLdapPasswd

share|improve this answer
add comment

I've coded one a little while ago and blogged about it. It enforces a 6 characters password with a minimum of 1 special character. The blog post is in french, but the code is commented in english.

blog post: http://jve.linuxwall.info/blog/index.php?post/2009/03/15/Changer-un-mot-de-passe-LDAP tar with the php: http://jve.linuxwall.info/ressources/code/ldapchangepasswd.tar

Feel free to contact me if some of the functions are unclear

share|improve this answer
add comment

What you need to do is bind as the user's DN, with the old password, and then modify: userPassword with the new password value.

Pretty much any script that does that should work.

share|improve this answer
    
This doesn't help so much with expired passwords (if your LDAP system has date-based expirations), but the general approach is the classic one for building password-change scripts. –  Johnnie Odom Sep 12 '10 at 22:39
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.