FIX: 基于角色的身份验证失败的属于许多组的用户

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

点击这里察看该文章的英文版: 321562
本文已归档。它按“原样”提供,并且不再更新。
症状
如果用户属于许多组,用户不能访问资源,即使该用户是被授予对资源的访问权限的组的成员。如果多个组的组数的组名称的长度取决所属的用户,则会出现此问题。

您可能会遇到此问题在以下情况中:
  • 调用 WindowsPrincipal.IsInRole 方法。
  • 调用 User.IsInRole 方法。
  • 您启用模拟在 Web 的应用程序中,将设置为 BASIC 或 NTLM 身份验证方法。
原因
2,048 字节的缓冲区用来存储每个用户所属组的名称。如果组合这些组名的长度大于 2,048 字节,则会出现此问题。
解决方案
若要解决此问题,获得最新的 service pack,对于 Microsoft.net 框架。有关更多的信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
318836信息: 如何获取最新的.net Framework 服务包
此修复程序的英文版应具有以下文件属性或更高版本:
   Date        Time    Version       Size       File name        ------------------------------------------------------------   02-May-2002 12:25  1.0.3705.269   1,953,792  Mscorlib.dll   02-May-2002 02:15  1.0.3705.269   2,260,992  Mscorsvr.dll   02-May-2002 02:16  1.0.3705.269   2,256,896  Mscorwks.dll				

状态
Microsoft 已经确认这是在本文开头列出的 Microsoft 产品中的问题。Microsoft.net 框架 Service Pack 2 (SP2) 中,第一次已得到纠正此问题。

警告:本文已自动翻译

属性

文章 ID:321562 - 上次审阅时间:10/24/2013 11:33:13 - 修订版本: 3.2

Microsoft .NET Framework 1.0 Service Pack 1

  • kbnosurvey kbarchive kbmt kbhotfixserver kbqfe kbbug kbfix kbnetframe100presp2fix kbnetframe100sp2fix KB321562 KbMtzh
反馈