
Bài th c hành s 12ự ố
STANDARD AUDITING
Tóm t t n i dung:ắ ộ
Khái quát v Database Auditingề
Kích ho t các l a ch n c a Standard Auditingạ ự ọ ủ
Statement Auditing
Privilege Auditing
Schema Object Auditing
I. Khái quát v Database Auditingề
1. Đnh nghĩa:ị
Auditing là ho t đng giám sát và ghi l i…. Đc d a trên các ho t đng cáạ ộ ạ ượ ự ạ ộ
nhân nh th c hi n câu l nh SQL, hay d a trên s k t h p các y u t bao g mư ự ệ ệ ự ự ế ợ ế ố ồ
tên, ng d ng, th i gian,…Các chính sách b o m t có th d n đn vi c audit khiứ ụ ờ ả ậ ể ẫ ế ệ
nh ng ph n t c th trong CSDL Oracle b truy c p hay thay th .ữ ầ ử ụ ể ị ậ ế
Auditing nhìn chung đc s d ng:ượ ử ụ
Cho phép gi i trình nh ng hành đng hi n t i tham gia vào m t schema,ả ữ ộ ệ ạ ộ
b ng, dòng riêng bi t, hay m t n i dung c th nào đó.ả ệ ộ ộ ụ ể
Ngăn c n user kh i hành đng không thích h p d a trên trách nhi m ph iả ỏ ộ ợ ự ệ ả
gi i trình đó.ả
Đi u tra các ho t đng đáng ng . Ví d , n u m t user không đc phépề ạ ộ ờ ụ ế ộ ượ
đang xóa d li u t m t b ng nào đó thì ng i qu n tr b o m t s ghi l iữ ệ ừ ộ ả ườ ả ị ả ậ ẽ ạ
t t c nh ng k t n i CDSL và t t c nh ng hành đng xóa các dòng t b ngấ ả ữ ế ố ấ ả ữ ộ ừ ả
trong CSDL dù thành công hay không thành công.
Chương Trình Đào Tạo Từ Xa KH & KT Máy Tính – Đại học Bách Khoa TP.HCM

Thông báo cho ng i giám sát r ng có user b t h p phát đang thao tác hayườ ằ ấ ợ
xóa d li u hay user có nhi u quy n h th ng h n s cho phép.ữ ệ ề ề ệ ố ơ ự
Giám sát và thu th p d li u v các ho t đng CSDL c th . Ví d ,ậ ữ ệ ề ạ ộ ụ ể ụ
ng i qu n tr CSDL có th thu th p th ng kê v thông tin các b ng đangườ ả ị ể ậ ố ề ả
đc update, hay bao nhiêu users cùng trung c p vào th i đi m c c đnh.ượ ậ ờ ể ự ỉ
2. Các ki u giám sát (Types of Auditing)ể
Oracle cho phép giám sát theo 2 l a ch n t p trung ho c m r ng.ự ọ ậ ặ ở ộ
S th c thi câu l nh thành công, ho c không thành công, ho c c hai.ự ự ệ ặ ặ ả
M i l n th c thi câu l nh trong m i session c a user, hay b t kì khi nàoỗ ầ ự ệ ỗ ủ ấ
mà câu l nh đc th c thi.ệ ượ ự
Ho t đng c a t t c các user hay c a m t user c th nào đó.ạ ộ ủ ấ ả ủ ộ ụ ể
Có b n ki u giám sát:ố ể
Statement auditing: chia thành hai nhóm
oCâu l nh DDL: Ví d ệ ụ AUDIT TABLE giám sát t t c các câu l nhấ ả ệ
CREATE và DROP TABLE.
oCâu l nh DML: Ví d ệ ụ AUDIT SELECT TABLE giám sát t t c câuấ ả
l nh ệSELECT trên b ng và trên viewả
Privilege auditing: Ki m tra vi c s d ng quy n h th ng, ví d ể ệ ử ụ ề ệ ố ụ AUDIT
CREATE TABLE. Privilege auditing đc chú tr ng h n statement auditing vìượ ọ ơ
nó ch ki m tra vi c s d ng m t s quy n nh t đnh. Có th đt privilegeỉ ể ệ ử ụ ộ ố ề ấ ị ể ặ
auditing giám sát nh ng user đc l a ch n hay giám sát m i user.ữ ượ ự ọ ọ
Schema object auditing: Ki m tra câu l nh c th trên đi t ng schemaể ệ ụ ể ố ượ
c th , ví d AUDIT SELECT ON employees. (R t đc chú tr ng). Schemaụ ể ụ ấ ượ ọ
object auditing luôn áp d ng cho t t c các user.ụ ấ ả
Fine-grained auditing: Ki m tra d li u truy xu t và các ho t đng d aể ữ ệ ấ ạ ộ ự
trên n i dung c a d li u đó. Ví d : S d ng DBMS_FGA, ng i qu n trộ ủ ữ ệ ụ ử ụ ườ ả ị
b o m t t o ra m t chính sách ki m tra trên m t b ng. N u b t kì dòng nàoả ậ ạ ộ ể ộ ả ế ấ
Chương Trình Đào Tạo Từ Xa KH & KT Máy Tính – Đại học Bách Khoa TP.HCM

