2026 年 10 月 21 日,GitHub 宣布在 CLI 中公开预览短期 OAuth 凭据,功能从 v2.103.0 开始提供。它让访问令牌自动过期,再由 CLI 按需续期,减少长期有效凭据泄露后被持续使用的风险。
不是强制迁移,现有登录不受影响
这项功能目前需要主动启用,现有登录和手动提供的令牌保持原有行为。CLI 会保存短期访问令牌和轮换的刷新令牌。短期访问令牌在数小时内失效,但这不代表刷新令牌和本机凭据可以放松保护。
升级后,可用 gh auth login --expiring 选择新机制,再通过 gh auth status 查看凭据状态和到期时间。若服务器不支持,CLI 会回退到普通、不设到期时间的令牌。详见 GitHub 官方公告。
旧脚本要检查什么?
重点排查“读取一次令牌,后面一直复用”的写法。脚本或扩展若长期保存 gh auth token 的输出,令牌过期后可能认证失败。官方建议需要时重新读取,而不是长期缓存。
v2.103.0 版本说明还特别指出,经 GH_TOKEN 或 GITHUB_TOKEN 环境变量传入的令牌不会由 CLI 自动续期。不能仅凭升级 CLI,就认定现有自动化流程已经具备续期能力。
使用 HTTPS 执行 Git 操作时,官方建议让 CLI 作为凭据助手,并使用 Git 2.46 或更新版本,避免缓存凭据超过有效期。新机制支持 GitHub.com、GHE.com,以及 GHES 3.23 起的企业服务器版本。
我们的建议:先测试,再切换
先找出脚本里保存或传递令牌的位置,在测试环境验证续期和过期后的行为,再逐步启用。短期令牌是缩短风险窗口的一项措施,不能替代最小权限和泄露后的撤销处理。这次是安全功能更新,不是漏洞通报,也不是必须立即迁移的通知。
本文根据官方资料独立整理,核验日期:2026 年 10 月 22 日。