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)
Guest—Aucun 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