본문 바로가기

DBMS

SQL AUDIT(감사 조회 , 감사 설정)

반응형

 

 

감사란 데이터 작업에 대한 모니터링을 말하며 오라클의 감시카메라같은 역할을 한다. 
테이블의 변경 또는 얼마나 많은 양의 데이터가 I/O되며 절정 시간에 동접자가

얼마나 되는지에 대한 통계자료를 모을 수 있다.

 

 

 

 

< 감사 조회 > 


SHOW PARAMETER audit -- 감사 설정 파라미터 조회
 
 
SELECT * FROM sys.aud$; -- Audit 결과가 쌓이는 저장소 & 감사 결과 조회(테이블) 
SELECT * FROM dba_audit_trail WHERE OWNER != 'SYS'-- 감사결과 조회(sys.aud$을 기반으로 생성된 뷰)
 
 
 
SELECT * FROM dictionary WHERE table_name like '%AUDIT%';
-- 데이터 사전에서 감사와 관련된 테이블 조회
 
 
 
SELECT * FROM dba_obj_audit_opts; -- 객체와 관련된 감사 설정 정보 조회
 
SELECT * FROM dba_priv_audit_opts; -- 시스템 권한과 관련된 감사 설정 정보 조회
 
 
 
 < 감사 설정 > 



 예시)HR 소유의 EMPLOYEES(사원) 테이블을 조작할 때마다 감사를 수행할 수 있도록 하고       감사 결과는 XML문서로 받아 해석해보자.



 
 
 
 ALTER SYSTEM SET audit_trail = xml,extended scope=spfile; 
 
 위 명령어를 적용하고나서 sql 재접속이 필요하다. 
 
 콘솔에서 sqlplus sys as sysdba
 
 shutdown immediate 후 startup하면 재접속된다.
 
 
 
 감사 설정 파라미터를 조회해보면 다음과 같이 audit_trail의 VALUE값이 XML로 변경된 것을 확인할 수 있다.
 
 
 
 NAME                 TYPE    VALUE                                                 
 
-------------------- ------- ----------------------------------------------------- 
 
 audit_file_dest      string  C:\ORACLEXE\APP\ORACLE\PRODUCT\11.2.0\SERVER\DATABASE 
 
 audit_sys_operations boolean FALSE                                                 
 
 audit_trail          string  XML, EXTENDED    
 
 
 
 
 
 AUDIT INSERT,UPDATE,DELETE ON hr.employees by access; -- hr의 employees 테이블에 접근할 때 감사 수행
 
------------------------------------------------------------------------------
 
 NOAUDIT INSERT,UPDATE,DELETE ON hr.employees -- ※참고용 : 감사 제거
 
------------------------------------------------------------------------------
 
 
 
 다음과 같이 테이블을 조작하고 감사된 결과가 XML 문서로 저장되는지 확인한다.
 
 UPDATE hr.employees
 
 SET job_id = 'ST_MAN'
 
 WHERE employee_id = 125;
 
 
 
 DELETE FROM hr.employees
 
 WHERE employee_id = 93;
 
 
 
 commit-- 삭제작업은 트랜젝션이 발생하므로 커밋이 되야 완전히 삭제된다. 
 
 
 XML문서가 저장되는 위치는 감사 설정 파라미터 테이블을 조회했을 때 나오는 
 
 audit_file_dest의 VALUE값이다.  
 
 
 필자는 위에서 조회된 결과에 의하면 
 
 C:\ORACLEXE\APP\ORACLE\PRODUCT\11.2.0\SERVER\DATABASE에 XML문서가 저장 된다.
cs

 

 

반응형

'DBMS' 카테고리의 다른 글

Oracle Listner 설정 / Oracle 실행 쿼리 확인  (0) 2017.09.26
SQL 감사 기록 삭제 & 백업  (0) 2017.09.24
PL/SQL 패스워드 검증  (0) 2017.09.19
PL/SQL - 프로시저 생성  (0) 2017.09.18
DB 사용자 생성 - 권한부여/제거  (0) 2017.09.05