Kiểm soát bắt buộc và kiểm soát quản trị trong Oracle

Xem thêm các chuyên mục:

Chú ý: Bạn đang xem tài liệu nâng cao về cơ sở dữ liệu ORACLE. Nó sử dụng cho những người làm việc cao cấp kiểm soát hệ thống Database Oracle.

Tài liệu được biên soạn dưới dạng thô, và sẽ được chỉnh sửa tốt hơn trong thời gian tới.

1- Giới thiệu

  • Kiểm soát viên hoặc bạn sẽ yêu cầu kiểm soát hoạt động của người sử dụng đặc quyền như user SYS hoặc những user có quyền SYSDBA
  • Làm thế nào kiểm soát được hoạt động của SYS và các hoạt động quan trong như khởi động và tắt CSDL
  • Đối với kiểm toán chuẩn không kiểm toán được bất kỳ hồ sơ nào liên quan đến hoạt động SYS
  • Có thể vô hiệu hóa các kiểm toán sử dụng NOAUDIT, nhưng nếu bạn kiểm soát quản trị hệ thông thì vẫn được ghi lại.
  • Kiểm toán SYS luôn tạo ra tập tin bằng định dạng có định gửi đến hoạt động deamon đăng nhập hệ thống như syslog trên Unix hoặc evenlog trên windows
Chú ý: Bạn đang xem tài liệu về kiểm soát hệ thống Oracle, phần 1 để cập tới "Kiểm soát chuẩn trong Oracle", mà bạn có thể xem ở đây:

2- Sử dụng kiểm toán bắt buộc

  • Một số hoạt động luôn được kiểm toán ngay cả khi không yêu cầu. Bao gồm: startup, shutdown CSDL, tất cả đăng nhập của sysdba, sysoper. Điều này gọi là kiểm toán bắt buộc
  • Đối với việc kết nối sysdba, sysoper chỉ ghi thông tin thực tế kết nối không ghi bất kỳ chi tiết nào về các hoạt động được thực hiện bởi kết nối này
  • Trên Unix hồ sơ kiểm toán ghi vào thư mục adump, trên Windows các hồ sơ kiểm toán được ghi vào Evenlog cảu Windows bất kể thiết lập gì trên tham số AUDIT_TRAIL

Trên Windows:

Kiểm soát bắt buộc- Window Event đối với việc khởi động CSDL
Kiểm soát bắt buộc- Window Event đối với sysdba logon

Trên UNIX:

Nội dung File Kiểm soát bắt buộc-trên UNIX đối với việc khởi động CSDL
 
Nội dung File Kiểm soát bắt buộc-trên UNIX đối với sysoper logon

3- Thiết lập việc kiểm soát quản trị

  • Kiểm soát bắt buộc không ghi lại nhữn gì user SYS đã làm.
  • Kiểm soát bắt buộc không ghi lại nhữn gì user SYS đã làm.
Ví dụ:
show parameter audit_trail
-- Vẫn trong user SYS thực hiện lệnh SELECT
 select count(*) from scott.emp;

-- Kiểm tra lại AUD$ không có gì thay đổi
 select count(*) from aud$;

-- Để cho phép kiểm soát quản trị hệ thống phải thiết lập tham số khác
 show parameter audit;

alter system set audit_sys_operations=true scope=spfile;
Sau khi thiết lập tham số AUDIT_SYS_OPERATIONS=TRUE, khởi động lại CSDL thực hiện lại các lệnh để kiểm tra
select count(*) from aud$;

select count(*) from scott.emp;

select count(*) from aud$;
Nhưng audit trail sẽ được ghi ra file, không ghi trong CSDL

Xem thêm các chuyên mục: