限制Github访问只能针对单个仓库的ssh和https URL

6
我想为客户在一台机器上部署软件,但我有多个私有存储库并且也属于多个组织。我不想让客户访问我所属的所有组织。我只想部署代码并允许客户定期更新。这里有一个类似的问题:限制Github API访问用户的一个仓库。然而,我无法看到在Github中限制SSH访问单个存储库的方法。

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

有人知道我如何在远程计算机上仅允许访问单个私有存储库吗?

SSH密钥是按帐户而不是存储库进行管理的,您可以创建项目并添加属于该项目的存储库,还可以将客户的GitHub帐户添加到该项目中,以便他们能够访问它,希望这有所帮助。 - ZAD
3个回答

7
如果你想限制Git访问单个存储库,那么可以使用一个SSH部署密钥,它可以是只读或读写的。 这种情况下,它们被设计用于此目的。GitHub目前没有提供一种基于HTTP凭据的限制对单个存储库进行访问的方法。
请注意,部署密钥必须是唯一的;即,单个部署密钥必须与任何用户或其他存储库使用的密钥不同。
您还可以将客户添加为单个存储库的合作者,在这种情况下,他们将能够访问该存储库,但无法访问其他任何内容。

如果您没有访问存储库设置(作为协作者工作),是否有任何选项? - jacmkno
我不相信协作者有办法创建这样的凭据。 - bk2204

2

您是否允许客户访问您的账号?这似乎是他人可以访问您的私有代码库的方式。

您可以让客户创建一个git账号,将其添加为您私有代码库的协作者,并将机器的ssh密钥添加到其账号中。客户随后可以使用自己的账号访问您的代码库。我认为这样可以让他们访问自己的代码库,而不是您的其他代码库。



网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接