Skip to content

Groupes Keycloak et Harbor

Ce document décrit comment la Console propage les groupes Keycloak en rôles Harbor (membres d'un projet Harbor), et quels droits en résultent.


Vue par rôle

Ce que chaque rôle Console obtient réellement dans Harbor. Les chemins /console/<rôle> sont réservés à l'administration plateforme et distincts des rôles projet /<slug>/console/<rôle> :

Rôle ConsoleGroupe KeycloakAccès obtenu dans Harbor
Admin plateforme/console/adminAdmin sur tous les projets Harbor
Administrateur projet/<slug>/console/adminDeveloper sur le projet (push/pull d'images)
DevOps/<slug>/console/devopsGuest sur le projet (pull/lecture, pas de push)
Développeur/<slug>/console/developerGuest sur le projet (pull/lecture)
Lecture seule/<slug>/console/readerGuest sur le projet (lecture)
Lecture seule/console/readerGuest sur tous les projets (lecture transverse)
Security/<slug>/console/securityGuest sur le projet (lecture)
Security/console/securityGuest sur tous les projets (lecture transverse)
GuestAucun accès

1. Authentification : Harbor via OIDC Keycloak

  • Harbor est fédéré au fournisseur OIDC Keycloak ; les utilisateurs se connectent sans mot de passe local.
  • La Console approvisionne, pour chaque projet, le projet Harbor et y ajoute les groupes Keycloak comme membres avec un rôle (Admin / Developer / Guest).

2. Groupes Keycloak et rôle Harbor résultant

La Console mappe chaque groupe OIDC vers un rôle Harbor et une portée (projet ou global).

Groupe KeycloakRôle HarborPortée
/console/adminAdminTous projets
/console/securityGuestTous projets (plateforme)
/console/readerGuestTous projets (plateforme)
/<slug>/console/adminDeveloperProjet <name>
/<slug>/console/devopsGuestProjet <name>
/<slug>/console/developerGuestProjet <name>
/<slug>/console/securityGuestProjet <name>
/<slug>/console/readerGuestProjet <name>

Le groupe racine du projet (/<slug>) est ajouté en tant que membre avec un niveau Limited Guest (lecture seule : pull d'images sans administration) pour l'ensemble de ses membres.


3. Points d'attention

  • Seul /<slug>/console/admin pousse des images. Tous les autres rôles projet (devops, developer, security, reader) sont en Guest (pull/lecture uniquement).
  • Groupes security/reader = Guest transverse. Ils sont ajoutés en Guest sur tous les projets Harbor (portée plateforme), ce qui donne une lecture globale des registres.

4. Qui gère quoi ?

ÉlémentGéré par
Identité OIDC / groupes KeycloakKeycloak
Projets Harbor, membres & rôlesConsole (automatique)
Application des droitsHarbor