限制在MVC中浏览图像和其他文件夹

时间:2013-09-26 13:15:52

标签: asp.net-mvc

如何限制用户在未登录或未经授权的情况下浏览带有URL地址的图像或其他文件夹?

例如:不允许http://xyx.com/Images/image.png,不应显示图像。

我正在使用MVC 4。请为我提供停止访问的方法和机制。

3 个答案:

答案 0 :(得分:2)

您应该使用web.config执行此操作。将配置文件放在images文件夹中,其内容如下:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
    <system.web>
        <authorization>
          <deny users ="?" /> <!--Deny all users who are anonymous (not logged in) -->
        </authorization>
    </system.web>
</configuration>

要为您的应用程序使用主web.config文件,请参阅以下内容:

<location path="Images">
    <system.web>
        <authorization>
            <deny users ="?" />
        </authorization>
    </system.web>
</location>

答案 1 :(得分:1)

对于限制文件夹,请在Web.config

中配置以下给定的配置块
<configuration>
<location path="ImageDirectory">
    <system.web>
        <authorization>
            <deny users="*"/> <!-- Denies all users -->
        </authorization>
    </system.web>
</location>
</configuration>

根据上述配置,匿名用户无法访问ImageDirectory文件夹及其内容。

答案 2 :(得分:-1)