Auditing در محیط Active Data Guard

Auditing در محیط Active Data Guard

در زمان استفاده از Active Data Gaurd، ممکن است نیاز باشد تا نظارتی بر روی دسترسی کاربران به جداول صورت پذیرد. با توجه به read only بودن ADG، طبیعی است که امکان استفاده از $aud برای ثبت auditing امکان پذیر نخواهد بود و تنظیم پارامتر audit_trail به مقدار DB نمی تواند در این محیط موثر باشد.

برای انجام auditing در محیط ADG، می توان پارامتر audit_trail را برابر با یکی از مقادیر XML و یا OS قرار داد تا auditing در قالب فایل و در لایه سیستم عامل ذخیره شود البته مقدار این پارامتر در محیط بانک اصلی، در این زمینه موثر نخواهد بود:

–in ADG

SQL> alter system set audit_trail=XML,extended scope=spfile;

System altered.

با اجرای این دستور، مقدار پارامتر audit_file_dest، مسیر فایلهای xmlای را مشخص خواهد کرد.

SQL> show parameter audit_file_dest

NAME                                 TYPE        VALUE

———————————— ———– ——————————

audit_file_dest                      string      /u03/oracle/11g/admin/hrm/adump

قصد داریم هرگونه اجرای دستور select بر روی جدول person که حاوی اطلاعات مالی می باشد، را در محیط دیتاگارد مانیتور کنیم. به این جهت، باید ابتدا با اجرای دستور زیر در محیط بانک اصلی، auditing را بر روی این جدول فعال کنیم:

–in prim

SQL>  audit select on hr.person;

Audit succeeded.

با اجرای دستور audit، اگر کاربری چون usef اطلاعات جدول person را مشاهده کند، auditing در قالب فایل xmlای و در سطح سیستم عامل ذخیره خواهد شد:

SQL> conn usef/zxc

Connected.

SQL> select sal from hr.person where id=1;

       SAL

———-

        12

فایل xmlای را می توان در مسیری که برای پارامتر audit_file_dest تنظیم شده است، مشاهده نمود:

[[email protected] adump]$ ls -lh

-rw-r—–  1 oracle oinstall 964 Jan 21 09:49 hrmstb_ora_14299_20190121094924981805858377.xml

 

همچنین برای دسترسی به لاگ مربوط به Auditing در سطح بانک(ADG)، می توان به ویوی v$xml_audit_trail رجوع کرد:

SQL> select p.SESSION_ID,p.DB_USER,p.OS_HOST,p.TERMINAL,p.SQL_TEXT from v$xml_audit_trail p;

دیدگاهتان را بنویسید