You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何调试GitHub Action失败:凭证错误及令牌有效性验证

GitHub Action "Bad credentials" 排查方案

一、验证BUNDLE_ACCESS_TOKEN有效性

由于仓库密钥无法在界面查看,可通过临时添加Action步骤测试:

  1. 在你的my_tests.yml中,setup-ffmpeg步骤前添加以下调试步骤:
- name: Validate BUNDLE_ACCESS_TOKEN
  run: |
    curl -s -w "%{http_code}" -H "Authorization: token ${{ secrets.BUNDLE_ACCESS_TOKEN }}" https://api.github.com/user
  1. 触发Action运行,查看该步骤的输出:
    • 返回200及用户JSON信息:令牌有效
    • 返回401 Unauthorized:令牌已过期或无效
    • 返回403 Forbidden:令牌权限不足
  2. 测试完成后立即删除该步骤,避免敏感信息泄露。

二、其他可能的故障原因

1. 内置GITHUB_TOKEN被覆盖导致权限不足

你在环境变量中用secrets.BUNDLE_ACCESS_TOKEN覆盖了GitHub默认提供的GITHUB_TOKEN:

GITHUB_TOKEN: ${{ secrets.BUNDLE_ACCESS_TOKEN }}

FedericoCarboni/setup-ffmpeg会默认使用GITHUB_TOKEN拉取Action相关资源,而你的BUNDLE_ACCESS_TOKEN可能仅配置了Ruby私有仓库的读取权限,缺少actions:read或repo权限。解决方法:

  • 移除自定义的GITHUB_TOKEN配置,让Action使用内置令牌
  • 若必须保留自定义令牌,确保其拥有repo和actions权限

2. Action版本兼容性问题

你使用的FedericoCarboni/setup-ffmpeg@v1是较旧的版本,可能存在依赖或权限逻辑的bug。建议替换为最新稳定版本,比如:

- uses: FedericoCarboni/setup-ffmpeg@v3

3. 仓库密钥配置错误

  • 检查BUNDLE_ACCESS_TOKEN在Secrets中是否被误输入了多余字符(如空格、换行)
  • 确认BUNDLE_GITHUB__COM的格式正确(双下划线是Ruby环境变量的转义规则,你的配置是对的,但可重新输入验证)

4. 网络或镜像异常

虽然报错显示"Bad credentials",但偶尔网络波动导致请求失败也可能触发该错误。可尝试重新运行Action,或检查GitHub Actions的状态页面确认服务是否正常。

内容的提问来源于stack exchange,提问作者Meltemi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 11:15:28