Skip to content

feat(server-nestjs): add Sécurité Plateforme admin role - #2793

Merged
shikanime merged 1 commit into
mainfrom
feat/security-admin-role
Sep 30, 2026
Merged

shikanime merged 1 commit into
mainfrom
feat/security-admin-role

Conversation

@shikanime

@shikanime shikanime commented Sep 29, 2026 •

Copy link
Copy Markdown
Member

Issues liées

Refs #2792


Quel est le comportement actuel ?

Le système de rôles admin ne comporte pas de rôle « Sécurité » adossé au groupe Keycloak /console/security. L'ADR-014 définit pourtant /console/admin, /console/readonly et /console/security comme les seuls groupes Keycloak d'administration plateforme, et tous les modules de la console (GitLab auditor, Argo CD security, Nexus read, Registry guest, SonarQube security) ciblent déjà /console/security : le groupe plateforme n'est donc jamais créé, synchronisé ni résolvable depuis la base.

Quel est le nouveau comportement ?

Ajout d'une migration insérant le rôle admin système « Sécurité Plateforme » (type system:managed, position 3, permissions 1 = ADMIN_PERMS.LIST, groupe OIDC /console/security), en miroir du backfill projet 20260908155700_add_security_role.
L'insertion est idempotente (anti-jointure sur oidcGroup) : un rôle personnalisé déjà lié à /console/security est préservé, aucune ligne dupliquée en cas de ré-exécution.
Aucun autre changement de code dans cette PR : la réconciliation Keycloak crée le groupe de tout AdminRole porteur d'un oidcGroup non vide. La projection GitLab (résolution multi-chemins admin/auditor) est traitée séparément dans #2795.

Cette PR introduit-elle un breaking change ?

Non. La modification est purement additive (une ligne AdminRole en plus) ; les rôles existants conservent leurs permissions et leurs positions.

Autres informations

Validation : migration exécutée sur PostgreSQL 16 : backfill sur un état standard (une seule ligne ajoutée, rôles existants intacts), ré-exécution sans effet, préservation d'un rôle personnalisé déjà lié à /console/security. Aucun test unitaire impacté (migration de données seule).
Issue : #2792

@shikanime shikanime added the enhancement New feature or request label Sep 29, 2026
@shikanime shikanime self-assigned this Sep 29, 2026
@shikanime shikanime added this to the 9.27.0 milestone Sep 29, 2026
@github-actions github-actions Bot added the built label Sep 29, 2026
@shikanime
shikanime force-pushed the feat/security-admin-role branch from f29f92f to 950d189 Compare September 29, 2026 13:51
ADR-014 defines the only platform administration Keycloak groups as
/console/admin, /console/readonly and /console/security. The console ships
AdminRole rows for the first two only, while every plugin module (gitlab
auditor, argocd platform security, nexus read, registry guest, sonarqube
security) already targets '/console/security': the platform security group is
therefore never created, synced or resolvable from the database.

Add an idempotent migration inserting the 'Sécurité Plateforme' system:managed
role (position 3, permissions 1 = ADMIN_PERMS.LIST for the *-RO scope of
ADR-014, oidcGroup '/console/security'), mirroring the project-side Sécurité
backfill (20260908155700_add_security_role).

Refs #2792

Co-authored-by: Automata <automata@shikanime.studio>
Signed-off-by: William Phetsinorath <william.phetsinorath-open@interieur.gouv.fr>
Change-Id: Iac69ae508f7e6162d33c602aff4a1bfb6a6a6964
@shikanime
shikanime force-pushed the feat/security-admin-role branch from 950d189 to 2f10b36 Compare September 29, 2026 14:22
@shikanime
shikanime marked this pull request as ready for review September 29, 2026 14:40
@shikanime
shikanime requested a review from a team as a code owner September 29, 2026 14:40
@cloud-pi-native-sonarqube

Copy link
Copy Markdown

@shikanime
shikanime added this pull request to the merge queue Sep 30, 2026
Merged via the queue into main with commit e1e6074 Sep 30, 2026
62 checks passed
@shikanime
shikanime deleted the feat/security-admin-role branch September 30, 2026 12:55
@shikanime shikanime linked an issue Oct 8, 2026 that may be closed by this pull request
5 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

built enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

💡 [REQUEST] - Ajout du rôle Sécurité au système de rôles admin

3 participants