Security alarms allow you to specify the events to be recorded in the security audit log for individual tables and databases. Using them, you can place triggers on important databases and tables to detect when users attempt to perform access operations that are not normally expected.
For tables, you can monitor the success or failure of any of the following events:
For databases, you can monitor the success or failure of these events:
Security alarm events are considered successful if the user succeeds in performing the specified type of access. If a particular query triggers a security alarm event, however, it does not necessarily mean that the query completed successfully. It simply means that the security access tests for the specified types of events (for example, select, delete, insert, and update) were passed.
Failure of a security alarm event means that the user attempted to perform the associated operation and failed for some security-related reason. For example, a user can fail to gain access to a table or a database because he or she lacks the required permissions. A query or database operation might fail for other reasons, unrelated to security, but these failures do not trigger the associated security alarm event.
Security alarms can be assigned to specific authorization identifiers (individual users or the public, and groups and roles) so that you can limit monitoring to certain users. You can also specify a database event to be raised when a security alarm is triggered. Database Event Grants describes the database event permissions that you need to raise an event.
In VDBA, security alarms are implemented using security alarm objects. Using the Security Alarm branch in the Database Object Manager window, you can:
For the detailed steps for performing these procedures, see the Procedures section of online help.
You can also accomplish these tasks using the create security_alarm, help security_alarm, and drop security_alarm SQL statements. For more information, see the SQL Reference Guide.
To implement a security alarm, you need to follow these basic steps:
Then, whenever access to the specified database or table triggers the alarm, a record is written into the audit log and the associated database event, if any is defined, is raised.
To define a security alarm for the addresses table for all delete, insert, and update attempts, follow these basic steps.
This example shows how to create a security alarm for the all_summary table, which is no longer being used. In this case, all successful accesses to the table are to be audited, to allow a decision as to its possible archiving and deletion.
In each case, the appropriate security alarm objects are created and can be displayed by expanding the various Security Alarms sub-branches.