Rob*_*b L 3 jwt openid-connect jwk
当您向 OIDC 提供者进行身份验证时,您将获得一个 id 令牌,如果您为 API 指定了范围,您将获得一个访问令牌,以便客户端应用程序可以代表最终用户向受保护资源发出请求。通常,访问令牌也是 JWT。
但是如何阻止某人欺骗这些访问令牌之一,并创建一个并将其传递给 API?我知道有一些保护措施可以防止修改,因为签名将与任何验证逻辑预期的不同,但是如果恶意用户手动创建了一个全新的签名怎么办?特别是因为这些令牌可以通过任何需要访问令牌的 API 进行“就地”验证(并非所有 API 都使用自省端点......尤其是使用 JWT)。我确实了解 OpenID Connect 提供商提供的 JWT 签名密钥周围有元数据,并且它在 OIDC 发现文档中可用。例如,这里是Google 的 JWK 元数据. 鉴于您拥有公开的签名信息,并且无需向 OIDC 提供商发出任何请求即可验证 JWT 访问令牌,那么 JWT 的安全性如何?是什么阻止了一个人创建一个并将其作为不记名令牌传递给需要访问令牌的 API?
但是如何阻止某人欺骗这些访问令牌之一,并创建一个并将其传递给 API?
如果没有用于签署原始 JWT 的私钥(假设您使用的是非对称签名算法,如 RS256),那么签名的欺骗和重建几乎是不可能的。
通过 OIDC 发现文档提供的 JWK 信息仅包含公钥。
还使用 HTTPS 进行授权/令牌交换以避免令牌嗅探。
| 归档时间: |
|
| 查看次数: |
1825 次 |
| 最近记录: |