首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我是否应该使用个人访问令牌从GitHub操作访问ghcr?

我是否应该使用个人访问令牌从GitHub操作访问ghcr?
EN

Stack Overflow用户
提问于 2021-03-02 21:59:39
回答 1查看 1.3K关注 0票数 1

我正在探索如何使用GitHub容器注册表(ghcr)来存储构建在GitHub操作中的持续集成(CI)管道中构建的码头映像。

我正在读为码头映像迁移到GitHub容器注册表,它说:

将新的容器注册表身份验证个人访问令牌(PAT)添加为GitHub操作秘密。GitHub容器注册表不支持对PAT使用GITHUB_TOKEN,因此必须使用不同的自定义变量,例如CR_PAT

不过,在那篇文章的前面有一个指向GitHub操作的安全强化的链接,该链接声明:

您不应该使用来自您自己帐户的个人访问令牌。这些令牌允许访问您可以访问的组织中的所有存储库,以及用户帐户中的所有个人存储库。这间接地授予了工作流所在存储库的所有写访问用户的广泛访问权限。此外,如果您稍后离开一个组织,使用此令牌的工作流将立即中断,并且调试此问题可能具有挑战性。如果使用个人访问令牌,则应该是为一个新帐户生成的令牌,该帐户只被授予对工作流所需的特定存储库的访问权限。请注意,这种方法是不可伸缩的,应该避免使用其他方法,例如部署密钥。

这些话似乎自相矛盾。第一种是告诉我使用PATs来验证我的CI管道中的ghcr,另一种似乎是告诉我不应该这样做。

我是正确的,他们是矛盾的,还是我误解了?

从GitHub操作工作流对ghcr进行身份验证的正确操作过程是什么?

EN

回答 1

Stack Overflow用户

发布于 2021-03-03 09:17:37

这是两种说法的混合体。您需要使用个人访问令牌( PAT ),而GitHub容器注册表不支持对PAT使用GITHUB_TOKEN,因此必须使用不同的自定义变量,如CR_PAT。 您可以创建一个新的GitHub帐户,它将专门用于非人工自动化,例如CI/CD。由于这个GitHub帐户不会被人类使用,所以它被称为机器用户,并且在GitHub的服务条款下被允许使用。然后,您应该给这个机器用户帐户最低数量的特权来完成它的工作。 如果您使用的是属于您个人帐户的PAT,而不是属于单独的最小特权机器帐户,则其他人可能会获得令牌冷,因此您的个人帐户及其所有权限都会受到损害(非常糟糕!)。在有多个同事/合作者的组织中工作的风险更大。

来自:https://github.community/t/should-i-use-a-personal-access-token-for-accessing-ghcr-from-github-actions/165381

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66447777

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档