如何获取用于验证GitHub access token的公钥
关于GitHub访问令牌公钥获取的说明
首先明确不同令牌类型的对应规则:
- 你提到的普通OAuth用户访问令牌属于不透明令牌,本身没有携带签名信息,GitHub并未对外提供对应公钥支持这类令牌的离线校验,这类令牌的官方唯一校验方式是调用GitHub API验证有效性,如果你的需求是校验这类令牌,目前没有可用的公钥获取途径。
- 如果你需要校验的是GitHub签发的JWT格式令牌(比如GitHub App安装令牌、OIDC ID令牌、GitHub Actions OIDC令牌等),可以通过对应公开接口获取GitHub的公钥集合:
- GitHub App相关JWT的公钥可通过
GET /meta公共接口获取,返回结果中的keys字段就是可用的公钥集合,格式为JWKS。 - OIDC相关令牌的公钥可通过OIDC发现服务对应的JWKS地址获取,可直接用于JWT的签名校验。
- GitHub App相关JWT的公钥可通过
内容的提问来源于stack exchange,提问作者psyntium
相关产品推荐
相关产品推荐

