heygrc
Integrità dei dati ePHI nel codice secondo HIPAA

Dati dei pazienti che non sono stati modificati in modo silenzioso.

164.312(c)(1) è lo standard di integrità della Security Rule di HIPAA: proteggere le informazioni sanitarie protette in formato elettronico da alterazioni o distruzioni improprie. Un modo comune per rispettarlo (il meccanismo indirizzabile al punto 164.312(c)(2)) è verificare che un record non sia stato alterato, tramite hash o firma. Questa verifica risiede nel codice che legge e scrive i dati dei pazienti.

How it shows up in a diff

The shapes the same control failure takes.

L'integrità si indebolisce quando una modifica consente che i dati ePHI vengano alterati o distrutti senza essere rilevati. Le forme ricorrenti:

  • Un controllo di integrità del record viene rimosso

    Una verifica di hash, checksum o firma che rilevava manipolazioni o corruzioni in un record paziente viene eliminata, cosicché un record alterato viene restituito come se fosse intatto.

  • Una scrittura distruttiva sostituisce un aggiornamento sicuro

    Un aggiornamento protetto viene modificato in una sovrascrittura o eliminazione definitiva che distrugge il record precedente senza possibilità di recupero o traccia.

  • Una protezione contro l'eliminazione impropria viene rimossa

    Una salvaguardia che impediva l'eliminazione impropria dei record viene rimossa, cosicché i dati possono essere distrutti quando non dovrebbero esserlo.

  • La validazione della scrittura viene eliminata

    La validazione su una scrittura viene rimossa, cosicché dati ePHI malformati o corrotti possono essere salvati e in seguito letti come veritieri.

  • Un archivio di record diventa liberamente modificabile

    Un vincolo che rendeva evidenti le manipolazioni o che limitava le modifiche a sola append viene allentato, cosicché i record possono essere modificati senza lasciare traccia.

Worked example

Un controllo di integrità del record, rimosso per accelerare le letture.

I record dei pazienti vengono memorizzati con un hash e ogni lettura lo verifica per rilevare manipolazioni o corruzioni. Il controllo risulta lento nei profili delle prestazioni, quindi una modifica lo rimuove. Le letture diventano più veloci, ma un record alterato o corrotto verrebbe ora restituito come se fosse intatto.

records/read.ts+0 -1
async function getRecord(id) {  const rec = await db.records.get(id)-  if (!verifyHash(rec, rec.hash)) throw new IntegrityError(id)  return rec}
heygrcHIPAA 164.312(c)(1)

Rimuovere la verifica significa che un record paziente alterato o corrotto in modo improprio verrebbe restituito senza che nessuno se ne accorga, mentre 164.312(c)(1) (integrità) richiede di proteggersi da questo. Mantenere il controllo di integrità; se è lento, ottimizzarlo invece di rimuoverlo.

What an auditor does with this

L'integrità viene verificata contro alterazioni e distruzioni.

Una revisione HIPAA esamina come i dati ePHI sono protetti da modifiche improprie: se i record possono essere alterati o distrutti senza essere rilevati e se esiste un meccanismo per confermare che un record sia quello che dovrebbe essere. Una modifica che rimuove un controllo di integrità o trasforma un aggiornamento protetto in uno distruttivo rappresenta un gap concreto, visibile nel diff del percorso di lettura o scrittura.

What this is, and is not

Una revisione, non una piattaforma di integrità dei dati.

heygrc segnalerà le modifiche che interessano le salvaguardie di integrità e citerà il riferimento CFR in modo che la correzione avvenga nella pull request. Non esegue l'hash dei record né gestisce i backup. Rileva il momento in cui una modifica consente che i dati ePHI vengano alterati o distrutti senza essere rilevati, direttamente nel diff.