问题

很多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的更多相关文章

  1. 如何在windows server 2008上配置NLB群集

    参考:http://zlwdouhao.blog.51cto.com/731028/781828 前些天写了一篇关于NLB群集模式多播和单播的简单介绍.那么下面我们一起来探讨一下,如何在windows ...

  2. [IISNode] 如何在IIS7/8下,配置一个可以通过IIS访问NodeJS的web项目

    参考了一下几篇很给力的文章,在每篇文章中,都学到了解决遇到的问题的答案: (1)用iisnode模块,让你的Node.js应用跑在Windows系统IIS中 (2)让IIS能够运行Nodejs (3) ...

  3. 如何在Ubuntu 16.04上安装Apache Web服务器

    转载自:https://www.howtoing.com/how-to-install-the-apache-web-server-on-ubuntu-16-04 介绍 Apache HTTP服务器是 ...

  4. 如何在Ubuntu 18.04上安装Apache Web服务器

    一. apt库安装 1.在终端输入更新检查命令,sudo apt-get update 2. 在更新完成后(如果不想检查更新,也可直接输入此步)输入:sudo apt-get install apac ...

  5. 如何在Ubuntu 16.04上安装Nginx

    原文链接https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-ubuntu-16-04 介绍 Nginx是世 ...

  6. 如何在IIS7上配置 FTP7并使用IIS管理凭据方式进行验证?

    如何在IIS7上配置 FTP7并使用IIS管理凭据方式进行验证? 在 Windows Server 2008 R2 发布后,gOxiA 就开始着手于相关的测试和评估.IIS 是重点测试和评估之一!而今 ...

  7. 如何在IIS7上配置 FTP7并使用IIS管理凭据方式进行验证

    在 Windows Server 2008 R2 发布后,gOxiA 就开始着手于相关的测试和评估.IIS 是重点测试和评估之一!而今天与大家分享的是如何在  IIS7 上配置 FTP7 使用 IIS ...

  8. 如何在IIS7下配置ASP+ACCESS环境

    如何在IIS7下配置ASP+ACCESS环境 | 浏览:901 | 更新:2013-01-16 17:46 1 2 3 4 5 6 7 分步阅读 默认装完IIS7之后,使用ASP程序会发现提示数据库连 ...

  9. IIS7.5 在已有的WEB网站上配置FTP发布

    IIS7.5 有了很多新特性,例如FashCGI,Rewrite 模块的内置,简易的FTP发布等等,但是即使是微软,也没有详细的文档,本文详细的介绍了如何在现有的WEB网站上建立FTP发布. IIS ...

随机推荐

  1. winrar命令行加压解密

    加密的操作 Rar.exe a -P123 test1.rar test.txt 其中参数a表示添加文件或文件夹到压缩包中,-P参数表示是带密码的加密 Rar.exe e -P123 test1.ra ...

  2. 20145226夏艺华 《Java程序设计》第0周学习总结

    关于师生关系: 学生和老师之间我觉得关系时多元化的,不能拘泥于单独的一种关系:灌输与被灌输,教授与被教授--我认为,在不同的课程阶段,师生之间的关系都可以发生变化.前期的老师更像是一个指路的人,而在入 ...

  3. matplotlib 随记

    1.安装 window平台下推荐安装Enthought canopy,包含matplotlib和它所依赖的包: linux下一般默认内置了matplotlib,直接使用就可以了.   2.在没有图形界 ...

  4. jQuery学习-css、class操作、动画方法的运用、jQ操作Dom节点

    css操作(设置单个/多个样式.获取样式) //修改单个属性:括号之中直接是需要修改的样式名,值 css(name,value) //例:$("#one").css("b ...

  5. C语言通过timeval结构设置周期

    在C语言中,我们经常需要设置一个时间周期.在这里,我们通过Timeval结构实现时间周期的设置.首先,我们介绍timeval,其定义如下(转载http://www.cnblogs.com/wainiw ...

  6. Joseph(JAVA版)

    package Joseph;//约瑟夫环,m个人围成一圈.从第K个人开始报数,报道m数时,那个人出列,以此得到出列序列//例如1,2,3,4.从2开始报数,报到3剔除,顺序为4,3,1,2publi ...

  7. ReStart

    ACM开始了?……重新启用Blog~

  8. [spark案例学习] WEB日志分析

    数据准备 数据下载:美国宇航局肯尼迪航天中心WEB日志 我们先来看看数据:首先将日志加载到RDD,并显示出前20行(默认). import sys import os log_file_path =' ...

  9. ruby日记1

    1.irb参数配置 ~/.irbrc IRB.conf[:PROMPT_MODE] = :SIMPLE #简化 irb 提示符,以及禁用一些烦人的自动缩进行为 IRB.conf[:AUTO_INDEN ...

  10. mysql存储图片问题

    1. 借鉴http://blog.chinaunix.net/uid-7374279-id-4255927.html 字段名为blob,有四种类型 TinyBlob(255B).Blob(65k).M ...