Search Results fnd_selaudit_log




Overview

FND_SELAUDIT_LOG is a standalone audit-trail table owned by the APPLSYS schema within the FND – Application Object Library product in Oracle E-Business Suite 12.1.1 and 12.2.2. It records audit events generated through Oracle database-level auditing mechanisms—specifically, fine-grained auditing (FGA) policies implemented via the DBMS_FGA package—rather than through the EBS AuditTrail (sign-on audit) or Audit Hierarchy (row-level audit) features. While the object name suggests a connection to sign-on auditing, the documented column list makes clear that the table logs SQL statements captured against an audit policy, storing the offending SQL text, the target object and schema, and the audit policy name that triggered the event.

Under a heuristic Data Vault classification mined from its foreign-key structure, FND_SELAUDIT_LOG is treated as a standalone object; that is, it does not participate in a hub-and-satellite chain with other mined tables. From a modeling perspective, it is better characterized as an event or fact-like audit log, keyed by its own surrogate column, with LOGIN_ID serving as a degenerate link to the session context in FND_LOGINS. Because the relationship is unidirectional and non-enforced elsewhere, the object is isolated in the mined relationship graph.

Key Information Stored

The table contains eleven documented columns, of which the following are most significant. The surrogate identity column is LOGIN_ID, which also carries the documented foreign key to FND_LOGINS; in the EBS convention this column is populated from the FND_LOGINS sequence and provides the unique handle for each audit record. It should not be confused with the FND_LOGINS primary key of the same name—it is the value inherited into the audit row.

  • AUDIT_TIMESTAMP – the date/time at which the audited SQL statement executed; the primary driver for chronological reporting.
  • AUDIT_SQL – the full SQL text captured by the FGA policy, the core payload of the audit record.
  • AUDIT_POLICY_NAME – the name of the fine-grained audit policy that fired.
  • AUDIT_OBJECT_NAME – the schema object against which the statement was issued.
  • AUDIT_OBJECT_SCHEMA – the owning schema of that object.
  • USER_NAME – the database user associated with the audited action.
  • CONC_LOGIN_ID – the concurrent-manager login identifier, correlating the audit row to an EBS concurrent session.
  • CONC_APPL_ID, CONC_PROGRAM_ID, CONC_REQUEST_ID – the concurrent program application, program definition, and request identifiers, allowing the SQL to be tied to a specific concurrent request.

The documented metadata does not identify any unique index other than the primary key, and no business-key column set is exposed, so LOGIN_ID remains the only documented candidate key.

Common Use Cases and Queries

Typical uses include forensic review of statements executed against monitored tables, correlation of suspicious SQL to a concurrent request or responsibility, and periodic reporting of policy hits. A baseline query joins to FND_LOGINS on LOGIN_ID and filters by policy and time:

  • SELECT a.audit_timestamp, a.user_name, a.audit_policy_name, a.audit_object_schema, a.audit_object_name, a.audit_sql FROM applsys.fnd_selaudit_log a WHERE a.audit_policy_name = :policy AND a.audit_timestamp >= :from_date ORDER BY a.audit_timestamp DESC;
  • Correlation to concurrent processing: SELECT conc_request_id, conc_program_id, audit_timestamp FROM applsys.fnd_selaudit_log WHERE conc_request_id IS NOT NULL;
  • Frequency analysis: group by AUDIT_OBJECT_NAME and AUDIT_POLICY_NAME to identify the most frequently audited objects.

Because AUDIT_SQL may be a CLOB, reporting tools should handle large text carefully, and purge/archival strategies should be applied to control growth.

Related Objects

  • FND_LOGINS – the documented parent of the LOGIN_ID foreign key; supplies session and user context (join on FND_SELAUDIT_LOG.LOGIN_ID = FND_LOGINS.LOGIN_ID).
  • FND_CONCURRENT_REQUESTS – referenced indirectly through CONC_REQUEST_ID for request-level attribution.
  • FND_CONCURRENT_PROGRAMS – referenced indirectly through CONC_PROGRAM_ID.
  • FND_APPLICATION – referenced indirectly through CONC_APPL_ID.
  • DBMS_FGA – the PL/SQL package that creates and manages the policies populating this table.
  • DBA_FGA_AUDIT_TRAIL / DBA_AUDIT_TRAIL – dictionary views that mirror FGA events and assist in reconciliation.
  • FND_AUDIT_TABLES / FND_AUDIT_COLUMNS – the EBS Audit Hierarchy configuration objects, useful context when distinguishing FGA audit from EBS audit trail.