已配置权限的组织级GitHub精细粒度PAT无法正常使用
问题:调用GitHub Actions自托管运行器注册令牌接口返回403权限错误
我为组织创建了一个精细粒度PAT(Personal Access Token),用于管理自托管运行器。执行以下curl命令调用actions/runners/registration-token接口时返回403错误:
curl -Li \ -H "Accept: application/vnd.github+json" \ -H "Authorization: Token github_pat_..." \ -H "X-GitHub-Api-Version: 2022-11-28" \ https://api.github.com/orgs/.../actions/runners/registration-token
接口响应:
HTTP/2 403 server: GitHub.com date: Tue, 07 May 2024 21:31:53 GMT content-type: application/json; charset=utf-8 github-authentication-token-expiration: 2024-08-05 20:57:52 +0200 x-github-media-type: github.v3; format=json x-accepted-github-permissions: organization_self_hosted_runners=read x-github-api-version-selected: 2022-11-28 x-github-request-id: 813F:EF368:331761F7:334F3EB0:663A9DC9 { "message": "Resource not accessible by personal access token", "documentation_url": "https://docs.github.com/rest/actions/self-hosted-runners#get-a-self-hosted-runner-for-an-organization" }
已确认PAT配置了对应权限(权限截图:
)
排查与解决建议
- 核对权限等级:
actions/runners/registration-token接口需要organization_self_hosted_runners的write权限,但响应头x-accepted-github-permissions显示当前令牌仅拥有read权限。检查PAT的权限配置,确保授予的是写入权限而非只读。 - 确认组织访问权限:精细粒度PAT需明确指定可访问的组织,确保目标组织已被添加到令牌的授权组织列表中,未被限制访问。
- 验证令牌状态:在GitHub设置中确认该PAT未被撤销、暂停,且处于有效期内(响应头显示有效期至2024-08-05,可再次核对)。
- 检查请求路径:确认
orgs/...中的组织名称拼写正确,目标组织真实存在。 - 重新生成令牌:若权限配置无误仍报错,尝试删除现有PAT并重新创建,排除令牌权限同步延迟的问题。
内容的提问来源于stack exchange,提问作者Vardens Archangel
相关产品推荐
相关产品推荐

