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 To T Xa KH & KT Máy Tính – Đi hc 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 To T Xa KH & KT Máy Tính – Đi hc 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 To T Xa KH & KT Máy Tính – Đi hc 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 To T Xa KH & KT Máy Tính – Đi hc 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 To T Xa KH & KT Máy Tính – Đi hc Bách Khoa TP.HCM