我正在使用开放式ID连接协议来验证和授权基于节点js的应用程序中的用户。对于Oauth2,我们可以使用两种类型的令牌格式- JWT和不透明令牌。哪一个更适合基于Node JS的应用程序?这两种令牌类型的存储策略应该是什么?将这两个令牌存储在会话cookie中是否合适
发布于 2020-06-15 23:20:10
对于Node.js来说,没有更好的令牌类型了,选择标准在别处。这完全取决于您是否希望令牌包含信息,以及是否希望使用无状态应用程序。
JWT保存用户信息,这意味着在身份验证成功后,您不必调用特定端点来检索用户信息。它也是由后台签名的,这意味着后台可以通过检查令牌的签名来验证令牌的真实性,而不需要在两个请求之间将令牌存储在任何地方(即:在会话存储或数据库中)。在这方面,后端是无状态。
另一方面,不透明令牌更轻(每个经过身份验证的请求的网络开销更小),但它需要多一个请求来检索用户信息,并且它需要后端存储令牌以验证进一步的请求。
https://stackoverflow.com/questions/62390795
复制相似问题