如何在IIS7/7.5上配置IISADMPWD
问题
很多IIS用户还记得在早期的IIS版本上有一个web应用, IISADMPWD. 该应用是与IIS5 和IIS6一起发布的. 主要用于为域用户提供修改密码的功能, 同时也可以修改本机用户的密码. 但是这个功能包含在IIS7/7.5中. 在IIS 7及以上版本中, 微软不再提供这个web应用的支持.

虽然该功能没有与IIS7/7.5一起发布, 但通过一些简单的配置还是可以使用该功能,本文将介绍如何在IIS7/7.5中配置IISADMPWD的web 应用.
注意 : 本文只是介绍如何在IIS7/7.5中配置IISADMPWD的web 应用. 由于该功能已经在IIS7及以上版本中的被遗弃, 微软不会对IIS7及以上版本中的IISADMPWD提供支持.
步骤
由于IISADMPWD的Web 应用不再被IIS7及以上版本所支持. 在一个干净的Windows Server 2008 中是没法找到这个文件. 所以需要从一台Windows Server 2003中找到并且将文件复制到Windows Server 2008上.
1. 默认情况下, IISADMPWD放置在Windows Server 2003服务器的如下路径 : C:\Windows\system32\inetsrv\Iisadmpwd . 如果没有找到该路径, 你需要先在Windows Server 2003上安装IIS服务.
注意 : 如果您在IIS7/7.5中的网站应用是64位, 您需要COPY一个64位版本的IISADMPWD. 如果是32位, 同样需要COPY一个32位的IISADMPWD. 在x64的Windows Server 2003中, 32位的IISADMPWD位于%windir%\SysWOW64\inetsrv\iisadmpwd .
2. 将IISADMPWD的文件COPY到Windows Server 2008服务器后,需要注册IISpwcchg.dll.
1) 用admin的权限打开一个命令窗口.
2) 执行以下命令 : regsvr32 c:\windows\system32\inetsrv\iisadmpwd\iispwchg.dll
其中c:\windows\system32\inetsrv\iisadmpwd\ 是IISADMPWD的放置路径.
3. 其次, 需要设置metabase中的PasswordChangeFlags. 以运行修改密码的功能 :
1) 用admin的权限打开一个命令窗口.
2) 打开到如下路径 : C:\Inetpub\Adminscripts
如果你没能找到这个路径, 请先启用IIS的IIS 6 Scripting Tools feature. 请参考 : http://msdn.microsoft.com/library/ms751518.aspx
3) 输入以下命令 : cscript.exe adsutil.vbs set w3svc/passwordchangeflags Value
4) 下面是对Value的定义 :
0 : 默认值. 该值代表你必须启用SSL来修改密码.
1: 允许非安全的Port来修改密码. 如果你没有启用SSL, 同时又需要修改密码的功能, 可以使用该值.
2 : 关闭修改密码的功能.
4 : 关闭 “advance notification of password expiration”.
4.打开IIS管理器. 展开需要加入该功能的网站. 右键点击该网站, 在弹出菜单中 选中Add Virtual Directory.


