IIS 7.5即使在禁用时也使用模拟

时间:2012-01-04 17:52:55

标签: c# asp.net iis-7 windows-server-2008 iis-7.5

我正在使用IIS 7.5,为默认网站启用了Windows身份验证。我已将其设置为以IIS AppPoool身份运行,并将我的Web文件夹中的权限授予IIS应用程序池标识。 但是当用户登录到我的网站并提供网络凭据时,其模拟为用户访问我的网络文件夹而不是使用应用程序池标识,并且用户收到401错误。 我也通过procmon验证了这一点。

i also ran appcmd set config /commit:WEBROOT /section:identity /impersonate:false

确保禁用模拟。我必须将computername \ users id添加到具有读/执行权限的Web应用程序文件夹中以使其工作。我在这里失踪了什么?

1 个答案:

答案 0 :(得分:0)

我不知道如何通过命令行执行此操作,但这是通过GUI的步骤。

  • 打开IIS管理器
  • 扩展您的服务器
  • 展开网站
  • 浏览到您的应用程序并选择它
  • 点击右侧“操作”中的“基本设置...”
  • 点击Connect as ...

此窗口允许您更改用户。

请注意,有两种形式的冒充,这是导致您混淆的原因。应用程序池模拟会导致应用程序在用户的上下文中运行。 Connect as使应用程序池使用用户访问磁盘上的资源,而不实际在用户的上下文中运行。

另请注意,如果您使用的是匿名身份验证,则“连接为”框中的“经过身份验证的用户”是“身份验证”中定义的匿名用户。