tr v t câu l nh DML th a đi u ki n ki m tra thì m t m c v s ki nả ề ừ ệ ỏ ề ệ ể ộ ụ ề ự ệ
ki m tra s đc chèn vào trong audit trail.ể ẽ ượ
3. Audit Records và Audit Trails:
Nh ng thông tin đc audit s đc l u trong data dictionary table, g i làữ ượ ẽ ượ ư ọ
database audit trail, ho c l u trong operating system files, g i là ặ ư ọ operating
system audit trail.
B n ghi Audit (Audit trail records)ả
Ch a nh ng lo i thông tin khác nhau, ph thu c vào nh ng s ki n đcứ ữ ạ ụ ộ ữ ự ệ ượ
giám sát và t p các l a ch n giám sát. Thông tin sau đây đc bao g m trongậ ự ọ ượ ồ
m i b n ghi audit:ỗ ả
- Database user name (DATABASE USER)
- Operating system login user name (CLIENT USER)
- Instance number (không có trong Operation System…)
- Process identifier
- Session identifier
- Terminal identifier
- Name of the schema object accessed
- Operation performed or attempted (ACTION)
- Completion code of the operation
- Date & time stamp in UTC format ( không có trong Operation System Audit
Trail)
- System privileges used (PRIVILEGE)
Chú ý : Audit trail không l u thông tin v giá tr c a d li u dù nó liênư ề ị ủ ữ ệ
quan đn trong câu l nh đc giám sát. Ví d , giá tr d li u m i và giá tr dế ệ ượ ụ ị ữ ệ ớ ị ữ
li u cũ c a hàng đc update không đc l u l i khi câu l nh UPDATEệ ủ ượ ượ ư ạ ệ
đc giám sát. Tuy v y, đi v i ph ng pháp fine-grained auditing có khác.ượ ậ ố ớ ươ
Operating System Audit Trail
Chương Trình Đào Tạo Từ Xa KH & KT Máy Tính – Đại học Bách Khoa TP.HCM

