Hi everyone,
This long post has been due from my side, so here it is and my progress so far.
About this project in brief : Audit module has the goal of audit the activities we do in OpenMRS, it can be read, write, security or administrative activities. Suppose a patient admitted and here there can be many activities like many health providers or doctor do take care of patient they do update the health condition, they do read the patient health history, they do suggest the drugs, treatments, so here there are many read and write activities going on the EMR database . Like for write, we know the who did change when but we don’t know what was the previous value for that record and that’s where write auditing comes, and suppose many guys viewing the records of patient and we will also not able know who viewed the record , when viewed and what all data viewed and that’s where read auditing comes in .
Read Auditing : More on the read audit part. Example in a EMR like OpenMRS , sensitive clinical data is constantly accessed by multiple providers like who is viewing patient charts or it’s medical history. So this feature will intercept these data fetch actions to log exactly who accessed that records, when they accessed and the specific medical data viewed. And this also ensures we following the EMR privacy compliances.
Security Auditing: Apart from healthcare care data, we probably also want to know the security events like who login , when is that failed or is that a bad user who brute forcing the authentication, when the person changed or reset the password or a bad guy trying to brute forcing the password reset, when did the person logout and that’s where Security Auditing comes in .
Administrative action auditing : And we also want to know track the administrative action like when a admin has updated any module, or updated any global settings and that’s comes in Administrative Auditing .
So this is what our Audit Module provides us or I mean some features already there, some got shipped now, and some probably will get added till the end of this GSoC project.
And this whole story, what my part is to do or implement these things, again in
- Read Auditing( like who viewed what and when) [DONE]
- Security Auditing ( like login success/failed, password update) [IN_REVIEW]
- Administrative Auditing ( like admin activities)
- Create REST Endpoint to fetch all these audits
- And probably add the export audits to the file like CSV format.
