我试图拒绝用户访问静态文件夹的内容:
<location path="log4">
<system.web>
<authorization>
<deny users="*"/>
</authorization>
</system.web>
</location>
但这失败了。
我找到了这个问题的答案:
First answer是我的问题的解决方案:
<security>
<requestFiltering>
<hiddenSegments>
<add segment="Uploads"/>
</hiddenSegments>
</requestFiltering>
</security>
那很好。
但是,当我更靠近Web配置时,我还有其他部分可能会限制或允许用户访问图像或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
的情况下,拒绝/允许访问具有位置路径的静态文件夹内容。
我的应用程序可以进行表单身份验证,并且可以在具有集成模式的applicaton pool .net 2.0上使用。
答案 0 :(得分: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
关于, 贾帕。