Aucune liste d'administrateurs, et c'est la meilleure idée de l'outil
En bref
- Une liste d'administrateurs tenue à la main peut diverger des droits réels.
- Ici, l'application se pose une seule question au démarrage : est-ce que je vois des dossiers créés par d'autres personnes que moi ?
- Le rôle est déduit des droits réels : une seule source de vérité, zéro table à maintenir, aucune divergence possible.
Un groupe international, un canal de signalement, deux populations : l'équipe centrale qui traite les dossiers, et les déclarants qui en déposent. L'application doit savoir qui est qui. La réponse habituelle, c'est une liste d'administrateurs, et je n'en ai pas fait.
Le problème des listes
Une liste d'administrateurs, c'est simple au départ. Quelques noms dans une table. L'application lit la table et affiche les bons écrans.
Puis la vie de l'équipe continue. Quelqu'un la rejoint. Quelqu'un la quitte. Les droits d'accès sont mis à jour d'un côté, la liste de l'autre. Parfois par deux personnes différentes. Parfois pas du tout.
Le jour où les deux ne disent plus la même chose, l'application se trompe. Elle affiche des écrans de traitement à quelqu'un qui n'a plus les droits. Ou elle les cache à quelqu'un qui devrait les voir.
Une liste de plus, c'est une vérité de plus. Et deux vérités finissent par se contredire.
Une seule question au démarrage
Dans cet outil, il n'y a pas de liste. Au démarrage, l'application se pose une seule question.
« Est-ce que je vois des dossiers créés par d'autres personnes que moi ? »
Si oui, l'utilisateur fait partie de l'équipe centrale. Les écrans de traitement s'activent.
Sinon, c'est un déclarant. Il voit son espace, et seulement son espace.
Pourquoi ça marche ? Parce que la plateforme sait déjà qui a le droit de lire quoi. Un déclarant ne lit que ses propres signalements. L'équipe centrale lit tout. L'application n'a pas besoin qu'on lui dise qui est qui : elle le constate.
Le rôle est déduit des droits réels
C'est le cœur de l'idée. Le rôle n'est pas déclaré dans une table. Il est déduit des droits réels.
Trois conséquences.
- Une seule source de vérité. Les droits d'accès. Rien d'autre.
- Zéro table à maintenir. Quand quelqu'un rejoint ou quitte l'équipe centrale, on change ses droits. L'application suit d'elle-même.
- Aucune divergence possible. L'écran affiché et les données lisibles viennent de la même source. Ils ne peuvent pas se contredire.
Pour être honnête, ce n'est pas la solution qu'on attend. On s'attend à un écran d'administration, une liste, des cases à cocher. Ici, il n'y a rien de tout ça. Et c'est justement ce qui rend l'outil solide.
Pourquoi c'est la bonne idée en conformité
Dans un dispositif de signalement, la question « qui voit quoi ? » n'est pas un détail. C'est le cœur du sujet.
Avec une liste, la réponse dépend de deux choses qui doivent rester alignées : les droits, et la liste. Avec un rôle déduit des droits, la réponse ne dépend que d'une chose. Quand on vous demande qui a accès aux dossiers, vous regardez les droits. L'outil ne peut pas dire autre chose.
Ce choix va de pair avec un autre : la confidentialité est portée par les permissions de la plateforme, au niveau de la donnée. L'interface ne protège rien. Elle se contente d'afficher ce que les droits autorisent.
Ce que ça change pour vous
Regardez vos outils internes. Combien tiennent leur propre liste de « qui a le droit de faire quoi » ? Une table des valideurs, un onglet des administrateurs, une liste de responsables ?
Chacune de ces listes risque de doubler une information qui existe déjà, par exemple dans les droits d'accès. Et chacune peut diverger.
- Pour chaque liste, demandez qui la met à jour, et quand.
- Demandez si l'information existe déjà dans les droits d'accès.
- Si oui, demandez à votre équipe technique si le rôle peut en être déduit, au lieu d'être tenu à la main.
Quand la réponse est oui, la liste peut disparaître. Avec elle, disparaissent les oublis, les écarts et la question « qui a mis à jour la liste ? ».
Le même outil applique cette idée à la sécurité : masquer un bouton ne protège pas la donnée. Il calcule aussi le statut de chaque dossier au lieu de le faire saisir : le statut qui se calcule. Le projet complet est dans la réalisation Un canal de signalement qui surveille ses propres délais. La démarche est décrite sur la page Une application à la place de l'Excel.
Le meilleur référentiel est celui qu'on n'a pas besoin de tenir à jour.
Vos questions
Elle le déduit des droits réels. Au démarrage, elle regarde si l'utilisateur voit des dossiers créés par d'autres personnes que lui. Si oui, il fait partie de l'équipe centrale.
Parce qu'une liste est une deuxième source de vérité, qu'il faut tenir à jour. Déduire le rôle des droits supprime la table à maintenir et toute divergence possible.