在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

在Windows Server 2008 R2中使用web方式修改域用户账户密码的更多相关文章

  1. Window通过Web方式修改域用户密码

    如何通过web方式修改域用户密码: 1.在Windows Server 2003上,系统默认提供了iisadmpwd作为一种修改域用户密码的方式 2.在Windows Server 2008上,可以提 ...

  2. 在系统启动时,Windows Vista 中、 在 Windows 7 中,Windows Server 2008 中和在 Windows Server 2008 R2 中的 497 天后未关闭 TIME_WAIT 状态的所有 TCP/IP 端口

    在系统启动时,Windows Vista 中. 在 Windows 7 中,Windows Server 2008 中和在 Windows Server 2008 R2 中的 497 天后未关闭 TI ...

  3. Windows Server 2008 R2中IIS7.5配置完网站权限不足问题的解决办法:

    Windows Server 2008 R2中IIS7.5配置完网站权限不足问题的解决办法:常见问题:HTTP 错误 500.0 - Internal Server Error无法显示页面,因为发生内 ...

  4. Windows server 2008 R2中安装MySQL !

    我今天打算在Windows server 2008 R2中安装MySQL,可是总是发现ODBC连接器安装错误,无论我采用MySQL的整体安装包,还是单独的ODBC连接器安装文件!! 最后上网搜索了很久 ...

  5. windows server 2008 R2中建立ftp站点

    在windows server 2008 R2中建立ftp站点,要遵循以下步骤: (1) 开启IIS中的ftp服务: (2) 在IIS中建立ftp站点. 具体过程如下: (1) 开启IIS中的ftp服 ...

  6. 如何在Windows Server 2008 R2中更改桌面图标

    如何在Windows Server 2008 R2中更改桌面图标 Windows Server 2008 R2 已经在 MSDN 和 TechNet Plus 订阅上公布,gOxiA 在第一时间下载并 ...

  7. Windows Server 2008 R2中的ASP.NET环境架设

    .NET Framework的部分功能在Windows Server 2008 R2得到支持,包括:.NET 2/3/3.5的子集和ASP.NET.另外,PowerShell也在Server Core ...

  8. Windows Server 2008 R2中无法使用360免费Wifi的解决方案

    为了使主机和虚拟机在同一个无线网络中,而虚拟机的系统是Windows Server 2008 R2 64位的,使用360免费wifi,始终无法开启.在网上查找解决方案,终于找到了原因:Windows ...

  9. 在Windows Server 2008 R2中删除网桥

    How to remove a network bridge in Windows Server 2008 R2 症状: 删除网桥的时候,按理说应该在“网络连接”中选择要被删除的网桥,右键点击,然后选 ...

随机推荐

  1. Github中展示demo

    原文链接http://www.jianshu.com/p/75e30889e70a 第一步:找到Settings,点击 第二步:找到githubPages点击none,切换到master branch ...

  2. 超简单的java爬虫

    最简单的爬虫,不需要设定代理服务器,不需要设定cookie,不需要http连接池,使用httpget方法,只是为了获取html代码... 好吧,满足这个要求的爬虫应该是最基本的爬虫了.当然这也是做复杂 ...

  3. C#设置窗体中的窗体随主窗体大小变化而变化

    form2 f=new form2(); f.Size=this.Size; f.Location=this.Location; f.showdialog(); 作者:耑新新,发布于  博客园 转载请 ...

  4. activeMQ 持久化配置

    Mac 中安装activeMQ brew install activemq 启动 activemq start 控制台:在浏览器中输入url: http://localhost:8161/ A:持久化 ...

  5. INNODB表快速迁移

    本实验在一台server上启动了2个mysql实例端口分别是3307   3308,目的是将3307的表aaa迁移到3308中去,并打开3308的slave 1.在3308上 mysql> dr ...

  6. day7 面向对象进阶

    面向对象高级语法部分 通过@staticmethod装饰器即可把其装饰的方法变为一个静态方法,什么是静态方法呢?其实不难理解,普通的方法,可以在实例化后直接调用,并且在方法里可以通过self.调用实例 ...

  7. spring boot之org.springframework.boot.context.TypeExcludeFilter

    曾经碰到过这样一种情况,想让某个使用了spring 注解的类不被spring扫描注入到spring bean池中,比如下面的类使用了@Component和@ConfigurationPropertie ...

  8. Session机制三(表单的重复提交)

    1.表单的重复提交的情况 在表单提交到一个servlet,而servlet又通过请求转发的方式响应了一个JSP页面,这个时候地址栏还保留这servlet的那个路径,在响应页面点击刷新. 在响应页面没有 ...

  9. Ionic Tabs

    Ionic 默认的 Tabs 模板 ,Android的在上方,IOS的在下方.在www/js/app.js修改配置,添加一个变量,再修改相应属性: .config(function($statePro ...

  10. React Native网络编程之Fetch

    目录 1.前言 2.什么是Fetch 3.最简单的应用 4.支持的请求参数 - 4.1. 参数详讲 - 4.2. 示例 5.请求错误与异常处理   1. 前言   网络请求是开发APP中不可或缺的一部 ...