2011-02-09 47 views
5

Khi tôi tạo điều kiện cho kiểm toán cho tạo phiên bằng cách sau:"kiểm tra tạo phiên theo phiên" so với "kiểm toán tạo phiên bằng truy cập"?

audit create session by session; 

Sau đó, tôi đang truy vấn như sau:

select * from dba_priv_audit_opts; 

Kết quả là:

USERNAME | PROXY_NAME | AUDIT_OPTION | SUCCESS | FAILURE | 
............................................................... 
-  | -   | CREATE SESSION | BY ACCESS | BY ACCESS| 

Nhưng, khi tôi bật kiểm tra cho tạo phiên theo cách sau:

audit create session by access; 

Sau đó, tôi đang truy vấn như sau:

select * from dba_priv_audit_opts; 

Kết quả là như nhau:

USERNAME | PROXY_NAME | AUDIT_OPTION | SUCCESS | FAILURE | 
............................................................... 
-  | -   | CREATE SESSION | BY ACCESS | BY ACCESS| 

Tại sao? Bạn còn ý kiến ​​nào không?

Trả lời

5

11gR2 trở lên:

BY SESSION là một cách hiệu quả tàn tật và tất cả các kiểm toán được thực hiện cho mỗi truy cập.

11gR1 và dưới đây:

Sự khác biệt giữa BY SESSION and BY ACCESS là khi bạn chỉ định BY SESSION Oracle sẽ cố gắng kết hợp nhiều mục kiểm toán vào một bản ghi khi phiên và hành động kiểm toán phù hợp.

Nó chỉ hoạt động cho câu lệnh SQL khác hơn DDL mặc dù, Từ liên kết ở trên:

Nếu bạn chỉ định tùy chọn tuyên bố hoặc đặc quyền hệ thống ngôn ngữ định nghĩa dữ liệu kiểm toán (DDL) báo cáo, sau đó cơ sở dữ liệu tự động kiểm toán bởi truy cập bất kể bạn có chỉ định mệnh đề BY SESSION hoặc mệnh đề BY ACCESS hay không.

CREATE SESSION là tuyên bố DDL Oracle kiểm tra tuyên bố này bằng quyền truy cập.

+0

Cảm ơn bạn, câu trả lời rất hay! – kupa

Các vấn đề liên quan