JWT(JSON Web令牌)交叉用户/应用程序使用风险



我已经实现了基于JWT的身份验证系统,以实现API使用要求之一。这意味着,如果用户想访问任何REST Api,则将使用JWT令牌传达API。这就是步骤应如下:

  1. 用户将调用/Authenticate方法传递用户名/密码。
  2. 系统将验证用户并在响应中返回JWT令牌和超时。
  3. 现在,用户将与请求标头中的JWT令牌一起调用/Employee/Get API方法。例如。授权:承载{token}
  4. 事情运作良好。

现在,问题是,一旦生成令牌,任何用户都可以通过捕获网络请求/通过任何可以在网络系统中读取请求/响应的工具来获取令牌。

这意味着,如果我为用户标记生成了JWT token,那么通过抓住同样的toke,其他一些用户可以在标题中传递相同的令牌,并且可以访问我的/雇员/get API方法。

现在,令牌将被验证,因为它是从同一系统生成的,并且系统不知道用户,它只是知道JWT令牌。

我将如何确保其他用户不能使用相同的令牌,即使他们通过同样的令牌,我的系统也应拒绝该请求。我将如何安全?

预先感谢!

JWT的posession是认证的证明。如果令牌被盗,则攻击者可以模仿用户。因此,您需要保护它:

  • 主要使用https 加密通信频道

  • 在客户端上安全存储。例如,在这里查看JWT应该存储在localstorage或cookie中吗?

相关内容

最新更新