Oracle cho phép b n ghi d u audit (audit trail records) đc tr c ti p ghiả ấ ượ ự ế
vào operating system audit trail n u h đi u hành t o m t audit trail s n choế ệ ề ạ ộ ẵ
Oracle. N u không thì b n audit s đc ghi vào file bên ngoài CSDL, v iế ả ẽ ượ ớ
đnh d ng t ng t nh các file d u tích Oracle (Oracle trace) khác.ị ạ ươ ự ư ấ
Oracle cho phép m t ho t đng nào đó mà luôn b giám sát đc ti p t c,ộ ạ ộ ị ượ ế ụ
th m chí khi mà operating system audit trail ( hay file h đi u hành ch a b nậ ệ ề ứ ả
ghi audit) không đc phép ghi l i b n ghi audit do nó b đy. Tuy nhiên, chúượ ạ ả ị ầ
ý r ng c u hình auditing đ s d ng ằ ấ ể ử ụ database audit trail lo i b đc đi mạ ỏ ượ ể
y u này, b i vì h CSDL Oracle ngăn ng a s ki n đc audit kh i x y raế ở ệ ừ ự ệ ượ ỏ ả
n u audit trail không th ti p nh n b n ghi database audit cho câu l nh đó.ế ể ế ậ ả ệ
II. Qu nả lí Standard Audit Trail
1. Kích ho t Standard Auditingạ
B t c database user h p pháp nào cũng có th thi t l p l a ch n giámấ ứ ợ ể ế ậ ự ọ
sát đi v i câu l nh, quy n và đi t ng b t c khi nào. Tuy nhiên h CSDLố ớ ệ ề ố ượ ấ ứ ệ
Oracle không sinh thông tin audit cho Standart database audit trail tr khi CSDLừ
giám sát đc kích ho t. Ng i qu n tr b o m t th ng có trách nhi m đi uượ ạ ườ ả ị ả ậ ườ ệ ề
khi n vi c giám sát này.ể ệ
Auditing là ch c năng m c đnh trong Oracle server. Các tham s kh iứ ặ ị ố ở
t o ban đu nh h ng đn hành vi c a nó có th đc xem b ng cách sạ ầ ả ưở ế ủ ể ượ ằ ử
d ng câu l nh.ụ ệ
SQL> SHOW PARAMETER AUDIT
NAME TYPE VALUE
-------------------- -------- ----------------------
audit_file_dest string C:\ORACLEXE\APP\ORACLE\
ADMIN\XE\ADUMP
audit_sys_operations boolean FALSE
audit_trail string NONE
Chương Trình Đào Tạo Từ Xa KH & KT Máy Tính – Đại học Bách Khoa TP.HCM

Ch c năng Audit m c đnh b b t ho t, nh ng có th kích ho t nó b ngứ ặ ị ị ấ ạ ư ể ạ ằ
cách thi t l p giá tr cho tham s ế ậ ị ố AUDIT_TRAIL
AUDIT_TRAIL = { none | os | db | db,extended | xml |
xml,extended }
Trong đó:
none or false – ch c năng giám sát b b t ho t.ứ ị ấ ạ
db or true – B t ch c năng giám sát và các b n ghi giám sát đc sậ ứ ả ượ ẽ
đc l u trong database audit trailượ ư (SYS.AUD$).
xml- B t ch c năng giám sát v i các b n ghi giám sát đc s đc l uậ ứ ớ ả ượ ẽ ượ ư
nh file OS có đnh d ng XML.ư ị ạ
os- B t ch c năng giám sát v i các b n ghi giám sát đc ghi vào operatingậ ứ ớ ả ượ
system audit trail.
Tham s ốAUDIT_SYS_OPERATIONS dùng đ kích ho t hay b t ho t giámể ạ ấ ạ
sát các ho t đng c a nh ng user k t n i vào h th ng v i quy n SYSDBAạ ộ ủ ữ ế ố ệ ố ớ ề
hay SYSOPER, bao g m user SYS. Khi đó t t c các b n ghi giám sát đcồ ấ ả ả ượ
ghi vào OS audit trail.
Tham số AUDIT_FILE_DEST đc t đng d n cho audit trail khi các l aặ ả ườ ẫ ự
ch nọ OS, XML, EXTENDED được sử dụng. Nó cũng là v trí l u các b nị ư ả
ghi giám sát khi tham số AUDIT_SYS_OPERATIONS = true
Đ kích ho t ch c năng giám sát, làm theo các b c sauể ạ ứ ướ
SQL> ALTER SYSTEM SET audit_trail=db SCOPE=SPFILE;
System altered.
SQL> SHUTDOWN
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> STARTUP
Chương Trình Đào Tạo Từ Xa KH & KT Máy Tính – Đại học Bách Khoa TP.HCM

