在Windows的domain環境下,加域的客戶端修改賬戶密碼是一件很easy的事情;即使沒有加域的客戶端如果組織中,使用Exchange郵件系統,借助Exchange的owa也可以輕松修改賬戶密碼。
前段時間搞Web+Portal 認證時,由於存在少量的LDAP用戶,該Web+Portal認證不支持AD+LDAP雙認證。為了讓這部分用戶也能夠實現認證,采用了域名+用戶名(避免和域用戶重名)的方式導進了AD中,並設置了初始密碼。可是問題也出現了,這部分用戶不加域也沒有Exchange郵箱,如何才能第一次登陸修改密碼呢?
記得在Windows 2003 IIS中自帶修改域用戶密碼的ASP網頁文件iisadmpwd模塊,可以通過web方式修改域用戶密碼。但是IIS 7上不再支持iisadmpwd功能,正常安裝windows server 2008及IIS將不會有iisadmpwd模塊。那如何將該模塊移植到Windows Server 2008 R2中呢?
1、首先找一台Server2003系統,確認已安裝好Internet信息服務(IIs)。
然后進入C:\WINDOWS\system32\inetsrv\iisadmpwd目錄,copy iisadmpwd這個目錄及子文件。
2、Server 2008 R2系統准備
安裝好Web服務器(IIS),並且確認IIS6腳本工具 已安裝。
由於我們的Server 2008 R2是64位系統,所以需要將copy的iisadmpwd目錄放在系統的C:\Windows\SysWOW64\inetsrv\目錄中
注冊Iisadmpwd目錄下的IISpwchg.dll文件:
以管理員身份運行命令提示符,輸入下面的命令,然后回車
regsvr32 C:\Windows\SysWOW64\inetsrv\iisadmpwd\iispwchg.dll
配置PasswordChangeFlags屬性,來確保密碼修改這個功能可用:
以管理員身份運行命令提示符,切換到C:\Inetpub\Adminscripts目錄,輸入下面命令,然后回車
cscript.exe adsutil.vbs set w3svc/passwordchangeflags 0
注:設置PasswordChangeFlags屬性的值,你可以組合使用
0:默認值,表示用ssl連接來更改密碼
1:允許無安全的端口來更改密碼,這個對於ssl功能被禁很有用
2:禁止更改密碼
4:禁止密碼過期提示
3、配置IIS7
首先確認默認網站(default web site)的https可用,且綁定好證書;
打開Internet信息服務(IIS)管理器。點擊 “default web site ”站點,然后點擊右側操作欄的“綁定”
選擇“https”協議,然后點擊“編輯”,在ssl證書中選擇本機服務器的證書
配置好https后,再次右擊“default web site”,菜單中選擇“添加應用程序”
打開添加應用程序向導,別名中填入“iisadmpwd”(名稱可以自定義,但建議使用默認的這個^_^),物理路徑中,點擊瀏覽選擇iisadmpwd目錄,最后點擊“確定”
返回default web site默認站點,點擊iisadmpwd虛擬目錄,打開默認文檔中添加iisadmpwd的默認頁aexp2.asp
然后返回iisadmpwd目錄,打開“SSL設置”,取消“要求SSL(Q)”
4、修改域用戶密碼
打開瀏覽器,輸入http://servername/iisadmpwd ,輸入賬戶信息及新密碼,然后點擊“確定”。
由於我們啟用了https協議,https://servername/iisadmpwd 同樣可以訪問
修改密碼會直接調用https協議訪問相應的asp腳本,點擊“繼續瀏覽此網站(不推薦)”
最后顯示密碼修改成功。
附:當輸入用戶名及密碼,點擊確定后,顯示“無法顯示該網頁”時,請確認默認站點的綁定中,https協議已啟用並配置的正確的證書。
本文出自 “孫亮的IT運維技術” 博客,請務必保留此出處http://shubao.blog.51cto.com/401810/1092564