限制Github访问ssh和https URL中的单个存储库



我想为一个客户在一台机器上部署软件,但它有多个私有存储库,并且还属于多个组织。

我不想让客户访问我所属的所有组织。我所想做的就是部署代码并允许客户定期更新它。

这里还有一个类似的问题:限制Github API只能访问用户的一个存储库

然而,我看不出有什么方法可以限制SSH访问Github中的单个存储库。

https://help.github.com/articles/adding-a-new-ssh-key-to-your-github-account/

有人知道我如何只允许在远程电脑上访问单个专用存储库吗?

如果您想限制Git对单个存储库的访问,那么您可以使用SSH部署密钥,该密钥可以是只读的,也可以是读写的。它们正是为这种情况而设计的。GitHub目前没有提供一种基于HTTP凭据限制对单个存储库访问的方法。

请注意,部署密钥必须是唯一的;也就是说,单个部署密钥必须与用于任何用户或任何其他存储库的密钥不同。

您还可以将客户添加为单个回购的合作者,在这种情况下,他们可以访问该回购,但不能访问其他任何内容。

您是否允许客户访问您的帐户?这似乎就是有人可以访问你的私人存储库的方式。

您可以让客户创建一个git帐户,将他们作为合作者添加到您的私有存储库中,并将机器的ssh密钥添加到他们的帐户中。然后,客户可以使用他们的帐户访问您的存储库。我相信这样他们就可以访问他们的存储库,但不能访问您的其他存储库。

您可以使用细粒度的个人访问令牌来访问单个存储库:https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token#fine-细粒度个人访问令牌

最新更新