Web interface to allow users to change their Active Directory password

Solution 1:

If you need an option beyond Outlook Web Access it's still very easy using something like:

Set objUser = GetObject("LDAP://cn=myerken,ou=management,dc=fabrikam,dc=com")
objUser.ChangePassword "i5A2sj*!", "jl3R86df"

from the Users bit of the Script Repository at http://www.microsoft.com/technet/scriptcenter/scripts/ad/users/default.mspx?mfr=true

It would be trivial to embed this in an ASP script. I'd force the use of SSL though :-)

JR

Solution 2:

You can also take a look at the free and open source PassCore:

PassCore is a very simple 1-page web app written in C#, using ASP.NET MVC 4 and Directory Services. It allows users to change their Active Directory password on their own, provided the user is not disabled.

(...)

Here's a screenshot of the UI: PassCore UI


Solution 3:

You can do this, and its quite simple to write something if you have a bit of programming experience, if not there are a number of ready made products out there to do it:

  • ManageEngine AD self service
  • Web Active PeoplePassword

Solution 4:

If you're running Exchange, look at this KB article: Implementing the Change Password feature with Outlook Web Access


Solution 5:

I actually found a solution to this that is nearly exactly what I wanted. IIS comes with this functionality out of the box, it was just hidden.

I used this article to get started.

Basic steps:

A. The version of Internet Information Services (IIS) 6.0 that ships with Windows 2003 includes some Web-administration tools that are disabled by default. To enable the tools, perform the following steps:

  • Run Internet Information Server (IIS) Management.
  • Under the default website choose New->virtual Directory to start the wizard
  • Name the site IISADMPWD
  • The publish folder value is enter C:\windows\system32\inetsrv\iisadmpwd
  • For permissions make sure Read and Run scripts are checked

Then the page should be accessible at http://localhost/iisadmpwd/aexp2b.asp

If you get a 404 on the actual file you may have to enable the server to run asp pages.