拒绝访问特定用户的特定文件

时间:2017-10-16 05:24:35

标签: c# asp.net authorization

我的网站上有两个用户,用户A和用户B。我有两个文件文件One和文件Two。我只希望A访问文件One而只需访问B才能访问文件Two。我怎样才能在Asp.Net中实现这一点。我知道我可以使用web.config方式如下

    <authorization>
    <allow users="user1, user2"/>
    <deny users=”?”/>
   </authorization>

但我的用户和文件是动态创建的,所以我不能每次都去web.config并更改用户。有没有其他方法来实现这一目标?也许以编程方式?

  

注意:这里的文件是图像或pdf等媒体文件

2 个答案:

答案 0 :(得分:1)

如果您不想走Web.config的路线,您需要查看创建自己的处理程序或类似过程来拦截内容并将安全规则应用于事物。

处理程序由特定文件路径映射,因此您可以根据需要覆盖特定的根路径和文件类型。但是你必须处理安全和不安全的物品。

确切的实施比我在这里快速发布要多一些。但是,this article会逐步完成步骤/

答案 1 :(得分:0)

Add this code in Web.config

<location path="One.aspx">
<system.web>
<authorization>
<allow users="A"/> 
// allow John ..note: you can have multiple users seperated by comma e.g. John,Mary,etc

<deny users="*"/>  // deny others
</authorization>
</system.web>
</location>

<location path="Two.aspx">
<system.web>
<authorization>
<allow users="B"/> 
// allow John ..note: you can have multiple users seperated by comma e.g. 
 // John,Mary,etc

<deny users="*"/>  // deny others
</authorization>
</system.web>
</location>