跳到正文
MuoCeon 文档中心
v1oauth 上下文

公钥

GET /v1/oauth/jwks:JWKS 公钥集合,允许缓存 5 分钟。

GET {issuer}/jwks 返回签名公钥集合,资源服务器按令牌头里的 kid 取对应公钥做本地验签。

请求

无参数、无认证。

curl 'https://id.example.com/v1/oauth/jwks'

响应

{
  "keys": [
    {
      "kty": "EC",
      "crv": "P-256",
      "kid": "2026-11-01",
      "x": "...",
      "y": "...",
      "use": "sig",
      "alg": "ES256"
    }
  ]
}
字段说明
kid密钥标识;令牌头里引用它
use固定为 sig
alg签名算法

缓存

响应带 Cache-Control: public, max-age=300。

为什么这里允许缓存

与令牌响应相反:这里的载荷是公钥,不是凭据。每个资源服务器都要按 kid 取公钥,不缓存等于让本端点承担全站的验签开销。 窗口压到 5 分钟,是为了让换钥(新 kid)在上游生效后尽快传播;客户端遇到不认识的 kid 会重新拉取,5 分钟只是兜底。

换钥期间的行为

情况处理
令牌的 kid 在集合中正常验签
令牌的 kid 不在集合中重新拉取一次;仍不存在则视为无效令牌
集合同时含新旧两把正常,轮换期内两把都有效

相关

  • 令牌里都有什么:令牌
  • 需要实时撤销判断时:自省

本页目录