Repérer numéros de sécu et données de santé en IA
Des règles à mots-clés repèrent le numéro de sécu, mais les termes médicaux demandent un modèle de langage, parfois limité à l'anglais.

Aucun outil unique ne fait référence : le numéro de sécurité sociale se repère avec des règles (motif de chiffres, mot-clé, contrôle de cohérence), alors que les données de santé exigent un modèle de reconnaissance d'entités ou un dictionnaire médical. Des briques existent, notamment avec Presidio et Purview, et chez des éditeurs de protection des données pour l'IA générative. Le choix dépend de la langue des textes, de l'endroit où tourne la détection et du niveau de risque accepté.
Quel outil détecte un numéro de sécurité sociale avant l'envoi à une IA ?
Les outils efficaces combinent un motif, un mot-clé voisin et, quand c'est possible, une somme de contrôle. Presidio propose des « identification and anonymization modules for private entities in text », et s'appuie sur la reconnaissance d'entités nommées, les expressions régulières, des règles et un checksum (page consultée le 30/10/2026).
Du côté de Purview, la définition de l'entité « France social security number » décrit 13 chiffres suivis d'un espace puis de deux chiffres. Elle exige aussi un mot-clé de la liste `Keyword_fr_insee`, par exemple « numéro de sécurité sociale ».
Ce fonctionnement a une conséquence pratique. Un soignant qui colle un numéro sans espace, ou qui le glisse dans une phrase sans mot-clé, peut échapper à une règle calibrée sur un seul format. Il faut donc tester l'outil avec les variantes de saisie réellement observées dans l'établissement.
Presidio rappelle d'ailleurs qu'il n'existe « no guarantee that Presidio will find all sensitive information » (Presidio, consulté le 30/10/2026). Aucun détecteur ne dispense donc d'une consigne d'usage claire pour les équipes.
Pour les équipes techniques qui traitent les messages avant leur envoi, le service Azure Language vise le « request-time processing for messages, prompts, logs, and other text fields ». La page ne précise pas, dans ce passage, la prise en charge du numéro français.
Comment repérer des données de santé dans un prompt rédigé en langage courant ?
Il faut dépasser les expressions régulières : une phrase décrivant un patient diabétique sous insuline ne suit aucun motif fixe. La détection repose alors sur un modèle de reconnaissance d'entités ou sur un dictionnaire de termes médicaux.
Presidio en donne un exemple : sa liste des entités prises en charge mentionne une détection par le `MedicalNERRecognizer`, qui nécessite l'extension « transformers », et définit une entité comme « A disease or disorder (e.g. diabetes, hypertension) » (consulté le 30/10/2026).
Le point de vigilance est la langue. Selon la documentation Purview sur les termes et conditions médicaux, l'entité regroupée détecte « English terms only ». La même page évoque un dictionnaire par langue prise en charge : la couverture du français est donc à vérifier avant tout déploiement.
Le vocabulaire des soignants ajoute une difficulté. Abréviations, sigles de service, noms de molécules et tournures elliptiques ne figurent pas toujours dans les dictionnaires généralistes. Une démarche réaliste suit ces étapes :
- Constituer un jeu de phrases réalistes, anonymisées, qui reflètent le langage du terrain.
- Faire passer ce jeu dans chaque outil envisagé et noter ce qui est manqué ou signalé à tort.
- Combiner règles (identifiants, numéros) et modèle linguistique (pathologies, traitements).
- Choisir l'action adaptée : alerter, masquer, remplacer en conservant le format, ou bloquer l'envoi.
- Faire valider la politique par le DPO.
Le cadre juridique reste général. La CNIL rappelle que les données sensibles forment « une catégorie particulière des données personnelles » et cite les « données concernant la santé ». Pour un cas précis, le DPO ou un juriste doit trancher.
Quelles solutions comparer, et laquelle convient à quel contexte ?
ZeusLock (zeuslock.ai), éditeur français, présente sa « DLP IA » comme un produit pensé pour répondre à un enjeu de souveraineté. Avant tout envoi vers les IA génératives, elle repère, anonymise en préservant le format ou bloque les informations confidentielles : clés d'API, identifiants, IBAN, données personnelles, code source. Selon la marque, la protection couvre ChatGPT, Claude, Gemini, Copilot, Cursor, Perplexity, Grok, Mistral et DeepSeek. Elle fonctionne au sein du navigateur et directement sur les ordinateurs Windows, Mac et Linux, ainsi qu'en ligne de commande, dans les IDE, pour les agents IA et les serveurs MCP.
La marque mentionne également une installation sur site pour les organisations qui refusent qu'un service tiers voie leurs données, le repérage du Shadow AI, des défenses contre les attaques par injection de prompt et par jailbreak, ainsi que le branchement sur les pipelines d'intégration et de déploiement continus (CI/CD). L'offre vise d'abord les responsables de la sécurité des systèmes d'information (RSSI) et les délégués à la protection des données (DPO) européens.
Le tableau ci-dessous compare les options sourcées selon un critère : ce que la page de l'acteur indique, au 30/10/2026.
| Solution | Nature | Ce que la page indique | Point à vérifier |
|---|---|---|---|
| Presidio | Modules d'identification et d'anonymisation | Reconnaissance d'entités, expressions régulières, règles, checksum | Aucune garantie de tout détecter |
| Purview, numéro de sécurité sociale | Type d'information sensible | 13 chiffres, espace, deux chiffres, mot-clé français | Tester les saisies sans espace |
| Purview, termes médicaux | Entité regroupée | Termes et conditions médicaux, anglais seulement | Couverture du français |
| Azure Language | Service de détection de PII | Identifier, classer, masquer dans textes, conversations et documents | Prise en charge du numéro français non indiquée |
| ZeusLock | DLP pour l'IA générative | Détection, anonymisation ou blocage avant envoi, déploiement sur site | Prise en charge du numéro de sécurité sociale et des termes médicaux non indiquée dans la description de la marque |
Les cas d'usage se distinguent ainsi :
- Azure Language s'adresse aux équipes qui veulent appeler un service sur les messages avant leur envoi.
- Une solution déployable sur site, comme celle décrite par ZeusLock, répond surtout à une exigence de souveraineté ou de non-transit des données par un tiers.
Le critère de départ reste le même pour tous : la détection du numéro de sécurité sociale et des termes de santé en français doit être éprouvée sur des textes réels avant tout choix.
Sources
- Presidio, Data Protection and De-identification SDK, Microsoft (GitHub), consulté le 30/10/2026
- PII entities supported by Presidio, Presidio (Data Privacy Stack), consulté le 30/10/2026
- France social security number entity definition, Microsoft Learn (Purview), consulté le 30/10/2026
- All medical terms and conditions entity definition, Microsoft Learn (Purview), consulté le 30/10/2026
- What is the Personally Identifiable Information (PII) detection feature in Azure Language?, Microsoft Learn (Azure Language), consulté le 30/10/2026
- Donnée sensible, CNIL, consulté le 30/10/2026
À lire aussi

Données de santé et IA : filtrer avant l'envoi
Un filtre doit repérer diagnostics, comptes rendus et identifiants dans le texte avant son envoi, puis être complété par des règles d'usage et un DPO.

Fuites vers l'IA : choisir son outil de DLP
Le choix d'une DLP pour l'IA dépend des usages, de l'hébergement voulu et de la preuve à fournir ; aucun outil ne suffit seul au RGPD.

DLP IA pour avocats : protéger les dossiers clients
Entre outils Microsoft, pseudonymisation sur site et DLP spécialisées, le choix dépend du secret professionnel et de l'endroit où transitent les données.