使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。

症状

应用 Microsoft Internet 安全和加速 (ISA) 服务器 Service Pack 1 (SP1),或如果您使用 Microsoft 最前沿威胁管理网关 (TMG) 2010年后,您可能会注意到,"更改密码"功能不能按预期。 例如,在 Active Directory 设置中启用特定用户帐户的"用户必须更改在下一次登录的密码"设置。 但是,当用户尝试登录时,通过使用基于表单的身份验证 (FBA) ISA 服务器或 TMG 服务器中启用"更改密码"功能,用户将不自动重定向到的窗体,用于更改密码。

原因

FBA 轻型目录访问协议 (LDAP) 一起使用时,将发生此问题。 在 ISA Server 2006 SP1,当您使用 LDAP 和 FBA 已更改默认行为。 此更改是为了防止身份验证的攻击。 有关详细信息,请访问下面的 Microsoft TechNet Web 站点的"Service Pack 1 中的更改"部分:

http://technet.microsoft.com/en-us/library/cc514301.aspx

解决方案

若要解决此问题,请执行以下步骤:

  1. 安装以下 Microsoft 知识库文章中描述了此修复程序包:

    959357 ISA Server 2006 将修补程序软件包的说明: 2008 年 10 月 29 日请注意,第一步不是适用于 Microsoft 威胁管理网关 (TMG) 服务器。此修复程序包括在产品中。

  2. 启动记事本。

  3. 将下面的脚本粘贴到记事本文件。

    ' -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-' -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-'    This code is Copyright (c) 2007 Microsoft Corporation.  ''    All rights reserved.''    THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF'    ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO'    THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A'    PARTICULAR PURPOSE.''    IN NO EVENT SHALL MICROSOFT AND/OR ITS RESPECTIVE SUPPLIERS BE'    LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY'    DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,'    WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS'    ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE'    OF THIS CODE OR INFORMATION.'' -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-If Not WScript.Arguments.Named.Exists("WebListener") Then    WScript.Echo "WebListener not defined"    WScript.Quit(1)End IfSet fpcRoot = CreateObject("FPC.Root")Set fpcArray = fpcRoot.GetContainingArray()Set fpcWebListener = fpcArray.RuleElements.WebListeners(WScript.Arguments.Named("WebListener"))Set fpcWebListenerVps = fpcWebListener.VendorParametersSetsOn Error Resume NextSet fpcCookieAuthVps = fpcWebListenerVps.Item("{29022EBA-B030-4839-9CA6-DD8875BC7B47}")If Err.number = 0 Then    CookieAuthVpsExists = TrueElse    CookieAuthVpsExists = FalseEnd IfErr.ClearOn Error GoTo 0If Not CookieAuthVpsExists Then    WScript.Echo "Cookie auth VPS settings not defined, hotfix 957859 disabled"Else    On Error Resume Next    WScript.Echo "EnableLDAPPasswordExpiration: " & (fpcCookieAuthVps.Value("EnableLDAPPasswordExpiration") = True)End IfIf WScript.Arguments.Named.Exists("Value") Then    If Not CookieAuthVpsExists Then        Set fpcCookieAuthVps = fpcWebListenerVps.Add("{29022EBA-B030-4839-9CA6-DD8875BC7B47}")    End If    fpcCookieAuthVps.Value("EnableLDAPPasswordExpiration") = (StrComp(WScript.Arguments.Named("Value"), "True", 1) = 0)    fpcArray.Save    WScript.Echo "EnableLDAPPasswordExpiration set to " & (fpcCookieAuthVps.Value("EnableLDAPPasswordExpiration") = True)End If 
  4. 通过使用.vbs 文件扩展名保存该记事本文件。 例如,使用下面的名称保存该文件:

    EnableHotfix957859.vbs

  5. 打开命令提示符窗口移动到 EnableHotfix957859.vbs 文件中,保存的位置,然后键入下面的命令:

    Cscript EnableHotfix957859.vbs /webListener: < 侦听器名称 > /Value:true注意 在此命令中,Web 侦听器的实际名称替换 < 侦听器名称 >。

重要提示: 如果您想要删除的修补程序 959357,打开命令提示符窗口浏览到 EnableHotfix957859.vbs 文件中,保存的位置,然后键入下面的命令: Cscript EnableHotfix957859.vbs /webListener: <侦听器名称> /Value:false注在此命令中,<侦听器名称> 替换为实际 Web 侦听器的名称。

状态

Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。

参考

有关软件更新术语的更多信息,请单击下面的文章编号以查看 Microsoft 知识库中的相应文章:

824684 用于描述 Microsoft 软件更新的标准术语的说明

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×