【问题标题】:How to prevent group creation in GitLab如何防止在 GitLab 中创建组
【发布时间】:2015-10-20 14:12:29
【问题描述】:

我已经在我的公司安装了 GitLab 7.12。但是用户开始创建组(以及组和组......),它很快就会变得一团糟。 有谁知道如何将群组创建限制为平台管理员?

这个想法是让人们在他们的个人空间中创建项目,并为官方项目保留组。

【问题讨论】:

  • 用户疯狂地创建群组是一个真正的问题,不是吗?

标签: gitlab


【解决方案1】:

对于 Omnibus 安装,正确的位置是:

   /etc/gitlab/gitlab.rb
      gitlab_rails['gitlab_default_can_create_group'] = false

然后您需要执行sudo gitlab-ctl reconfiguresudo gitlab-ctl restart 来应用更改。

【讨论】:

  • 在此设置之前创建的任何用户都将继承创建组的能力。因此,您可能必须根据@stuart 在stackoverflow.com/a/33278917/1565056 的回答单独更新用户设置。或者如果用户没有存储库,则从管理控制面板中删除用户(虽然不推荐)。
【解决方案2】:
  1. 进入管理控制面板
  2. 选择“用户”
  3. 选择相关用户并点​​击“编辑”
  4. 向下滚动到“访问”并取消勾选“可以创建组”

如果您想为新用户禁用组创建,此时您必须编辑gitlab.yml,特别是设置default_can_create_group,并将其设置为false

gitlab.yml#L63@712d1768

【讨论】:

    【解决方案3】:

    对于现有用户,您还可以在 gitlab-rails 控制台上使用以下命令:

    irb(main):001:0> User.update_all can_create_group:false
    

    【讨论】:

      【解决方案4】:

      对于老用户,使用类似(在 rails 控制台中):

      irb(main):012:0> @users.each do |u|
      irb(main):013:1*  u.can_create_group= false
      irb(main):014:1> u.save
      irb(main):015:1> end
      

      【讨论】:

        【解决方案5】:

        对于老用户,GitLab Users API: User modification(一个 REST API)也可以用于此目的(将can_create_group 的值设置为false)并且可以很容易地用于 for 循环中的批量更改:

        curl --request PUT https://gitlab.example.com/api/v4/users/:id?can_create_group=false
        

        注意:请在GitLab API Authentication查看可用的身份验证方法。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-08-27
          • 2015-06-08
          • 1970-01-01
          • 2019-09-27
          • 1970-01-01
          • 2019-04-23
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多