【问题标题】:Github Actions Kubernetes-Hosted Runner - Token Best PracticesGithub Actions Kubernetes-Hosted Runner - 代币最佳实践
【发布时间】:2022-12-16 10:58:57
【问题描述】:
我正在 k8s 集群上设置一个自托管的 github runner。运行器部署要求我为其提供一个令牌,以便它可以链接到正确的存储库/github 帐户。
我见过很多使用个人访问令牌作为秘密资源的示例。将单个用户的 PAT 用于服务帐户令牌似乎是一种不好的做法。我想知道是否有推荐的方法来使用作为秘密存储的存储库或组织级令牌。
可能是 GITHUB_TOKEN,但这似乎太短暂了,因为它似乎会在工作流程完成后过期。
对这种情况下的最佳实践感到好奇。
【问题讨论】:
标签:
github
kubernetes
github-actions
access-token
【解决方案1】:
您可以按照doc 为组织创建注册令牌。
来自这个doc Github 建议您只使用带有私有存储库的自托管运行器。这是因为通过创建在工作流中执行代码的拉取请求,您的公共存储库的复刻可能会在您的自托管运行器机器上运行危险代码。
不要将秘密存储在主机运行器中 当 GitHub Action 使用自托管运行器时,它会将代码克隆到 workdir _work 中。我们必须确保无法在此文件夹中访问任何秘密(应用程序、系统等)。
如需更多信息,请关注doc。