DevOps/AWS

[AWS] RDS 인스턴스, Aurora RDS audit로그 활성화

동탄야도란 2024. 9. 1. 20:17
728x90
반응형

 

Amazon RDS의 Audit Log는 데이터베이스 활동에 대한 자세한 기록을 제공하는 기능이다. 이 로그를 사용하면 데이터베이스에 대한 접근, 실행된 쿼리, 데이터베이스 관리 작업 등과 같은 이벤트를 추적할 수 있다. Audit Log를 활용하면 보안 감사, 데이터베이스 사용 모니터링, 문제 해결 및 컴플라이언스 요구사항을 충족하는 데 도움이 된다.

 

 

1. Audit Log 주요 사용 사례

  • 보안 감사: 누가 언제 어떤 데이터베이스 작업을 수행했는지 추적하여 보안 감사를 수행할 수 있다.
  • 활동 모니터링: 데이터베이스 사용 패턴을 이해하고, 비정상적인 활동이나 예상치 못한 접근을 식별할 수 있다.
  • 문제 해결: 데이터베이스 성능 문제나 애플리케이션 오류의 원인을 파악하는 데 도움된다.
  • 규제 준수: 많은 산업 분야에서는 데이터 접근 변경에 대한 기록을 유지하도록 규정하고 있으며, Audit Log 이러한 컴플라이언스 요구사항을 충족하는 유용하다.

 

2. 지원 버전

Amazon RDS는 다음과 같은 버전의 MySQL 및 MariaDB에서 감사 플러그인 옵션 설정을 지원한다.

  • 모든 MySQL 5.7 버전
  • MySQL 5.7.16 이상 5.7 버전
  • MySQL 8.0.25 이상 8.0 버전
  • MariaDB 10.2 이상

 

3. Audit Log 활성화

RDS 인스턴스의 감사로그 활성화와 Aurora RDS의 감사 로그 활성화 방법은 서로 다르다.

RDS 인스턴스는 옵션그룹에서 설정해야하며, Aurora RDS 파라미터 그룹에 설정하면 다이나믹으로 설정가능하다.

 

3.1 RDS 인스턴스 Audit Log 활성화

RDS 인스턴스에서 audit log 활성화를 위해서는 옵션그룹에 설정 해야한다.(default 옵션그룹은 편집 불가능)

옵션그룹 생성을 클릭하고 이름과 엔진은 mysql, 메이저 엔진 버전은 사용할 버전을 선택하면 된다(스샷에서는 8.0)

 

 

 

커스텀 옵션그룹을 만들었다면 해당 옵션그룹을 선택하고 상단의 옵션 추가를 선택

 

 

 

옵션이름을 MARIADB_AUDIT_PLUGIN 선택하면 옵션들을 확인 할 수 있다.

옵션의 자세한 설정은 공식 문서를 확인 하면 된다.

 

 

RDS 생성시 aduit log 설정이 되어있는 옵션그룹을 선택하고 생성하면 된다.

 

 

RDS 생성이 완료 되었다면 로그 및 이벤트에서 로그 부분에서 audit 검색후 원하는 audit log 선택후 보기를 선택

 

 

 

아래와 같이 확인이 가능하다.

 

 

 

3.2 기존 RDS 인스턴스의 옵션 그룹 변경

대부분 RDS 인스턴스의 옵션그룹은 default를 사용한다. default 옵션그룹에서는 audit log 설정이 불가하기 때문에 별도의 custom의 옵션그룹을 생성해야한다. 생성 방법은  3.1 RDS 인스턴스 Audit Log 활성화에서 동일하게 생성 하면 된다.

default 옵션그룹이 세팅되어있는 RDS를 수정으로 custom 옵션 그룹을 지정해주면 된다.

즉시 적용시 상황

  • default →custom 옵션그룹으로 수정해도 인스턴스의 재부팅은 발생하지 않음
  • custom → default로 변경시 플러그인 제거로 인스턴스 재시작이 발생함
  • custom → custom(옵션 수정시) 인스턴스의 재부팅은 발생하지 않음

 

4. Aurora RDS Audit Log 활성화

Aurora RDS RDS 인스턴스와 설정방법이 다르다. RDS 인스턴스는 옵션그룹에 세팅했다면 Aurora 클러스터 파라미터 그룹에 세팅하면된다. 아래와 같이 적용유형은 다이나믹이므로 재부팅은 진행되지 않는다.

상세 옵션은 문서 통해 확인하면 된다. 로그를 활성화 하기위해서는 server_audit_logging 1 지정하고 server_audit_events로는 로그에 남길 이벤트를 조합하면된다. 아래는 CONNECT,QUERY 이벤트를 조합한 예시이다.

 

 

설정한 Aurora RDS의 로그및 이벤트에서 audit로 검색해서나온 로그를 선택한다.

 

 

아래와같이 로그를 확인 할 수 있다.

 

728x90
반응형