Retirer des utilisateurs sur GitLab pour sécuriser votre projet

Apprenez à révoquer les accès et à gérer l'héritage des droits pour maintenir une sécurité maximale sur vos dépôts GitLab.

Retirer des utilisateurs sur GitLab : Sécuriser votre projet

Pourquoi retirer des membres d'un projet ?

La gestion d'un projet ne s'arrête pas à l'invitation de nouveaux collaborateurs. La sécurité de votre code source repose également sur votre capacité à maintenir une liste de membres à jour. Lorsqu'un collègue quitte l'entreprise, qu'un prestataire termine sa mission ou qu'un étudiant finit son stage, il est crucial de révoquer les accès rapidement.

Garder des accès ouverts inutilement constitue une faille de sécurité évitable. C'est ici que s'applique le principe du moindre privilège : chaque personne ne doit avoir accès qu'à ce dont elle a besoin, durant le temps nécessaire. Faire le ménage régulièrement dans vos dépôts permet de garantir un environnement de développement protégé.

Note importante

Notez que retirer des utilisateurs sur GitLab ne supprime pas leurs anciens commits ni leurs Merge Requests passées. L'historique de contribution est intégralement conservé pour la traçabilité du projet.

Les étapes pour supprimer un accès utilisateur

Le retrait d'un collaborateur est une action immédiate qui empêche instantanément la personne de consulter le code, de pousser des modifications (push) ou de gérer les tickets du projet.

Accéder au projet concerné

Identifiez-vous sur votre instance et rendez-vous sur le tableau de bord du projet où vous souhaitez effectuer la gestion des membres GitLab.

Sélection du projet dans GitLab

"Choisissez le projet spécifique pour gérer ses membres"

Ouvrir la gestion des membres

Dans le menu latéral, allez tout en bas dans Manage (Paramètres), puis cliquez sur Members (Membres).

Accès à la page des membres

Identifier et supprimer l'utilisateur

Faites défiler la page jusqu'à la section Existing members and groups. Vous y trouverez la liste de toutes les personnes ayant accès au dépôt. Localisez l'utilisateur à retirer et cliquez sur l'icône de suppression (souvent représentée par une poubelle ou une croix) située à l'extrême droite de son nom pour supprimer un accès utilisateur.

Action de suppression de membre

"Cliquez sur l'icône de suppression pour lancer la procédure"

Confirmer l'action

Le système est prudent : une fenêtre surgissante (pop-up) apparaîtra pour vous demander si vous êtes certain de vouloir retirer cet utilisateur. Cliquez sur le bouton OK ou Remove pour valider définitivement.

Fenêtre de confirmation de suppression

Validation du retrait

Une fois l'action terminée, une bannière de succès apparaîtra en haut de votre écran. L'utilisateur ne figurera plus dans la liste et ses droits seront révoqués sur-le-champ.

Message de succès de suppression

Attention à l'héritage des droits !

Si vous ne voyez pas de bouton de suppression à côté d'un utilisateur, c'est probablement parce qu'il possède un accès hérité via un Groupe. Dans ce cas, vous devrez le retirer directement du groupe parent pour que ses droits disparaissent également du projet.

Conclusion

Savoir retirer un collaborateur est tout aussi important que savoir l'inviter pour maintenir une gouvernance de projet saine. Une bonne gestion garantit que seules les personnes autorisées peuvent interagir avec votre code.

Maintenant que vous savez ajouter et retirer des membres, il est temps de comprendre plus en profondeur ce que chaque utilisateur a réellement le droit de faire. Dans le prochain chapitre, nous allons détailler précisément les différents niveaux de permissions sur GitLab.

Espace commentaire

Écrire un commentaire

Rejoignez la discussion

Vous devez être connecté pour poster un message.

26 commentaires

ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Le rôle ne change rien à la procédure de suppression. Tu peux virer un Reporter comme un Maintainer exactement de la même manière.

10/05/2026 à 12:41
ugerard
Membre
Avatar de ugerard
ugerard
Membre

C'est quoi la différence entre un Reporter et un Guest pour la suppression ?

10/05/2026 à 04:53
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Exact. Sans le scope api, tu vas juste manger des erreurs 403 à la chaîne.

10/05/2026 à 00:38
jacquet-gabrielle
Membre Actif
Avatar de jacquet-gabrielle
jacquet-gabrielle
Membre Actif

Faites gaffe au token utilisé, faut qu'il ait les scopes api pour pouvoir supprimer des membres.

09/05/2026 à 17:03

J'ai testé le script python, ça marche nickel sur une instance self-hosted.

09/05/2026 à 11:27
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Utilise glab, c'est l'outil officiel en ligne de commande.

Commande : glab api projects/<id>/members.