5. 在配置好Virtual Directory之后, IISADMPWD就可以使用了.
6. 关于IISADMPWD中几个页面的功能, 可以参考http://blogs.msdn.com/b/friis/archive/2009/03/24/setting-up-the-iis-6-password-change-site-iisadmpwd.aspx
|
Test.asp |
包括了IISADMPWD页面上所显示的文字和label. 如果需要修改asp页面上所显示的内容, 可以修改该页面的定义. |
|
Achg.asp |
用于执行修改密码请求的页面. |
|
Aexp.asp |
该页面会默认情况下会为IIS显示那些密码已经过期的用户. 通过配置IIS metabase中的”AuthExpiredURL”, 可以使用该页面. |
|
Aexp2.asp |
用于修改IIS本机用户的密码. |
|
Aexp2b.asp |
用于修改域用户的密码. 默认情况下, 该页面会使用SSL对会话进行加密. 如果你没有启用SSL功能, 请求会失败. |
|
Aexp3.asp |
类似于aexp.asp. 不需要使用SSL |
如果想使用aexp2.asp页面来修改域用户的密码, 但是又不想启用SSL. 你可以按照下面的方法来进行修改. 但是我们不推荐该方法. 因为, 如果没有SSL的加密保护, 密码是明文的在网络间传递, 很容易被截获.
1. 用notepad打开aexp2.asp.
2. 找到
<form method="POST" action="https://<%=Server.HTMLEncode(Request.ServerVariables("SERVER_NAME"))%>/iisadmpwd/achg.asp?<%=Server.HTMLEncode(Request.QueryString)%>">
3. 将https://修改为http:// , 如下 :
<form method="POST" action="http://<%=Server.HTMLEncode(Request.ServerVariables("SERVER_NAME"))%>/iisadmpwd/achg.asp?<%=Server.HTMLEncode(Request.QueryString)%>">
同样的, 如果启用了SSL,但是使用了非默认的443端口, 也在条语句中加入对应的端口号. 例如使用的是445端口 :
<form method="POST" action="https://<%=Server.HTMLEncode(Request.ServerVariables("SERVER_NAME"))%>:445/iisadmpwd/achg.asp?<%=Server.HTMLEncode(Request.QueryString)%>">
希望以上内容对您有所帮助,
Sonic Guo
如何在IIS7/7.5上配置IISADMPWD的更多相关文章
- 如何在windows server 2008上配置NLB群集
参考:http://zlwdouhao.blog.51cto.com/731028/781828 前些天写了一篇关于NLB群集模式多播和单播的简单介绍.那么下面我们一起来探讨一下,如何在windows ...
- [IISNode] 如何在IIS7/8下,配置一个可以通过IIS访问NodeJS的web项目
参考了一下几篇很给力的文章,在每篇文章中,都学到了解决遇到的问题的答案: (1)用iisnode模块,让你的Node.js应用跑在Windows系统IIS中 (2)让IIS能够运行Nodejs (3) ...
- 如何在Ubuntu 16.04上安装Apache Web服务器
转载自:https://www.howtoing.com/how-to-install-the-apache-web-server-on-ubuntu-16-04 介绍 Apache HTTP服务器是 ...
- 如何在Ubuntu 18.04上安装Apache Web服务器
一. apt库安装 1.在终端输入更新检查命令,sudo apt-get update 2. 在更新完成后(如果不想检查更新,也可直接输入此步)输入:sudo apt-get install apac ...
- 如何在Ubuntu 16.04上安装Nginx
原文链接https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-ubuntu-16-04 介绍 Nginx是世 ...
- 如何在IIS7上配置 FTP7并使用IIS管理凭据方式进行验证?
如何在IIS7上配置 FTP7并使用IIS管理凭据方式进行验证? 在 Windows Server 2008 R2 发布后,gOxiA 就开始着手于相关的测试和评估.IIS 是重点测试和评估之一!而今 ...
- 如何在IIS7上配置 FTP7并使用IIS管理凭据方式进行验证
在 Windows Server 2008 R2 发布后,gOxiA 就开始着手于相关的测试和评估.IIS 是重点测试和评估之一!而今天与大家分享的是如何在 IIS7 上配置 FTP7 使用 IIS ...
- 如何在IIS7下配置ASP+ACCESS环境
如何在IIS7下配置ASP+ACCESS环境 | 浏览:901 | 更新:2013-01-16 17:46 1 2 3 4 5 6 7 分步阅读 默认装完IIS7之后,使用ASP程序会发现提示数据库连 ...
- IIS7.5 在已有的WEB网站上配置FTP发布
IIS7.5 有了很多新特性,例如FashCGI,Rewrite 模块的内置,简易的FTP发布等等,但是即使是微软,也没有详细的文档,本文详细的介绍了如何在现有的WEB网站上建立FTP发布. IIS ...
随机推荐
- c#一个泛型控制Textbox 和label 控件 泛型方法。
class ControlHelper { public static void ShowOnTxtLbl<T>(T control, string mess) where T : Sys ...
- hibernate常用关联
<?xml version="1.0" encoding="utf-8" ?> <hibernate-mapping xmlns=" ...
- base64/62 加解密的实现。
base64/62加解密代码下载地址: http://files.cnblogs.com/files/Kingfans/base64(62)加解密.zip base64: base62:
- 解决MVC中JSON字符长度超出限制的异常
解决MVC中JSON字符长度超出限制的异常 解决方法如下: <configuration> <system.web.extensions> <scripting> ...
- react-router配合webpack实现按需加载
很久没有写博客了.一直感觉没有什么要写的,但是这个东西确实有必要的.使用react开发,不可能一直打包到一个文件.小项目肯定没有问题,但是变大一旦到几兆,这个问题就很严重.现在又Commonjs,AM ...
- .net 微信分享功能
微信在国内目前无疑是最火的社交软件,智能手机装机必备. 微信api有java,php,Python语言的demo, 为毛没有C#的范例?兄长今天给各位带来一个.不叫哥(割)了,A股今天又暴跌[3912 ...
- OD使用教程9
先运行程序打开about,发现这是一个未注册的软件需要注册后才能使用里面的工具,所以随便注册一下,跳出一个提示说注册的是非法的邮箱,所以就可以以此做为突破口来破解这个程序 将提示的语句作为关键字去找出 ...
- 文件操作总结 (Path,Directory,File)
Path类就是对字符串的操作,与实际的文件没有任何关系 属性: Path.GetFileName("路径"), //获取文件名带后缀: Path.GetFileNameWithou ...
- SQLServer : 几个特殊函数(RAND,CHECKSUM, NEWID)
这一篇我们来捋捋在T-SQL中可能会用到的几个特殊的函数 1. 随机数: RAND 返回从 0 到 1 之间的随机 float 值. 语法: RAND ( [ seed ] ) seed 提供种子值的 ...
- EasyUI detailview 使用心得
view: detailview, detailFormatter: function (rowIndex, rowData) { return "<div class='easyui ...