gpt4 book ai didi

c# - ASP .NET MVC 保护所有资源

转载 作者:行者123 更新时间:2023-11-30 21:21:48 26 4
gpt4 key购买 nike

如何在整个 Controller 上启用身份验证并仅针对某些操作方法禁用身份验证。我想要对所有资源进行身份验证。如果我这样写:

[Authorize]
public class HomeController : BaseController
{
//This is public
[UnAuthorized]
public ActionResult Index()
{
ViewData["Message"] = "Welcome to ASP.NET MVC!";
return View();
}
//This is private resource
public ActionResult PrivateResource()
{
return View();
}
}

然后任何人都可以访问此资源。我需要这个,因为我们所有的资源都是私有(private)的,很少有资源在我们的项目中是公开的。您有任何改进方法的想法吗?

最佳答案

相应地组织您的 Controller 。有一个用于所有经过身份验证的资源的基本 Controller ,您可以使用 [Authorize] 属性对其进行注释,另一个用于公共(public)资源。

[Authorize]
public abstract BaseAuthenticatedController : Controller
{ }

public abstract BaseController : Controller
{ }

关于c# - ASP .NET MVC 保护所有资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2558664/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com