【问题标题】:what is jwks? what actully does jwks with refresh and access tokens?什么是jwks?刷新和访问令牌的 jwks 到底是什么?
【发布时间】:2023-04-08 07:22:01
【问题描述】:

我正在开发一个具有访问和刷新令牌以及 JWTJWKS 的身份验证系统。我的问题是我不知道 JWKS 的功能是什么。在使用 JWT 并刷新令牌和访问令牌的身份验证系统中,JWKS 的功能是什么?这个系统中的公钥和私钥是什么? JWKS 需要连接数据库吗?

【问题讨论】:

    标签: node.js authentication oauth jwt nestjs


    【解决方案1】:

    您是指JWKS 还是JWKS endpoint

    JWKS 是 JSON Web 密钥集 - 用于共享公钥的 JSON 表示法,用于验证已签名 JWT 的签名。

    JWKS endpoint 是授权服务器公开的端点,您可以从中获取 JWKS。

    当您需要处理 JWT 的内容时(例如,您有一个接收 JWT 并需要执行授权决策的 API),您应该验证签名。为了验证它,您需要一个公钥,它对应于授权服务器用来签署 JWT 的私钥。可以通过不同的方式获取此公钥(例如,您可以在 API 中对其进行硬编码),并且从 JWKS endpoint 获取它是一种有效的方式。如果您可以选择从JWKS endpoint 读取公钥,我建议您使用它 - 这大大简化了系统中的密钥管理。每当您需要轮换密钥时,您只需在授权服务器中更改它们。如果您不控制授权服务器,这将特别有用 - 这样您就不必担心密钥轮换。

    您可以查看此免费课程的第二部分:OpenID Connect in DetailsJWKS 主题在此处进行了介绍。

    【讨论】:

      猜你喜欢
      • 2021-12-29
      • 2018-04-17
      • 2021-08-08
      • 2016-12-23
      • 2017-01-18
      • 2021-12-21
      • 1970-01-01
      • 1970-01-01
      • 2020-03-06
      相关资源
      最近更新 更多