您无法登录到本地 intranet 站点有多个不同域中具有相同的帐户名的用户帐户时使用 ISA Server 2006),发布的

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 952675
本文已归档。它按“原样”提供,并且不再更新。
症状
请考虑以下情形:
  • 若要发布本地 intranet 网站中使用了 Microsoft Internet 安全和 $ 加速 (ISA) Server 2006。
  • 您的 Web 侦听器启用基于窗体的身份验证 (FBA) 和 允许用户更改其密码 功能。
  • ISA 服务器是域的成员。例如对于域是 Domain1
  • 在林中有多个域,并且具有相同的帐户名称,在不同的域的用户帐户。 例如对于用户帐户是 Domain1\user1 和 $ Domain2\user1
  • 其中一个用户帐户被禁用。例如对于 Domain1\user1 被禁用。
  • 您尝试使用其他用户帐户来登录到本地 intranet 站点。例如对于使用 Domain2\user1 登录到本地 intranet 站点。
在这种情况下您会收到以下错误消息:
您的帐户已被禁用。请为您的组织,与技术支持联系。
此外,您无法登录到本地 intranet 网站。
原因
因为 ISA Server 首先搜索的 ISA 服务器所在的域中的用户名,则会出现此问题。然后,ISA Server 将查找具有相同的帐户名的帐户。但是,这不是用户请求为正确的用户帐户。
解决方案
Microsoft 提供的编程示例只,用于说明不附带任何明示或暗示保证。这包括,但不限于对适销性或针对特定用途的适用性的暗示的担保。本文假定您熟悉演示了正在使用的编程语言以及用于创建和调试过程的工具。Microsoft 支持工程师可以帮助解释某个特定过程的功能。但是,他们不会修改这些示例以提供额外的功能或构建过程来满足您的具体要求。

若要解决此问题,请按照下列步骤操作:
  1. 安装 ISA Server 2006 服务包 1。有关如何获取 ISA Server 2006 Service Pack 1 的详细信息单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    954258如何获取最新的 Internet 安全和 $ 加速 (ISA) Server 2006 服务包
  2. 运行一个脚本来启用此服务包提供的功能。若要这样做,请按照下列步骤操作:
    1. 单击 开始,单击 运行,键入 记事本,然后单击 确定
    2. 将下面的脚本复制到一个记事本文件,然后将该文本文件保存为 Microsoft Visual Basic 文件使用.vbs 文件扩展名
      Const SE_VPS_GUID = "{143F5698-103B-12D4-FF34-1F34767DEabc}"Const SE_VPS_NAME = "EnableMultipleFlatUserName"Const SE_VPS_VALUE = trueSub SetValue()    ' Create the root obect.    Dim root  ' The FPCLib.FPC root object    Set root = CreateObject("FPC.Root")    'Declare the other objects needed.    Dim array       ' An FPCArray object    Dim VendorSets  ' An FPCVendorParametersSets collection    Dim VendorSet   ' An FPCVendorParametersSet object    ' Get references to the array object    ' and the network rules collection.    Set array = root.GetContainingArray    Set VendorSets = array.VendorParametersSets    On Error Resume Next    Set VendorSet = VendorSets.Item( SE_VPS_GUID )    If Err.Number <> 0 Then        Err.Clear        ' Add the item        Set VendorSet = VendorSets.Add( SE_VPS_GUID )        CheckError        WScript.Echo "New VendorSet added... " & VendorSet.Name    Else        WScript.Echo "Existing VendorSet found... value- " &  VendorSet.Value(SE_VPS_NAME)    End If    if VendorSet.Value(SE_VPS_NAME) <> SE_VPS_VALUE Then        Err.Clear        VendorSet.Value(SE_VPS_NAME) = SE_VPS_VALUE        If Err.Number <> 0 Then            CheckError        Else            VendorSets.Save false, true            CheckError            If Err.Number = 0 Then                WScript.Echo "Done with " & SE_VPS_NAME & ", saved!"            End If        End If    Else        WScript.Echo "Done with " & SE_VPS_NAME & ", no change!"    End IfEnd SubSub CheckError()    If Err.Number <> 0 Then        WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description        Err.Clear    End IfEnd SubSetValue
    3. 将文件保存到一个临时文件夹中。例如对于该文件另存为 EnableMultipleFlatUserName.vbsC:\EnableMultipleFlatUserName 文件夹。
    4. 在命令提示符将移动到您保存该.vbs 文件,在步骤 2 c 中的位置,然后再运行.vbs 文件。例如对于运行以下命令:
      cd C:\EnableMultipleFlatUserName
      cscript EnableMultipleFlatUserName.vbs
状态
Microsoft 已经确认这是在"适用于"一节中列出的 Microsoft 产品中的问题。

属性

文章 ID:952675 - 上次审阅时间:01/16/2015 02:30:04 - 修订版本: 1.0

Microsoft Internet Security and Acceleration Server 2006 Enterprise Edition, Microsoft Internet Security and Acceleration Server 2006 Standard Edition

  • kbnosurvey kbarchive kbmt kbexpertiseinter kbtshoot kbprb KB952675 KbMtzh
反馈