保护MVC中的文件夹

use*_*406 5 model-view-controller asp.net-mvc

我的Content文件夹中有一些文件,我不希望用户无需经过授权即可下载.如何通过在地址栏中键入... Content/{filename}来阻止用户访问该文件?

Dar*_*rov 4

有几种可能性。第一个包括<location>在 web.config 中使用标签:

<location path="Content">
    <system.web>
        <authorization>
            <deny users="?" />
        </authorization>
    </system.web>
</location>
Run Code Online (Sandbox Code Playgroud)

另一种可能性是将这些文件放在无人可以访问的文件夹中(例如 App_Data 文件夹),然后使用控制器操作来服务那些将用该属性装饰的文件[Authorize]