【问题标题】:Which is the better way for token authentication. JWT or anyother method [duplicate]这是令牌认证的更好方法。 JWT或任何其他方法[重复]
【发布时间】:2019-10-31 12:29:20
【问题描述】:

我在我的网站上使用 JWT 身份验证来获取登录数据。看起来我们可以在没有密钥的情况下解码 JWT 令牌。试试下面的网站。这让我很震惊。那么除了JWT Token认证之外,还有没有更好的token认证方式。

http://calebb.net/

您可以尝试使用任何键。来自网站https://medium.com/@siddharthac6/json-web-token-jwt-the-right-way-of-implementing-with-node-js-65b8915d550e的示例

令牌:eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJkYXRhMSI6IkRhdGEgMSIsImRhdGEyIjoiRGF0YSAyIiwiZGF0YTMiOiJEYXRhIDMiLCJkYXRhNCI6IkRhdGEgNCIsImlhdCI6MTUyNTE5MzM3NywiZXhwIjoxNTI1MjM2NTc3LCJhdWQiOiJodHRwOi8vbXlzb2Z0Y29ycC5pbiIsImlzcyI6Ik15c29mdCBjb3JwIiwic3ViIjoic29tZUB1c2VyLmNvbSJ9.ID2fn6t0tcoXeTgkG2AivnG1skctbCAyY8M1ZF38kFvUJozRWSbdVc7FLwot-bwV8k1imV8o0fqdv5sVY0Yzmg P>

【问题讨论】:

  • 解码能力是拥有 JWT 的用处。它提供了一种在客户端和服务器之间共享信息的无状态方法。您不应在 JWT 令牌中存储敏感信息。然而,JWT 通过签名促进完整性,防止中间人攻击。

标签: node.js jwt jwt-auth json-web-signature


【解决方案1】:

您提供的令牌是 JWS,即 签名 令牌。与任何其他数字签名数据一样,可以读取有效负载。

我认为混淆来自您提到的文章Encryption algorithm to be used to protect the token,而对于 JWS,该算法是签名算法。

希望有用户评论It [the token] is encoded in plain base64

其他 SO 用户指出 this questionthis other one 非常相似。

  • 通常只是对令牌进行签名 (JWS)
  • 令牌也可以加密 (JWE) 或签名然后加密 (nested tokens)

通过适当的手段(仅会话存储、HTTPS 通道、Httponly+安全 cookie),即使内容可以读取,JWS 也可以得到完美保护。

【讨论】:

    猜你喜欢
    • 2016-12-02
    • 1970-01-01
    • 2020-04-22
    • 1970-01-01
    • 2017-05-11
    • 1970-01-01
    • 1970-01-01
    • 2020-09-25
    • 2017-05-26
    相关资源
    最近更新 更多