?
Solved

Auditing DBA activity in Oracle

Posted on 2001-07-23
6
Medium Priority
?
1,481 Views
Last Modified: 2008-01-16
I am currently trying to find a way of auditing DBA activity but my investigations have shown that it is not possible to create audit records for activity by the user 'SYS' - DBA within Oracle 8i. Do you know of any way of doing this? I have looked into using a 3rd party tool but have been unable to find anything of any help as yet.
If you know of any way of auditing DBA activity, either within Oracle itself or through the use of a third party tool, your help would be much appreciated.
Thankyou

Fiona Campbell
0
Comment
Question by:fionacampbell
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
6 Comments
 
LVL 3

Expert Comment

by:myerpz
ID: 6308741
Perhaps you could try switching on Session Auditing, then using the session info. connected to the view which shows which users have got DBA privileges ?

select os_username      "OS User",
       username,
       returncode,
       count(*)         "No. of Logons"
from   sys.dba_audit_session
where  username in
      (
       select grantee
       from   dba_role_privs
       where  granted_role = 'DBA'
      )
group by os_username, username, returncode
/


Sorry if I'm preaching to the converted, but you will need to have had the line
     audit_trail = true
in your init.ora file at database startup time
and then in SQL*Plus, you'll need to execute the command
     AUDIT BY SESSION;

and then session auditing will be switched on.


Hope this helps
0
 
LVL 2

Expert Comment

by:jbever
ID: 6308860
have you tried the new archive mining options?
j.
0
 
LVL 1

Expert Comment

by:edice
ID: 6308980
We use a parameter in the INIT.ORA configuration file.
For Oracle 8.0.5, I believe we used this:

Parameter: AUDIT_TRAIL = DB

This will load DBA actions into the DBA_AUDIT_TRAIL view
              (aka SYS.AUD$ table)

Ed
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 1

Accepted Solution

by:
edice earned 200 total points
ID: 6380409
Did it work?
Get what you need?

Ed
0
 

Author Comment

by:fionacampbell
ID: 6383184
i passed your answer on to my boss and he seemed very happy with it.
Cheers
0
 
LVL 1

Expert Comment

by:edice
ID: 6394671
Glad I could help.

Thanks,
Ed
0

Featured Post

NFR key for Veeam Backup for Microsoft Office 365

Veeam is happy to provide a free NFR license (for 1 year, up to 10 users). This license allows for the non‑production use of Veeam Backup for Microsoft Office 365 in your home lab without any feature limitations.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Truncate is a DDL Command where as Delete is a DML Command. Both will delete data from table, but what is the difference between these below statements truncate table <table_name> ?? delete from <table_name> ?? The first command cannot be …
Working with Network Access Control Lists in Oracle 11g (part 2) Part 1: http://www.e-e.com/A_8429.html Previously, I introduced the basics of network ACL's including how to create, delete and modify entries to allow and deny access.  For many…
This video shows setup options and the basic steps and syntax for duplicating (cloning) a database from one instance to another. Examples are given for duplicating to the same machine and to different machines
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.
Suggested Courses

762 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question