Travaux antérieurs
Projet client
Système de gestion des patients
Un cabinet médical, avec une équipe pluridisciplinaire
Un logiciel qui permet aux médecins de gérer leurs patients et leurs dossiers médicaux, construit en équipe. J'ai travaillé sur le front end et sur le contrat d'API, avec un contrôle d'accès par rôle qui décide qui voit quoi.
- Réalisé avec
- Angular côté interface, Node.js derrière, MongoDB pour le stockage, et l'API documentée avec Swagger.
- Ce qui a été testé
- Contrôle d'accès par rôle sur les dossiers patients, avec l'API documentée dans Swagger pour que l'équipe puisse travailler sur un contrat commun.
Comment tout s'articule
- Médecins et personnel navigateur
- Interface Angular
- Contrat d'API Node.js, Swagger
- Contrôle du rôle appliqué sur le serveur
- Dossiers MongoDB
Le problème
Un cabinet avait besoin de l’enregistrement des patients et des dossiers médicaux dans un seul système, avec une règle stricte : tous ceux qui peuvent se connecter ne doivent pas tout voir. Avec des dossiers médicaux, le contrôle d’accès est la première exigence, pas une amélioration pour plus tard.
Ce que j’ai construit
J’ai travaillé dans une équipe pluridisciplinaire sur l’interface et sur la forme de l’API. Les patients, les pathologies et les dossiers se gèrent dans un front end Angular responsive ; l’accès dépend du rôle, si bien que ce qu’un utilisateur peut récupérer est décidé par le serveur, pas simplement masqué par l’interface.
Documenter l’API dans Swagger a permis à l’équipe de travailler en parallèle sans valider chaque champ en réunion.
Choix difficiles
Un contrôle d’accès appliqué côté serveur. La solution rapide consiste à cacher les boutons qu’un utilisateur ne devrait pas avoir et à s’arrêter là. Pour des dossiers médicaux, ce n’est pas un contrôle d’accès, c’est un déguisement, et le travail supplémentaire pour l’appliquer là où se trouvent les données en valait la peine.
Ce que je ferais ensuite
Un journal d’audit. Savoir qui a consulté quel dossier, et quand, c’est ce qu’on finira par demander au cabinet, et c’est impossible à reconstituer après coup.