2

我正在使用 AuthorizeAttribute 来检查用户在我的控制器上执行操作的能力。我希望能够将某些用户会话添加到“黑名单”,以便 AuthorizeAttribute 将来拒绝他们的请求。除了使用数据库层之外,还有没有可能做到这一点?

4

1 回答 1

0

您可以创建一个blacklistovverides 的自定义类AuthorizeCore

public class BlackListAttribute : AuthorizeAttribute
{
   public string BlackListedUsers { get; set; }
   protected override bool AuthorizeCore(HttpContextBase httpContext)
   {
      if (_blackListedUsers.Contains(user))
      {
         return false;
      }
   }
}

然后在你的控制器上:

[BlackList(BlackListedUsers="name, name2, name3")]
public ActionResult YourActionMethod() 
{
      return View();
}
于 2013-09-11T08:53:43.770 回答