1Z0-052 · Question #184
In your production database, data manipulation language (DML) operations are executed on the SALES table. You have noticed some dubious values in the SALES table during the last few days. You are…
The correct answer is B. Implement value-based auditing. Value-based auditing uses DML triggers to capture both the old and new column values along with user context, which standard auditing and FGA cannot do.
Question
In your production database, data manipulation language (DML) operations are executed on the SALES table. You have noticed some dubious values in the SALES table during the last few days. You are able to track users, actions taken, and the time of the action for this particular period but the changes in data are not tracked. You decide to keep track of both the old data and new data in the table long with the user information. What action would you take to achieve this task?
Options
- AApply fine-grained auditing.
- BImplement value-based auditing.
- CImpose standard database auditing to audit object privileges.
- DImpose standard database auditing to audit SQL statements.
How the community answered
(57 responses)- A14% (8)
- B77% (44)
- C5% (3)
- D4% (2)
Why each option
Value-based auditing uses DML triggers to capture both the old and new column values along with user context, which standard auditing and FGA cannot do.
Fine-grained auditing (DBMS_FGA) records which rows a user accessed and what SQL was executed, but it does not capture the before and after column values of DML changes.
Value-based auditing is implemented by creating DML triggers (BEFORE or AFTER INSERT, UPDATE, DELETE) on the target table that reference the :OLD and :NEW pseudo-records to capture the previous and current data values. These triggers also capture user context information such as USER, SYSDATE, and SYS_CONTEXT values, storing all of this into a custom audit table - satisfying the requirement to track both old and new data along with the user.
Standard database auditing of object privileges records the fact that a privilege (such as INSERT or UPDATE) was used and by whom, but it does not capture the actual old or new data values involved in the change.
Standard database auditing of SQL statements records the SQL text and execution metadata, but does not store the specific column values that existed before and after the DML operation was performed.
Concept tested: Oracle value-based auditing with DML triggers for data change tracking
Source: https://docs.oracle.com/en/database/oracle/oracle-database/19/dbseg/introduction-to-auditing.html
Topics
Community Discussion
No community discussion yet for this question.