【问题标题】:User.IsInRole fails when using VS 2008's debugging web server on Windows 7 using Windows Auth使用 Windows Auth 在 Windows 7 上使用 VS 2008 的调试 Web 服务器时,User.IsInRole 失败
【发布时间】:2009-07-16 00:56:20
【问题描述】:

当从 VS2008 的 Web 服务器运行网站时调用以下行时,我得到“此工作站与主域之间的信任关系失败”。例外。

if (User.IsInRole("SomeRole"))
...

我已经关闭了 UAC,并设置了 VS 2008,它是内置的网络服务器,以管理员身份运行,我还重新加入了我的盒子到域。如果从我在 IIS 中的一个 Server 2003 机器中调用此代码,它可以正常工作,并且它在 Vista 中总是可以正常工作。

关于可能导致此问题的任何想法?

编辑:

我刚刚尝试在本地机器上的 IIS 7.5 中运行它,但我遇到了同样的错误。在 IIS 5.1 的 Windows XP 和 VS 2008 网络服务器中运行它。

【问题讨论】:

  • 对此有任何解决方案吗?我在 Win 7 RTM 上看到了相同的行为。
  • 不。但它似乎不是 VS Web 服务器或 IIS,因为我编写了一个控制台应用程序以同样的方式检查权限,并得到了同样的错误。

标签: asp.net visual-studio-2008 windows-7 windows-authentication


【解决方案1】:

您是否尝试过以管理员身份运行 VS2008?

【讨论】:

    【解决方案2】:

    这是一个 Win7/Server2008 R2 错误。该错误仅在连接到 Windows 2000 域时发生。

    可从here 获得修补程序

    【讨论】:

      【解决方案3】:

      内置的网络服务器是 cassini,这是一个相当有限的网络服务器。您可能已经发现了 cassini 所没有的功能——也许它不能执行 kerberos。这里有更多discussion about what Cassini doesn't have

      【讨论】:

      • 它在 Windows XP 上的 Cassini 中运行良好。卡西尼的版本在 Win XP 和 Win7 x64 上会有所不同吗? win7 上的 IIS 7.5 也出现此问题。
      • 其实我现在真的很困惑。我用谷歌搜索了这个错误信息。可能的罪魁祸首与主机操作系统有关,而不是与 Web 服务器(任何种类的)有关,但我不知道你在什么机器上运行你提到了这么多组合,其中一些必须在不同的机器上,有些不是。解决方法是停止使用内置的网络服务器,这是我多年前出于沮丧而做的。 XP 上的 IIS 5.1 模拟 IIS 6.0 比其他任何东西都好(IIS 6.0 除外)
      猜你喜欢
      • 2010-12-15
      • 2012-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-13
      • 1970-01-01
      • 1970-01-01
      • 2011-02-27
      相关资源
      最近更新 更多