09/05/2026 à 05:07
laporte-emmanuel
Membre Actif
Avatar de laporte-emmanuel
laporte-emmanuel
Membre Actif

Y'a un moyen de lister tous les users qui ont accès à un projet via la CLI ?

09/05/2026 à 00:23
pdevaux
Membre
Avatar de pdevaux
pdevaux
Membre

L'héritage des groupes est vraiment une purge sur GitLab, merci pour la précision, j'avais pas capté que c'était pour ça que j'avais pas la main.

08/05/2026 à 18:09
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Si tu es admin de l'instance, oui, tu peux faire un Block utilisateur dans la console admin.

Ça coupe tout accès sans supprimer le compte.

08/05/2026 à 13:22
wjoubert
Membre Actif
Avatar de wjoubert
wjoubert
Membre Actif

C'est possible de bloquer un user sans le supprimer ? Juste le suspendre ?

08/05/2026 à 05:53
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Oui, comme précisé, l'historique est conservé. Le nom reste, mais le lien vers le profil GitLab disparaît et devient inactif.

07/05/2026 à 22:22
gregoire-robert
Membre Actif
Avatar de gregoire-robert
gregoire-robert
Membre Actif

Les commits de l'utilisateur supprimé restent visibles avec son nom ?

07/05/2026 à 17:44
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Si le projet est dans un sous-groupe, ton id_projet doit être encodé en URL si tu utilises le path complet, ou juste l'ID numérique.

Essaie de récupérer l'ID numérique via GET /projects avant de lancer le delete.

07/05/2026 à 11:10
ajulien
Membre
Avatar de ajulien
ajulien
Membre

Le curl ne passe pas, j'ai une erreur 404. Le projet est dans un sous-groupe, ça change quelque chose ?

07/05/2026 à 03:48
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Oui, c'est même conseillé si tu as des centaines d'invités à purger.

import requests

# Petit script pour iterer sur une liste d'ids
for user_id in user_list:
    requests.delete(f"https://gitlab.com/api/v4/projects/{proj_id}/members/{user_id}", headers={"PRIVATE-TOKEN": token})
06/05/2026 à 22:29

Est-ce qu'on peut faire ça en masse via un fichier csv et un script python ?

06/05/2026 à 16:50
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Bien vu @6. Les deploy keys sont attachées au projet, pas à l'user. Il faut faire le ménage manuellement dans Settings > Repository > Deploy keys.

06/05/2026 à 09:00
qpascal
Membre
Avatar de qpascal
qpascal
Membre

Merci pour l'article. Par contre, attention aux deploy keys, elles restent actives même après avoir viré l'user qui les a créées.

06/05/2026 à 02:03
bruneau-claude
Membre Actif
Avatar de bruneau-claude
bruneau-claude
Membre Actif

T'as vérifié si t'es pas Owner du groupe ? Maintainer ne suffit pas toujours pour gérer les membres de haut niveau.

05/05/2026 à 21:08

Je n'arrive pas à supprimer un groupe parent, il me dit 403 Forbidden alors que je suis Maintainer. Une idée ?

05/05/2026 à 14:46
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Non, c'est une très mauvaise surprise. Supprimer l'accès au projet ne révoque pas les Personal Access Tokens.

Il faut aller dans les settings de l'utilisateur concerné et révoquer les tokens un par un si tu veux être propre.

05/05/2026 à 07:45
teixeira-patricia
Membre Actif
Avatar de teixeira-patricia
teixeira-patricia
Membre Actif

Question bête : quand je supprime l'accès, est-ce que les tokens générés par l'utilisateur sont invalidés automatiquement ?

05/05/2026 à 01:36
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

Clairement. Oublie l'interface pour du volume. Utilise l'API GitLab avec un petit script shell.

Voici comment virer un user d'un projet via curl :

curl --request DELETE --header "PRIVATE-TOKEN: <ton_token>" "https://gitlab.example.com/api/v4/projects/<id_projet>/members/<id_user>"
04/05/2026 à 18:53
xleroy
Membre
Avatar de xleroy
xleroy
Membre

Ok, et pour automatiser ça via l'API, vous avez une idée ? Faire ça à la main pour 50 repos, c'est mort.

04/05/2026 à 11:09
ajdaini-hatim
Auteur Rédacteur Secouriste Actif
Avatar de ajdaini-hatim
ajdaini-hatim
Auteur Rédacteur Secouriste Actif

C'est normal. Relis la partie sur l'héritage des droits. Si le bouton est grisé, c'est que l'accès vient d'un groupe parent.

Tu dois monter dans la hiérarchie du groupe pour faire le ménage, tu ne peux pas le forcer au niveau du projet seul.

04/05/2026 à 03:28

Rejoindre la communauté

Recevoir les derniers articles gratuitement en créant un compte !

S'inscrire