在应用程序中,我们在JWT有效负载中保留了一些微不足道的布尔值。
在某些UI操作上,布尔值在服务器上发生变化,应用程序需要获取新的令牌以反映此更改。 要获得新的令牌,浏览器可以命中一个端点,该端点将检查并验证其当前令牌,然后返回一个新的访问令牌。要明确的是,用户必须拥有有效的访问令牌才能从端点获取新的访问令牌。
这是安全问题还是可以的?
答案 0 :(得分:1)
如果您的应用程序首先发出令牌,那么也可以让它更新令牌。我不认为这种情况有特定的安全问题。如果其他机构颁发了令牌,则您的应用程序无法续订,因为它无法访问数字签名的签名密钥。
在安全令牌中保留UI相关信息是否是一个好主意是另一回事。这些值可能更好地存储在会话信息或客户端存储中。
答案 1 :(得分:0)
我得到了什么-
是否可以在给定用户访问令牌的情况下让端点刷新令牌?
上述答案-
是的,这非常好,正如McdD解释的那样,如果同一个应用程序已经生成了访问令牌,那么完全相同的应用程序刷新它就可以了。
实际上,访问令牌的到期时间越短越好(根据JWT的工作原理,大多数应用程序将其保留在几分钟到几小时内),并在访问令牌到期后刷新令牌(这是为了防止滥用访问令牌。