如何从GitHub OAuth访问令牌获取scopes信息以实现增量授权
GitHub OAuth Token 信息查询替代方案
除了通过兑换临时code的接口获取access token及scopes外,GitHub提供了符合OAuth Token Introspection Endpoint(对应RFC7662规范)的API接口,可用于查询access token的详细信息:
- 接口地址:
GET /applications/{client_id}/token - 认证方式:使用应用的
client_id和client_secret进行HTTP基础认证 - 请求参数:在请求体中携带
access_token参数,值为待查询的用户access token
该接口返回的核心信息包括:
- 当前token已授权的
scopes列表 - 关联的用户ID
- token的过期时间(若为短期token)
- 授权对应的应用信息
在增量授权场景中,你可以通过该接口获取用户当前已授权的scopes,与所需的仓库类scopes进行对比,若存在缺失,即可引导用户重新发起授权流程以追加所需权限。
内容的提问来源于stack exchange,提问作者Laura Beatris
相关产品推荐
相关产品推荐

