我在客户端不记名令牌中验证什么?
What do I verify within a client bearer token?
我有服务 A、OAuth 2 身份验证服务器和服务 B。
服务 A 有一个 API 并信任身份验证服务器。
服务 B 需要调用服务 A 的 API,为此它需要在请求中包含一个客户端(即 non-user-specific)承载令牌 header。
除了client_id
和sub
(应该和client_id
一样),服务A需要使用bearer token中的哪些信息来验证认证服务器服务 B 是它所说的那个人,不记名令牌有效吗?
what information from the bearer token does service A need to use to verify with the auth server that service B is who it says it is, that the bearer token is valid?
除了sub
,您还应该验证:
- 没有过期
- 令牌发行者
iss
是您信任的服务器。
- 令牌已签名,例如使用 RSA 并由发行者私人证书签名。
市场上常见的 OAuth 服务器通常可以使用 http 端点为您执行这些验证。
我有服务 A、OAuth 2 身份验证服务器和服务 B。
服务 A 有一个 API 并信任身份验证服务器。
服务 B 需要调用服务 A 的 API,为此它需要在请求中包含一个客户端(即 non-user-specific)承载令牌 header。
除了client_id
和sub
(应该和client_id
一样),服务A需要使用bearer token中的哪些信息来验证认证服务器服务 B 是它所说的那个人,不记名令牌有效吗?
what information from the bearer token does service A need to use to verify with the auth server that service B is who it says it is, that the bearer token is valid?
除了sub
,您还应该验证:
- 没有过期
- 令牌发行者
iss
是您信任的服务器。 - 令牌已签名,例如使用 RSA 并由发行者私人证书签名。
市场上常见的 OAuth 服务器通常可以使用 http 端点为您执行这些验证。