【问题标题】:Should refresh token request includes the expired jwt access token?刷新令牌请求是否应该包含过期的 jwt 访问令牌?
【发布时间】:2019-03-19 16:59:53
【问题描述】:

我正在使用 Angular 和 asp.net 核心实现 Web 应用程序。我使用 Jwt .NET 库进行了自定义身份验证。我没有使用任何身份服务器提供程序。 在对用户进行身份验证后,我使用刷新令牌返回访问令牌:

{access_token:""eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9....", refresh_token:"GDSDSGFDS..."}

当请求刷新令牌时我应该发送过期的访问令牌并对其进行验证还是刷新令牌就足够了?

我读到了关于不在浏览器中存储刷新令牌的信息(角度方面)。是否有其他选项可以应用刷新令牌场景?

【问题讨论】:

  • 将其保存为 cookie,然后浏览器处理它并使用凭据标志 angular 将其放入请求中,这是最安全的方式。有一个很好的帖子:dev.to/rdegges/please-stop-using-local-storage-1i04 刷新它,这取决于你的需要。您可以将设置时的令牌保存在数据库中,并在刷新时验证它是否相同,如果它确实有意义,我会觉得更安全。

标签: angular .net-core token


【解决方案1】:

从客户端的角度来看,我想说发送 refresh_token 就足够了。但万一数据库遭到入侵,攻击者可以在数据库中查找 refresh_token。

我读到关于不在浏览器中存储刷新令牌(角度方面)

我的建议是将刷新令牌存储在本地存储中,并有一个短过期时间的访问令牌。

【讨论】:

    猜你喜欢
    • 2021-06-17
    • 2020-10-01
    • 2021-08-26
    • 2019-09-19
    • 2021-10-03
    • 2017-12-12
    • 1970-01-01
    • 2021-08-23
    相关资源
    最近更新 更多