Gitea Configuration LDAP

De EjnTricks

Cet article présente la configuration d'un annuaire LDAP dans Gitea, afin de gérer les droits d'accès à l'application à partir de comptes déclarés sous un annuaire.


Hand-icon.png Votre avis

Nobody voted on this yet

 You need to enable JavaScript to vote


Dependencies.gif Déclaration groupes

Pour cette installation, deux groupes sont mis en place dans l'annuraire LDAP.

  • gitAdmins pour référencer les utilisateurs avec un droit d'administration;
  • gitUsers pour référencer les utilisateurs pouvant se connecter.


Icon-Configuration-Settings.png Déclaration annuaire

Une fois l'annuaire LDAP installé, il faut le déclarer au niveau de Gitea, avec un compte administrateur. Il faut accéder à l'interface d'administration depuis le sous menu Admin Panel, depuis l'icône de profile dans le coin supérieur droit.


Sur la page d'administration, il faut accéder à l'onglet Authentications.


La déclaration d'un nouvel annuaire s'effectue en cliquant sur le bouton Add new source pour afficher le formulaire de déclaration. Dans le cadre de cet article, le type LDAP (via BindDN) est utilisé car une option de synchronisation est disponible, et les valeurs saisies sont en relation avec l'installation faite de OpenLDAP sur un serveur Ubuntu.

Paramètre Valeur
Authentication Name Jouvinio LDAP

Nom, affiché dans l'interface, de la source de connexion.

Security Protocol Unencrypted
Host 192.168.1.32
Port 389
Bind DN cn=admin,dc=ejnserver,dc=fr

Le compte utilisé pour se connecter à l'annuaire lors de la synchronisation.

Bind Password Mot de passe du compte Bind DN.

Un message d'avertissement est présenté indiquant qu'il est préférable d'utiliser un compte en lecture seule.

User Search Base ou=people,dc=ejnserver,dc=fr

La base de recherche des utilisateurs.

User Filter (&(memberof=cn=gitUsers,ou=groups,dc=ejnserver,dc=fr)(uid=%s))

L'appartenance au groupe gitUsers est mis en place dans ce filtre.

Admin Filter (memberof=cn=gitAdmins,ou=groups,dc=ejnserver,dc=fr)

Ce filtre permet d'identifier si l'utilisateur est dans le groupe gitAdmins afin de donner les droits d'administration.

Username attribute uid

Correspond à l'attribut pour le nom de l'utilisateur, pourrait être laissé vide pour utilisateur l'identifiant de connexion.

First name attribute givenName

Attribut contenant le prénom de l'utilisateur.

Surname attribute sn

Attribut contenant le nom de l'utilisateur.

Email attribute mail

Attribut contenant le mail de l'utilisateur.

Le formulaire complété est alors le suivant.


Backup-restore.png Synchronisation

Dans le précédent formulaire, l'option Enable user synchronization est activé afin d'avoir un référencement d'utilisateurs à jour en fonction de l'annuaire. A noter que la synchronisation est réalisée une fois par jour par défaut. Ceci est modifiable dans le fichier app.ini, section cron.sync_external_users.

Cependant, il est possible de déclencher manuellement la synchronisation depuis l'onglet Dashboard. Un ensemble d'opération est disponible et il faut exécuter Synchronize external user data.


Viewer icon.png Voir aussi

Documentation officielle: https://docs.gitea.io/en-us/authentication/