【问题标题】:JWT Refresh after user permissions have changed用户权限更改后 JWT 刷新
【发布时间】:2016-11-09 21:38:35
【问题描述】:

关于 json 网络令牌的快速问题。

当我的令牌过期时,我会根据我当前的令牌获得一个刷新令牌(不验证当前用户)。

那么当我更改用户的权限,并且他不再被允许从 web api 获取数据时会发生什么? 我应该将 jwt 存储在数据库中以便我可以验证他的权限还是什么?

我读到一个令牌被分成 3 个部分,其中包含一些用户信息。如果刷新令牌携带相同的信息,它怎么会有所不同?

我真的希望有人能帮我解决这个问题。

格兹, 罗宾

【问题讨论】:

    标签: json web refresh token jwt


    【解决方案1】:

    那么当我更改用户的权限,并且他不再被允许从 web api 获取数据时会发生什么?

    您应该使令牌无效

    我应该将 jwt 存储在数据库中以便我可以验证他的权限还是什么?

    这不是一个简单的问题,有多种选择。见Invalidating client side JWT session

    1) 移除客户端令牌

    2) 令牌黑名单:存储在注销和过期时间之间的令牌,标记过期并在每个请求中检查它。需要服务器存储

    3) 使用其密码或权限摘要的哈希值对令牌进行签名。如果签名字段发生更改,任何以前的令牌都会自动验证失败。将此机制扩展到其他感兴趣的领域以进行签名。缺点是需要访问数据库

    如果刷新令牌携带相同的信息,它怎么会有所不同?

    第一部分是令牌的标头(签名算法),第二部分是有效载荷(主题、名称、颁发者、颁发时间、到期等),第三部分是签名,它在标头和有效载荷。由于“发布时间”等数据会有所不同,因此签名字段会发生变化

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-19
      • 2020-11-03
      • 2017-07-05
      • 1970-01-01
      • 2020-05-13
      • 1970-01-01
      • 2016-06-26
      • 2018-03-09
      相关资源
      最近更新 更多