Le fughe di PHI avvengono nei tuoi log, non nel tuo database
Ogni team sanitario protegge il database. Molti meno proteggono i log, i report di errore, gli eventi di analytics e i prompt IA. È lì che avvengono davvero le fughe.
Chiedi a un team di ingegneria sanitaria come protegge le informazioni sanitarie dei pazienti e otterrai una risposta sicura sulla crittografia a riposo, crittografia in transito, RBAC sul database e un audit log su ogni query. Tutto corretto, e tutto protegge il posto da cui i PHI quasi mai trapelano davvero.
Le fughe avvengono nell'infrastruttura circostante. I log. Il servizio di error reporting. Gli eventi di analytics. I debug export del prodotto. I prompt IA. Il canale Slack dove gli ingegneri incollano frammenti di dati per chiedersi aiuto a vicenda.
È qui che i team di produzione vengono colti. Non al database; il database è ben difeso. Alle cuciture.
I cinque posti dove continuiamo a trovare PHI che non dovrebbe esserci
Nel corso degli anni, le stesse cinque categorie emergono in quasi ogni audit sanitario.
Log applicativi. Una riga di log come Updated patient 12345: { name: "...", dob: "..." } è innocua durante lo sviluppo ed è un evento di divulgazione HIPAA in produzione. I log vengono inviati ad aggregatori centralizzati con accesso più ampio del database. I log vengono archiviati. I log vengono interrogati da ingegneri che non hanno una ragione clinica per vedere i dati. Ogni "lasciami loggare questo per fare debug" è un incidente futuro.
Servizi di error reporting. Sentry, Rollbar e strumenti simili catturano stack trace con le variabili locali che erano attive al momento del crash. Se una funzione stava elaborando un record di paziente quando ha lanciato un'eccezione, quel record è ora nello strumento di errore. Lo strumento di errore è ospitato, indicizzato e condiviso con l'intero team di ingegneria. Nessuna di queste proprietà è appropriata per i PHI.
Eventi di analytics. Un product manager ben intenzionato vuole sapere quali funzionalità vengono usate. L'implementazione cattura user-id e nome-evento, il che va bene, più un blob di contesto, che di solito non va bene. "Patient_search_performed" con la stringa di ricerca come proprietà dice cosa ha fatto l'utente e fa trapelare anche il nome del paziente al proprio fornitore di analytics.
Debug export e screenshot. Quando qualcosa va storto, ingegneri e staff di supporto esportano dati per investigare. L'export tende a essere un blob JSON, un CSV o uno screenshot. L'export viene allegato a un ticket Jira, lasciato in una chat o salvato sul desktop. Nessuno di quei posti ha i controlli di accesso del database di produzione.
Prompt IA e trace. La novità, e quella che coglie i team di sorpresa nel 2026. Un sistema copilot o RAG invia prompt a un modello esterno, e i prompt contengono contesto del paziente. Il provider del modello registra i prompt. Anche con un BAA in atto, la superficie di "ovunque siano stati i nostri prompt" è più ampia di quanto la maggior parte dei team realizzi, e le trace memorizzate per il debug spesso vivono in strumenti che non sono stati approvvigionati pensando ai PHI.
Cosa fare davvero
La correzione non è "essere più attenti." Essere più attenti è ciò che ogni team pensava di essere subito prima dell'incidente. Tre cose che funzionano davvero:
Oscurare alla fonte. Costruire un'unica utility che converte un oggetto paziente in una rappresentazione loggabile — con i PHI sostituiti da identificatori hashati stabili — e renderla l'unico modo sancito per loggare un paziente. Rendere difficile usare la rappresentazione grezza. Code review per le istruzioni di log che includono oggetti di dominio. L'obiettivo è rendere la divulgazione accidentale un atto che richiede sforzo.
Filtrare al confine. Qualunque strumento aggreghi log, errori, analytics, trace IA — mettere un filtro davanti che elimina i pattern PHI noti: date di nascita, nomi che corrispondono alla tabella dei pazienti, MRN. Il filtro perderà delle cose. Ridurrà comunque la superficie di molto.
Trattare la superficie IA come in-scope. Ogni prompt che il sistema invia a un LLM è potenzialmente PHI in transito verso una terza parte. Fare l'inventario dei prompt. Negoziare BAA dove possibile; instradare verso modelli self-hosted dove non è possibile. Loggare i prompt in uno store compatibile HIPAA, non in uno strumento di osservabilità ingegneristica generale. Trattare i dati delle trace come dati del paziente, perché è quello che sono.
La parte culturale più difficile
La parte più difficile non è tecnica. È far sentire il team a proprio agio nel segnalare quasi-incidenti senza paura di essere incolpati. L'ingegnere che nota "aspetta, il nostro ultimo deploy ha iniziato a loggare i nomi dei pazienti?" deve poterlo sollevare senza conseguenze oltre alla correzione. I team che puniscono la divulgazione ottengono meno divulgazioni segnalate, non meno divulgazioni che avvengono.
Il programma di compliance è il pavimento. La cultura è ciò che determina se il pavimento regge.
Vogliamo sentire le tue opinioni.
il nostro CTO Kyrylo Osadchuk risponderà entro 24 ore. Niente funnel di vendita.
Start a conversation
We want to hear your thoughts
Re: Le fughe di PHI avvengono nei tuoi log, non nel tuo database