仅允许对特定Web用户的文件夹进行写访问

时间:2011-10-07 14:39:39

标签: asp.net c#-4.0 iis-7 forms-authentication

我有一个用C#编写的网站,它使用表单身份验证来允许用户访问网站上的其他内容。其中一些用户拥有我创建的名为Admin的aspnet角色。这些用户只能向网站添加内容,包括上传图片。

为这些特定用户授予对images文件夹的访问权限以及仅向其他用户提供读取权限的正确方法是什么?

我在IIS7服务器上查看了使用传​​递身份验证,但我无法将所有用户添加到文件夹权限,因为新用户一直在添加。我还考虑过使用虚拟目录,但我不确定如何使用它。

2 个答案:

答案 0 :(得分:3)

我不知道这是否是最佳做法,但您可以在web.config文件中为特定目录设置模拟:

<location path="UploadPath">
  <system.web>
   <identity impersonate="true" userName="impersonatedUser" password="******"/>
   <authorization>
    <deny users="?"/>
    <allow roles="Admin"/>
   </authorization>
  </system.web>
 </location>

有关假冒的更多信息:http://msdn.microsoft.com/en-us/library/aa292118(v=vs.71).aspx

答案 1 :(得分:2)

您应该拥有一个虚拟目录,其中所有上传的文件都将被转移,最好由User1,User2文件夹分隔。该虚拟目录将在具有写入下面文件夹权限的用户下配置。我认为无论如何你都可以使用表单身份验证来控制对它的读/写访问。您必须使用表单身份验证角色限制对Web应用程序上载页面/功能的访问。