@eqs/auth : provision « jit » sans rôle par défaut, et identités Entra indexées sur oid sans chemin depuis sub #139

Closed
opened 2026-10-12 09:28:50 +00:00 by nicolas-fryder · 0 comments

Deux constats du rétrofit des comptes d'ATLAS (D-056, #80).

1. provision: 'jit' crée un compte sans rôle

Commande : première connexion Entra d'une personne dont aucun groupe n'est dans roles.yaml/entra.groupes, avec provision: 'jit'.
Attendu : un rôle par défaut déclarable (ATLAS : lecture — tout le monde dans l'agence consulte la carte).
Observé : rôle vide ; la personne entre et n'a accès à rien, sans message.
Proposition : entra.roleParDefaut dans roles.yaml, validé par validerCatalogue.

2. Pas de reprise des identités Entra existantes

Observé : le fournisseur Microsoft de better-auth indexe account.accountId sur oid. ATLAS stockait sub (OIDC maison) : la migration ne peut pas recopier les identités, et le cahier §8 bis ne le dit pas.
Contournement : la première connexion Entra relie par adresse (accountLinking, fournisseur de confiance).
Proposition : le dire au §8 bis, avec la conséquence (relier par adresse = faire confiance à l'adresse Entra), et que la conformité le vérifie sur un locataire nommé.

Versions

@eqs/auth 0.19.0 / 0.20.0, better-auth 1.7.7.

Ouvert depuis le rejeu du rétrofit d'ATLAS (étape 5a).

Deux constats du rétrofit des comptes d'ATLAS (D-056, #80). ## 1. `provision: 'jit'` crée un compte sans rôle **Commande** : première connexion Entra d'une personne dont aucun groupe n'est dans `roles.yaml/entra.groupes`, avec `provision: 'jit'`. **Attendu** : un rôle par défaut déclarable (ATLAS : `lecture` — tout le monde dans l'agence consulte la carte). **Observé** : rôle vide ; la personne entre et n'a accès à rien, sans message. **Proposition** : `entra.roleParDefaut` dans `roles.yaml`, validé par `validerCatalogue`. ## 2. Pas de reprise des identités Entra existantes **Observé** : le fournisseur Microsoft de better-auth indexe `account.accountId` sur `oid`. ATLAS stockait `sub` (OIDC maison) : la migration ne peut pas recopier les identités, et le cahier §8 bis ne le dit pas. **Contournement** : la première connexion Entra relie par adresse (`accountLinking`, fournisseur de confiance). **Proposition** : le dire au §8 bis, avec la conséquence (relier par adresse = faire confiance à l'adresse Entra), et que la conformité le vérifie sur un locataire nommé. ## Versions @eqs/auth 0.19.0 / 0.20.0, better-auth 1.7.7. *Ouvert depuis le rejeu du rétrofit d'ATLAS (étape 5a).*
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Infrastructure/eqs-platform#139
No description provided.