【问题标题】:How to immediately lock out a user using Claims Based Authorization in MVC 5如何在 MVC 5 中使用基于声明的授权立即锁定用户
【发布时间】:2014-08-05 15:17:02
【问题描述】:

背景

我是使用 AspNet Identity 和 MVC 5 的网站的管理员。

用户在网站上查看/编辑等信息的请求将根据其声明进行判断

这些声明是在用户登录时发出的,并以 cookie 的形式存储在他们的机器上

当他们登录时,他们还会获得一个有效期为两周的身份验证 cookie

场景

我想拒绝流氓用户访问他以前有权访问的我网站的区域。

问题

鉴于流氓用户在我从数据库中清除他的声明前两分钟登录,我是否必须等待最多两周才能强制他再次登录并刷新他的声明 cookie?

如果是这种情况,我需要进行哪些更改以确保我可以立即锁定恶意用户?

【问题讨论】:

    标签: asp.net-mvc cookies


    【解决方案1】:
    public class SignOutFilter : AuthorizeAttribute
    {
        public override void OnAuthorization(AuthorizationContext filterContext)
        {
            //...   if (cachedListOfBannedUsers.Contains(...))
            filterContext.RequestContext.HttpContext.GetOwinContext().Authentication.SignOut();
    
            //...
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2015-11-22
      • 2014-03-15
      • 2012-11-07
      • 1970-01-01
      • 2021-04-13
      • 2011-08-25
      • 2014-02-20
      • 1970-01-01
      • 2018-04-28
      相关资源
      最近更新 更多