Gil*_*pie 3 c# authentication asp.net-mvc staging asp.net-identity
我正在尝试保护我的暂存站点(mvc5应用程序),目前正在执行以下操作:
public class HomeController : Controller
{
public ActionResult Index()
{
if (Request.IsAuthenticated){
return View();
}
return RedirectToAction("Login", "Account");
}
Run Code Online (Sandbox Code Playgroud)
以上是太费力了,不能正确,我确信我不应该通过身份验证检查单独包装我的所有视图,但是我似乎无法在一个位置添加支票?
Ufu*_*arı 11
您应该使用授权操作过滤器:
[Authorize]
public ActionResult Index()
{
return RedirectToAction("Login", "Account");
}
Run Code Online (Sandbox Code Playgroud)
您还可以在控制器级别使用它以确保所有操作方法都需要身份验证:
[Authorize]
public class HomeController : Controller
{
//many action methods
}
Run Code Online (Sandbox Code Playgroud)
如果要对应用程序中的每个操作方法使用身份验证,可以将其添加为FilterConfig.cs中的全局筛选器:
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new AuthorizeAttribute());
}
Run Code Online (Sandbox Code Playgroud)
如果执行此操作,则必须对登录操作使用AllowAnonymous过滤器,以便用户可以自行进行身份验证.
| 归档时间: |
|
| 查看次数: |
2544 次 |
| 最近记录: |