jwks是什么?jwks 的刷新和访问令牌到底有什么作用?

Eth*_*ion 17 authentication oauth node.js jwt nestjs

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

Mic*_*ski 32

你的意思是JWKS还是一个JWKS endpoint

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

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

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

您可以查看此免费课程的第二部分:OpenID Connect 详细信息(需要电子邮件注册)。该JWKS主题已涵盖于此。

  • 链接课程是一个需要登录的资源。 (2认同)