我们正在使用 Exchange OWA 2010 SP3。当密码过期的用户尝试登录时,会被告知用户名或密码无效:
根据这个Technet博客设置注册表项并重新启动 IIS 应该可以修复此问题:
- 在客户端访问服务器 (CAS) 上,单击开始 > 运行,键入 regedit.exe,然后单击确定。
- 导航到 HKLM\SYSTEM\CurrentControlSet\Services\MSExchange OWA。
- 右键单击 MSExchange OWA 键,然后单击新建 > DWord(32 位)。
- DWORD 值名称为 ChangeExpiredPasswordEnabled,并将值设置为 1。注意:接受的值为 1(或任何非零值)表示“Enabled”,或 0 或空白/不存在表示“Disabled”
- 配置此 DWORD 值后,必须重置 IIS。重置 IIS 的推荐方法是从命令提示符中使用 IISReset /noforce。
这是目前在我的服务器中的设置方式:
ChangeExpiredPasswordEnabled 后没有空格,它被设置为 1 等等。
之后,我从提升的命令提示符运行 IISreset /noforce。我甚至重新启动了服务器。但是,当密码过期的用户尝试登录时,他仍然会看到“用户名或密码错误”错误消息。
我还查看了组策略,以验证最低密码年龄是否设置为零。
我们有一个Windows 2012域控制器。
顺便说一句:它以前也起作用过,但今年只是早了几天。
Exchange 服务器上的 Windows 事件日志记录了以下故障:
Failure Information:
Failure Reason: The specified account's password has expired.
Status: 0xC0000224
Sub Status: 0x0
答案1
就我而言,exppw 模块 (exppw.dll) 未包含在 IIS 中的 OWA 模块中。我一直在处理这个问题,但一直没有找到解决办法,直到今天。碰巧的是,我在检查 OWA 中的 logon.aspx 时看到了 exppw.dll。所以我检查 IIS 是否已注册此 dll。它已注册,但 OWA 虚拟目录不包含此模块。添加模块并回收 MSExchangeOWAAppPool 后,当我使用需要在下次登录时更改密码的帐户登录时,会出现 OWA 更改密码屏幕。
答案2
我没有做任何更改。但我今天又试了一次。现在它起作用了。输入旧密码后,我被重定向到 /owa/auth/expiredpassword.aspx?url=/owa/auth.owa。
当我更改密码并在 AD 中设置“用户必须在下次登录时更改密码”时,它仍然有效。
不知道为什么我一开始没有工作,也不知道为什么它现在工作了......