I have a current DB driven application which has several methods for accessing data.
- Web Application
- Direct SQL Access users (I'm trying to remove these)
- Client Server application
- Batch inputs and outputs
I need to implement context based auditing as the current data auditing is not enough for retrospective identification of what processes caused the data changes.
I am currently thinking of hiding the data model behind XAPIs (Transactional APIs) and each action on the data model will have to supply some form of identifying associated action or reason for the data change which will be stored alongside the audited data itself.
Can anyone offer me a better method for achieving context based auditing that will cover all access into the database? Or even point out any obvious flaws in my current approach that I have missed?
Thanks in advance.