如何在 GitLab 中将 LDAP 用户转换为本地用户?

如何在 GitLab 中将 LDAP 用户转换为本地用户?

我们有一个GitLab安装,目前使用 LDAP 进行身份验证。是否可以将 LDAP GitLab 帐户转换为常规本地 GitLab 帐户?如果可以,如何操作。

我在管理控制台中找不到任何东西,而且 Google 似乎也没有提供任何有用的信息。

答案1

哎呀,我应该再等一会儿再问!如何在 Gitlab 8 中将 LDAP 用户转换为普通本地用户:

  1. 以管理员身份登录
  2. 在管理控制台中,单击用户标签
  3. 单击要更改的用户。请注意,GitLab 中有一个 UI 怪癖。如果您选择编辑对于用户来说,该设置无处可寻,您必须单击他们的名字才能获取设置!
  4. 点击身份用户选项卡
  5. 删除 LDAP 身份

然后您可以为用户提供一个新密码,或者他们可以从登录页面重置密码。

答案2

如果您发现需要立即从所有用户中删除 LDAP,则可以DELETE FROM identities;在 gitlab 的 postgres 数据库中进行操作。

  1. 由于 Gitlab 的文档中充斥着不要直接篡改其数据库的警告,因此您可能需要gitlab-backup先运行以确保安全。

  2. 获取以 gitlab 用户身份登录的 shell git。如果你使用 docker 安装,命令为:

    docker exec -it gitlab su - git
    

    如果您使用其他方法安装,则步骤如下:

    su - git
    
  3. 启动 gitlab 嵌入式 postgres 客户端:

    /opt/gitlab/embedded/bin/psql -h /var/opt/gitlab/postgresql gitlabhq_production gitlab
    
  4. 发出 SQL 命令:

    delete from identities;
    

相关内容