【问题标题】:Should I pass encrypted data in a JWT token?我应该在 JWT 令牌中传递加密数据吗?
【发布时间】:2016-09-13 08:00:02
【问题描述】:

我们正在实施 JWT,以允许我们的客户端通过我们单独的身份验证服务器进行身份验证。

客户端将用户名和密码发布到身份验证服务器,接收到 JWT,然后使用 JWT 登录主站点。

显然,令牌包括用户名和其他一些非机密信息。

问题是是否使用 JWT 传递秘密信息以及如何传递。 以下是一些可以考虑的选项:

  1. 不要这样做。让主网站服务器使用经过身份验证的用户名调用后端 API,以获取所需的信息。
  2. 以 Private 声明的形式传递信息加密值,使用对称加密并在主网站和身份验证服务器之间共享密钥/密码。
  3. 加密整个令牌。

这里有什么最佳做法吗?这些选项的优缺点是什么?

【问题讨论】:

    标签: asp.net authentication encryption jwt


    【解决方案1】:

    您不应该使用 JWT 来传递秘密信息。 这些令牌通常经过签名以防止操纵(未加密),因此可以轻松解码和读取声明中的数据。 如需传递敏感信息请看JSON Web Encryption(JWE)

    【讨论】:

      【解决方案2】:

      您应该为此检查JSON Web Encryption

      【讨论】:

        猜你喜欢
        • 2020-10-03
        • 2017-12-07
        • 2018-12-29
        • 2019-07-25
        • 2018-11-25
        • 2016-03-18
        • 2020-07-15
        • 1970-01-01
        • 2019-07-25
        相关资源
        最近更新 更多