在IIS7 Environment.UserName在用户登录时是不同的

时间:2011-02-02 14:16:29

标签: asp.net-mvc iis-7 impersonation

我有一个在IIS7下的共享主机上运行的Asp.Net MVC应用程序。该应用程序使用表单身份验证和默认的MembershipProvider。我在其中一个页面上有以下代码。

@Environment.UserDomainName - @Environment.UserName

当我以匿名用户身份访问该网站时,它显示:WSWB12 - IUSR_139 如果我已登录:WORKGROUP - WSWB12 $

问题是只有IUSR帐户对我的文件夹具有写入权限。因此,当用户登录时,它无法上传任何文件。

我能为此做些什么吗? - 我非常希望保持集成模式。 - 模仿对我来说没问题。但似乎我的主机已在machine.config中查找该部分 - 我的主机可以在虚拟目录上进行任何设置以使其始终使用IUSR吗?

非常乐意为您提供任何帮助。

1 个答案:

答案 0 :(得分:0)

使用表单身份验证,您应该使用

HttpContext.Current.User.Identity.Name

访问用户名...

您应该检查应用程序池标识。您可以将其设置为您选择的用户,该用户可能具有正确的权限。