Аудит данных является обязательным внутренним контролем для многих бизнес-систем (причины см. В Sarbanes Oxley). Он должен быть на уровне базы данных, чтобы гарантировать, что все изменения регистрируются, особенно неавторизованные .
Даже с помощью справочных таблиц несанкционированное изменение может привести к хаосу в вашей системе, поэтому важно знать, кто и когда сделал это изменение. Когда это особенно важно, потому что это помогает dbas знать, как далеко назад можно получить резервную копию, чтобы восстановить информацию, случайно или злонамеренно измененную.
Нам нравится думать, что все наши сотрудники заслуживают доверия, но многие кражи личных данных и злонамеренные изменения, направленные на уничтожение данных компании, происходят из внутренних источников (именно поэтому опасно иметь много недовольных сотрудников), как и почти все мошенничества. Однако большинство программистов, похоже, считают, что им нужно защищаться только от внешних угроз.
Конечно, у вас все еще будет несколько человек, которые могут вносить несанкционированные изменения, вы не можете помешать системным администраторам делать это. Но, по крайней мере, с помощью аудита вы можете ограничить вероятность повреждения данных (и быть особенно осторожным при найме dbas и не предоставлять никаких прав администратора никому на ваших серверах баз данных).