【问题标题】:Give different permissions to different users to a git repository stored on a remote server为不同用户授予存储在远程服务器上的 git 存储库的不同权限
【发布时间】:2021-07-08 10:50:46
【问题描述】:

我有一个服务器,它将用于存储一个私有 git 存储库。 在这台服务器上有一个用户叫git

/opt/ 中有一个目录,其中包含我已实现的存储库。
该目录由git管理(组也是git)。

可以使用带有公钥身份验证(无密码身份验证)的 SSH 来完成与该服务器的远程连接。
公钥属于 2 类不同的用户:对存储库具有拉取和推送权限的用户和只有拉取权限的用户。

我应该怎么做才能将每​​个公钥映射到正确的权限(拉+推或仅拉)?

【问题讨论】:

标签: linux git ssh


【解决方案1】:

理想情况下,gitolite 是一个 authorization layer,您可以在其中注册这些用户(在专用的特殊 Git repository gitolite-admin 中)

repo foo
    RW+     =   alice
    RW      =   carol

repo bar
    RW+     =   bob
    R       =   alice
  • R 表示“仅拉”
  • RW 表示“拉或推”

优点是不需要单独的数据库,而不是下一个最佳解决方案:gitea(单个可执行文件,但需要关联数据库)

【讨论】:

    猜你喜欢
    • 2021-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-16
    • 1970-01-01
    • 2011-04-23
    • 2021-12-23
    • 2018-11-20
    相关资源
    最近更新 更多