Tibero DB 계정(유저) 접속, 수행 쿼리 기록을 위한 Audit 기능 설정 방법과 운영 시 고려 사항 TIP
Tibero DB 계정(유저) 접속, 수행 쿼리 기록을 위한 Audit 기능 설정 방법과 운영 시 고려 사항 TIP
최근 보안 이슈들이 많이 발생하면서 보안 감사 설정에 대한 부분에 대해서도 많은 관심을 가지고 있는 것 같습니다.
Tibero DB에서는 어떻게 Aduit을 설정할 수 있는지 가이드가 있어 공유 드립니다.
1. 주요 감사 파라미터 설정
아래 파라미터들은 동적(Dynamic) 적용이 가능하여 DB 재기동 없이 적용 가능합니다.
AUDIT_TRAIL=DB_EXTENDED감사 기록을 DB 내(
SYS.AUD$테이블)에 저장하며, 실행된 SQL 문장과 바인드 변수 값까지 상세히 기록합니다."AUDIT_TRAIL=OS" 값으로 지정한 경우 파일 형식으로 OS에 로그를 남길 수 있습니다.
AUDIT_SYS_OPERATIONS=Y관리자 권한(SYSDBA, SYSOPER)으로 수행되는 모든 활동을 감사 대상에 포함합니다.
2. 감사 설정 및 조회 예제 (tibero 계정 기준)
수행된 개별 쿼리(DML, SELECT 등)를 매번 기록하기 위해서는 BY ACCESS 옵션 사용이 필요합니다.
감사 정책 설정:
-- 1. tibero 사용자의 접속 및 종료 기록
AUDIT SESSION BY tibero;
-- 2. tibero.t1 테이블에 대한 모든 작업(DML, DDL, SELECT)을 건별로 상세 기록
AUDIT ALL ON tibero.t1 BY ACCESS;감사 로그 확인 (SQL_TEXT 확인):
SELECT USERNAME, TIMESTAMP, ACTION, SQL_TEXT
FROM DBA_AUDIT_TRAIL
WHERE USERNAME = 'TIBERO'
ORDER BY TIMESTAMP DESC;
3. 설정 시 주요 주의 사항
① 본인 소유 객체 감사 활성화 (_DDL_AUDIT_OWN_OBJ) 기본 설정에서는 테이블 소유자(Owner)가 본인의 객체에 수행하는 작업이 기록되지 않을 수 있습니다. 소유자의 직접 수행 내역까지 모두 감시하려면 아래 파라미터를 추가로 설정해야 합니다.
ALTER SYSTEM SET _DDL_AUDIT_OWN_OBJ=Y;
② 성능 부하 및 저장 공간 관리
성능 저하 :
DB_EXTENDED설정은 매 쿼리마다 전체 SQL 텍스트를 기록하므로, 트랜잭션이 많은 환경에서는 I/O 및 CPU 부하가 발생할 수 있습니다.SYSTEM 테이블스페이스 관리: 감사 로그는 DB_EXTENDED 옵션일 경우
SYSTEM테이블스페이스에 누적됩니다. 로그가 급증하여 tablespace가 부족할 수 있으므로, 주기적인 AUDIT 백업 및 삭제 정책을 고려해야 합니다.
4. 권장 적용 가이드
초기에는 모든 대상을 감시하기보다 보안상 중요한 특정 사용자나 핵심 테이블을 우선 대상으로 지정하여 BY ACCESS 옵션과 함께 적용하고, 시스템 부하를 모니터링하며 대상을 점진적으로 확대하시는 것을 권장합니다.
위 가이드는 기본적인 기능만을 작성한 것으로 여러 옵션을 이용하여 AUDIT 설정을 조정할 수 있습니다.
참고
참고 : Tibero GTS > 기술 정보 > 관리/환경설정 > DB 계정(유저) 접속, 수행 쿼리 기록을 위한 Audit 설정