Ознаки
Після інсталяції Microsoft Internet Security і прискорення ISA Server з пакетом оновлень 1 (SP1) або, якщо використовується Microsoft Forefront Threat Management Gateway (TMG) 2010 можна помітити, що функція "змінити пароль" не працює належним чином. Наприклад, в налаштуваннях Active Directory, Увімкніть параметр "Смену пароля при следующем входе в систему" для певного облікового запису. Проте, коли користувач намагається увійти за допомогою автентифікацію на основі форм (FBA), коли на "змінити пароль" ввімкнуто у ISA Server або TMG сервера, користувач не автоматично переспрямовано форми, яка використовується для змінення пароля.
Причина
Ця проблема виникає, коли FBA разом із легкий каталог доступ до протоколу (LDAP). ISA Server 2006, SP1 змінює поведінку за промовчанням змінено під час використання FBA, разом із LDAP. Цю зміну було внесено для захисту від атак для автентифікації. Щоб отримати додаткові відомості див. розділ "Зміни в пакеті оновлення 1" Microsoft TechNet веб-сайт корпорації:
Спосіб вирішення
Щоб вирішити цю проблему, виконайте такі дії.
-
Інсталювати пакет виправлень, як описано в такій статті бази знань Майкрософт:
959357 Опис пакета виправлень ISA Server 2006: 29 жовтня 2008 року.Зверніть увагу, що перший крок не застосовується для Microsoft Threat Management Gateway (TMG) сервера. Це виправлення включено до продукту.
-
Відкрийте Блокнот.
-
Вставте наведений нижче сценарій, у файл блокнота.
' -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-' -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-' 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
-
Збережіть цей файл блокнота, за допомогою розширення імені файлу. vbs. Наприклад, скористайтеся таку назву для збереження файлу.
EnableHotfix957859.vbs
-
Відкрийте командний рядок, перейти до розташування, де збережено файл EnableHotfix957859.vbs та введіть таку команду:
Cscript EnableHotfix957859.vbs /webListener: < прослуховувач ім'я > /Value:trueПримітка. У цій команді замініть < прослуховувач ім'я > справжнє ім'я веб-прослуховувач.
Важливо: Якщо потрібно видалити виправлення 959357, відкрийте командний рядок, перейдіть до папки, в якій збережено файл EnableHotfix957859.vbs та введіть таку команду: Cscript EnableHotfix957859.vbs /webListener: <прослуховувач ім'я > /Value:falseПримітка у цій команді замініть справжнє ім'я веб-прослуховувач <прослуховувач ім'я>.
Стан
Корпорація Майкрософт підтвердила існування цієї неполадки у продуктах Майкрософт, перелічених у розділі "Застосовується до".
Посилання
Щоб отримати додаткові відомості про термінологію оновлення програмного забезпечення, клацніть цей номер статті в базі знань Microsoft:
824684 Опис стандартної термінології, яка використовується для опису оновлень програмних продуктів Майкрософт