AM
ZH-CN
免费开始
菜单
功能

后端集成

通过 JWKS 与 OIDC Discovery 在后端服务中验证令牌。

backend jwt jwks verification oidc

后端集成

AM 通过 JWKS 暴露公钥,通过 OIDC Discovery 暴露配置。这些都是标准协议,任意 JWT 库都可直接使用。

在本地验证令牌、信任声明并进行授权即可。

Token 验证流程

AM你的后端客户端AM你的后端客户端GET /.well-known/jwks.json (cached)公钥请求 + Bearer 令牌在本地验证 JWT 签名Check exp, aud, scope响应

Endpoints

Endpoint用途
/.well-known/jwks.json公共签名密钥
/.well-known/openid-configurationOIDC Discovery 文档
/oauth2/introspectRefresh Token 自省

JWKS

获取公钥用于本地验证:

GET /.well-known/jwks.json
{
  "keys": [
    {
      "kty": "RSA",
      "use": "sig",
      "kid": "key_...",
      "alg": "RS256",
      "n": "0vx7agoebG...",
      "e": "AQAB"
    }
  ]
}

密钥轮换期间可能同时存在多把密钥。请用 JWT 头部里的 kid 声明进行匹配。

OIDC Discovery

通过 Discovery 文档自动配置客户端:

GET /.well-known/openid-configuration

返回符合 OpenID Connect Discovery 规范的端点信息、支持算法和能力。

JWT Claims

验证后的令牌包含:

Claim说明
iss签发方 URL
sub主体(用户 ID 或客户端 ID)
aud目标受众
exp过期时间(Unix 时间戳)
iat签发时间(Unix 时间戳)
scope已授予权限
cid客户端 ID
app应用 ID
acc当前账户 ID
uid用户 ID(用户认证场景)
role用户在当前账户中的角色

缓存

  • 缓存 JWKS 响应(使用 ETag/If-None-Match)
  • 签名验证失败时主动刷新(应对密钥轮换)
  • 典型 TTL:1 小时

Token 自省

对于 Refresh Token 或需要权威验证的场景:

POST /oauth2/introspect
Content-Type: application/x-www-form-urlencoded

token=...&client_id=...&client_secret=...

返回 active: true/false 及令牌声明。Access Token 是 JWT,优先通过 JWKS 本地验证。

相关