抖动-使用不记名令牌或其他东西的意义是什么?



我读到这样的东西:1 .一旦用户登录,你可以生成一个令牌并存储在MySQL数据库中,并与登录API的响应共享相同的令牌。使用共享首选项存储令牌。3 .当用户打开应用程序时,检查令牌是否存在,如果存在,然后发送令牌与请求头中要求用户登录的所有api。

但是如果我把它保存在数据库中,使用token的意义是什么?最终,这个与用户id相关的令牌和这个用户id可以访问所有内容。所以我想问为什么我应该使用一些令牌来保持用户登录,而不是用户的电子邮件或其他东西。

使用令牌更加安全和可用。只存储令牌更安全,因为在泄漏的情况下,令牌可以被撤销或其他。另一方面,存储用户的用户名和密码存在安全风险。此外,大多数服务在其API上使用令牌,并且没有用户名+通行证授权。例如,整个OAuth2概念就是建立在此基础上的。简而言之,令牌更加安全和灵活。

承载令牌的最佳使用,使用访问令牌和刷新令牌作为集合。当你在头部传递访问令牌时,当你发出HTTP请求时,通常访问令牌会频繁死亡,尤其是当安全性是应用程序的重要功能时,比如银行应用程序。当用户发出HTTP请求时,如果访问令牌失效,那么你应该通过另一个带有刷新令牌的API调用来刷新它,并返回带有新访问令牌的相同API调用。

相关内容

最新更新