GitLab ist ein effizientes Code-Management-Tool, das Teams dabei helfen kann, Code effizienter zu verwalten und eine bessere Zusammenarbeit zu erreichen. In einem Team müssen manchmal verschiedenen Personen unterschiedliche Berechtigungen gewährt werden. In diesem Fall muss LDAP zur Authentifizierung von GitLab verwendet werden. Als Nächstes erfahren Sie, wie Sie LDAP in GitLab bereitstellen.
1. Installieren Sie das LDAP-Plugin
Vor der Installation von GitLab müssen Sie zunächst das LDAP-Plugin installieren. Nach der Installation von GitLab geben wir das GitLab-Installationsverzeichnis ein und installieren das LDAP-Abhängigkeitspaket.
yum install openldap openldap-devel -y
Nach der Installation des Abhängigkeitspakets müssen wir das LDAP-Plug-in von GitLab installieren. Geben Sie zunächst das GitLab-Plug-in-Verzeichnis ein:
cd /usr/share/gitlab/lib/gitlab/auth/backends/
Dann müssen wir das TAR-Paket des LDAP-Plug-ins herunterladen:
sudo curl -o ldap.tar.gz https://gitlab.com/gitlab-org/gitlab-ce/repository/archive.tar.gz?ref=master
Entpacken Sie das TAR-Paket des LDAP-Plug-Ins und überschreiben Sie das Original. Es gibt Dateien:
sudo tar -zxf ldap.tar.gz --strip-components 2 gitlab-ce-master/lib/gitlab/auth/backends/gitlab_ldap/
Führen Sie die Konfiguration von GitLab erneut aus:
sudo gitlab-ctl reconfigure
2. Konfigurieren Sie LDAP
Nach der Installation des LDAP-Plug-Ins müssen wir Folgendes tun Konfigurieren Sie LDAP für GitLab. Öffnen Sie die GitLab-Konfigurationsdatei und fügen Sie den LDAP-Konfigurationsinhalt hinzu:
sudo vim /etc/gitlab/gitlab.rb
Die wichtigsten Parameter, die wir konfigurieren müssen, sind wie folgt:
gitlab_rails['ldap_enabled'] = true gitlab_rails['ldap_servers'] = YAML.load <<-'EOS' main: # ‘main’其实是名称,可以根据实际情况进行配置,下面也需要使用同样的名称 label: 'LDAP' host: 'ldap.example.com' # LDAP服务器地址 port: 389 # LDAP服务器端口 uid: 'sAMAccountName' # 用户登录时需要使用的属性 block_auto_created_users: false # 是否阻止自动创建 bind_dn: 'CN=ldapuser,OU=Web Services,DC=example,DC=com' # LDAP的管理员账户 password: 'yourpassword' # LDAP管理员账户的密码 encryption: 'plain' # 加密方式,plain或tls base: 'CN=Users,DC=example,DC=com' # 查询的基础DN user_filter: '' # 根据需要设置用户筛选规则 EOS
Führen Sie nach der Konfiguration die GitLab-Konfiguration erneut aus:
sudo gitlab-ctl reconfigure
3. Testen Sie die LDAP-Verbindung
Nach der Konfiguration von LDAP müssen wir testen, ob die LDAP-Verbindung erfolgreich ist. Zuerst müssen wir ein Testkonto auf LDAP erstellen, zum Beispiel: testuser.
Verwenden Sie den Befehl ldapsearch auf dem GitLab-Server, um die LDAP-Verbindung zu testen, zum Beispiel:
ldapsearch -H ldap://ldap.example.com -x -b "CN=Users,DC=example,DC=com" -D "CN=ldapuser,OU=Web Services,DC=example,DC=com" -w 'yourpassword'
Wenn die Verbindung erfolgreich ist, können wir die Benutzerinformationen in LDAP anzeigen, zum Beispiel:
# testuser, Users, example.com dn: CN=testuser,CN=Users,DC=example,DC=com objectClass: top objectClass: person ...
Wenn die oben genannten Informationen angezeigt werden, wird die Verbindung ist erfolgreich.
4. LDAP in GitLab aktivieren
Nachdem die LDAP-Verbindung erfolgreich war, müssen wir LDAP in GitLab aktivieren. Nachdem LDAP aktiviert wurde, kann sich jeder LDAP-Benutzer bei GitLab anmelden und die zulässigen Berechtigungen nutzen.
Klicken Sie im GitLab-Benutzerbereich auf „Administratorbereich“ –> „Einstellungen“ –>
Die wichtigsten Parameter, die wir konfigurieren müssen, sind wie folgt:
Je nach Situation können wir Sie können auch die zu verwendenden Anmeldeattributnamen ändern und benutzerdefinierte Regeln in LDAP-Filtern hinzufügen, um bestimmte Benutzer zu filtern.
5. Zusammenfassung
Durch die Einleitung dieses Artikels erfahren wir, wie man LDAP in GitLab bereitstellt. Durch die Aktivierung von LDAP in GitLab können Benutzer im Team effektiv verwaltet werden, was eine gute Grundlage für zukünftige Entwicklungsarbeiten bietet.
Das obige ist der detaillierte Inhalt vonBringen Sie Ihnen Schritt für Schritt bei, wie Sie LDAP in GitLab bereitstellen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!