使用visual studio 2019 创建的 asp.net core 5.0 web application 项。
startup类中注册使用Authentication和Authorization中间件服务,在controller或action中使用AuthorizeAttribute和AllowAnonymousAttribute控制访问权限。
详见代码,都有注释。
为了实现保持登录状态,可以用cookie来解决这一问题
假设过期时间为30分钟,校验发生在服务器,借助过滤器,可以这样写
public class PowerFilter : AuthorizeAttribute
{
public override void OnAuthorization(AuthorizationContext filterContext)
{
var cookie = HttpContext.Current.Request.Cookies