我试图拒绝用户访问静态文件夹:
<location path="log4">
<system.web>
<authorization>
<deny users="*"/>
</authorization>
</system.web>
</location>
但这失败了。
我发现这个Q&A的问题:
First answer解决了我的问题:
<security>
<requestFiltering>
<hiddenSegments>
<add segment="Uploads"/>
</hiddenSegments>
</requestFiltering>
</security>
非常好。
但是,当我仔细观察我的网络配置时,我有其他部分可能限制或允许用户访问图像或css等文件夹,但下面不考虑输入请求,它允许任何人访问它们。
<location path="images">
<system.web>
<authorization>
<deny users="*"/>
</authorization>
</system.web>
</location>
<location path="css">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>
在第二个most upvoted answer相同的线程中,我会解释它的工作但不是。
<?xml version="1.0"?>
<configuration>
<system.web>
<authorization>
<allow roles="Administrator"/>
<deny users="*" />
</authorization>
</system.web>
</configuration>
This可能是我的第二部分问题的解决方案:
<modules runAllManagedModulesForAllRequests="true"></modules>
然而,正如所指出的here这导致性能问题。
Here也提到了设置处理程序,例如.xml文件,但我需要在文件夹级别。
我的问题是如何拒绝/允许访问具有位置路径的静态文件夹内容,而不需要将runAllManagedModulesForAllRequests
设置为true
。
我的应用程序使用表单身份验证和应用程序池.net 2.0与集成模式。
您可以在web.config中设置拒绝用户,如下所示:
<location path="s3">
<system.web>
<authorization>
<deny users="*" />
</authorization>
</system.web>
Setting authorization rules for a particular page or folder in web.config
此致,Jalpa。