JTe*_*ech 6 authorize-attribute owin asp.net-mvc-5 asp.net-identity
我一直在研究保护MVC 5应用程序的最佳方法.
我们有一个带有许多WebAPI控制器的Web.csproj以及一个有两个区域的MVC站点 - 一个用于Admin,然后用于面向公众的网站.
阅读本文后说明基本控制器是最好的方法,我决定采用这种方法.
但是,我个人对使用基本控制器并不行(对于我的一些推理,请参阅此stackoverflow答案).
因此,鉴于我正在使用MVC 5(ASP.Net身份和OWIN身份验证) - 任何人都可以了解每种方法的优缺点吗?
Rud*_*udi 20
MVC 5中的当前做法是将其AuthorizeAttribute作为全局过滤器应用,并打开单独的动作/控制器AllowAnonymousAttribute
所以在App_Start\FilterConfig.cs中添加以下行:
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
... existing filters
// use the [AllowAnonymous] attribute to open up individual Actions/Controllers
filters.Add(new System.Web.Mvc.AuthorizeAttribute());
filters.Add(new RequireHttpsAttribute());
}
Run Code Online (Sandbox Code Playgroud)
注意:为了好的衡量,我还添加了RequireHttpsAttribute,因为ASP.Net Identity中的每个经过身份验证的请求都带有auth cookie,如果通过常规HTTP传输,它很容易受到Man In The Middle攻击.
| 归档时间: |
|
| 查看次数: |
13018 次 |
| 最近记录: |