可以在 GitHub 上授权第 3 方应用程序/服务仅访问单个存储库。我没有找到 GitLab 的这种可能性,看来你只能授予对所有内容的访问权限。这是正确的还是有更好的方法?
您可以使用身份验证令牌仅在单个项目上授权应用程序/服务访问。项目中的单个存储库是不可能的。
使用部署令牌,它们提供对存储库和注册表的只读访问权限。转到您的项目,设置 > 存储库 > 部署令牌 https://docs.gitlab.com/ee/user/project/deploy_tokens/index.html
关于之前关于Private和Group token的回答: 根据GitLab文档和未解决的问题,项目访问令牌和组令牌存在漏洞,例如持有者可以访问任何内部存储库
项目访问令牌被视为内部用户。如果内部 用户创建一个项目访问令牌,该令牌能够访问所有项目 可见性级别设置为内部的项目。
来自 https://gitlab.com/gitlab-org/gitlab/-/issues/413028
这样做的后果之一是,如果我们共享一个只读 项目访问令牌与外部用户,他们可以访问任何 我们的 Gitlab 服务器实例中的内部项目,我们认为这是一个 明显的安全漏洞。