我有一个MVC网络应用程序,其中包含某些静态资产,这些资产只应该对经过身份验证的用户(以及某些角色)提供。
我知道如何在控制器中为某些角色提供某些操作,但文件夹/静态内容是否有方法或Web.config设置?
喜欢:此文件夹下的任何内容只能由编辑用户组访问?
感谢。
答案 0 :(得分:2)
如果要重新访问仅包含静态内容的特定文件夹,则需要在此文件夹的根目录中添加web.config文件,并添加如下所示的配置根:
<?xml version="1.0"?>
<configuration>
<system.web>
<authorization>
<allow roles="your_role_name_here"/>
<deny users="*" />
</authorization>
</system.web>
</configuration>
确保runAllManagedModulesForAllRequests
中的true
属性设置为<system.webServer>/<modules>
:
<system.webServer>
<modules runAllManagedModulesForAllRequests="true">
<!-- other configurations -->
</modules>
</system.webServer>