2

我正在使用 MEAN 堆栈并希望确保某些路由具有经过身份验证的用户。我一直在阅读 JSON Web 令牌。这似乎是合理的。

在我投入更多时间之前,我想问一下是否有其他人使用它,以及到目前为止他们是否注意到了任何重大缺陷。除了护照,还有其他流行的替代品吗?

4

1 回答 1

2

JSON Web 令牌有几个缺陷,如果处理得当,可以使该方法对执行授权非常有用:

  • 客户端仍然需要将用户凭据传输到身份验证服务器,这意味着使用安全传输至关重要
  • 如果将敏感信息放入令牌中,则此信息应由客户端加密并通过安全传输发送
  • 根据您构建令牌的方式以及与谁共享令牌,令牌应该具有有限的生命周期,以防止其他人在令牌生成后对其进行破坏,并可能将伪造的数据发送到服务器

除了 cookie 之外,肯定还有其他基于 cookie 的身份验证方法passport,但我不知道有任何方法可以很好地集成和普及,但我相信您可能会找到更有效的方法。还有其他基于 cookie 的方案的示例,您可以实施这些方案,例如来自 SO的自动登录方案。

如果你想花时间学习如何实现 JWT,那绝对是值得的。如果您尝试评估是否需要使用 JWT,一个好的经验法则是问自己是否将拥有多个身份验证服务器,您是否需要授权跨多个不同域的客户端以及您是否需要客户端具有无状态/临时授权令牌。

于 2015-05-09T23:22:16.590 回答