[33편] DB 권한과 접속 이력을 보고서로 묶어봤다
2026년 11월 9일
DB 권한을 점검할 때는 두 가지가 궁금하다. 이 사람에게 지금 어떤 권한이 있는지, 최근에는 어느 DB에 접속했는지다. 권한 목록과 접속 기록을 함께 보면 사용 현황을 파악하기가 한결 쉽다.
이번에는 QueryPie의 Reports로 이 두 자료를 묶어 봤다. 앞선 실습에 사용한 Demo Developer 한 명을 골라 보고서를 만들고, 내려받은 파일에 어떤 내용이 담겼는지 확인했다.
점검할 사용자와 기간부터 정했다
앞서 만들어 둔 감사 담당자 계정으로 Reports를 열었다. Create Task에서 유형을 QueryPie DAC로 고르고, 이름에는 대상 사용자와 점검 날짜를 넣었다.
이번에는 11월 9일 하루의 기록이 필요했다. Scheduling은 None으로 두어 한 번만 생성하도록 하고, Date Range도 같은 날짜로 지정했다.

현재 권한과 접속 이력을 함께 넣었다
첫 번째 항목은 DB Access Control - Assigned Status로 골랐다. User/Group에서 Demo Developer를 선택하고, 리소스 태그 조건은 비워 뒀다. 이 사용자가 가진 DB 권한을 전체적으로 보고 싶었다.
Reference Time에는 Immediately가 표시됐다. 권한 현황은 보고서를 만드는 시점의 상태를 보여 주는 항목이었다.

Add Section을 눌러 DB Access History도 추가했다. 여기에도 Demo Developer를 따로 선택했다. 이 항목에는 앞에서 정한 하루 동안의 접속 이력이 들어간다.

현재 권한과 특정 기간의 사용 기록을 한꺼번에 준비할 수 있다는 점이 좋았다. 점검할 때 필요한 자료를 항목별로 고르고, 각 항목의 대상도 직접 정할 수 있었다.
미리보기로 구성을 보고 파일을 만들었다
Preview를 누르니 권한 현황과 접속 이력이 순서대로 나왔다. 두 항목 모두 대상이 Demo Developer로 표시됐고, 아래에는 상세 자료로 제공될 CSV 파일 두 개가 안내됐다.
이 화면에서는 수치 자리에 ###가 표시돼 보고서 구성을 먼저 살펴볼 수 있었다. 실제 집계는 생성된 파일에서 확인했다.

Save를 누른 뒤 Report Detail을 열었다. 첫 번째 보고서의 상태가 Succeeded로 바뀌었고 Download 버튼이 활성화됐다. Scheduling은 None, 다음 실행 시각은 비어 있어 이번 점검용으로 한 번만 생성된 것도 확인했다.

요약과 상세 내역을 함께 받았다
내려받은 ZIP을 풀어 보니 HTML 보고서 하나와 CSV 두 개가 들어 있었다. HTML을 브라우저에서 열자 현재 활성 권한은 3개, 비활성 권한은 0개로 표시됐다. 접속 이력 항목의 집계는 22건이었다.

권한 CSV에는 DB Route Lab, Orders Control Lab, Orders Demo MySQL이 한 행씩 들어 있었다. 세 연결 모두 Read-Only·SELECT·Active였고, 권한 부여 시각과 만료 시각, 마지막 접속 시각도 함께 확인할 수 있었다.
접속 이력 CSV도 끝까지 살펴봤다. 22건은 연결 13건과 종료 9건을 합한 기록이었다. 앞선 실습에서 DB Route Lab에 연결한 13:14:06과 종료한 13:16:03도 사용자 이름, 연결 이름, Success 결과와 함께 들어 있었다.
요약 보고서로 전체 현황을 먼저 보고, 구체적인 내역이 필요하면 함께 받은 CSV를 살펴보면 됐다. 자료를 따로 추출해 한데 모으는 수고가 줄어드는 부분이었다.
보고서를 내려받은 기록도 남았다
마지막으로 같은 태스크의 Action History를 열었다. Report Download 항목에 Demo Auditor, 내려받은 시각, 대상 보고서 번호 1이 남아 있었다.

이번에는 사용자 한 명을 골랐지만, 실제 점검 업무에서 어떤 자료를 준비할 수 있는지 감이 잡혔다. 현재 남아 있는 권한과 최근 접속 내역을 함께 받고, 요약에서 상세 기록까지 이어서 살펴볼 수 있었다. 권한 점검 자료를 준비하는 담당자에게 꽤 실용적인 기능이었다.
실습은 QueryPie Community 11.6.7에서 진행했다. Reports는 이 버전에서 Beta로 표시됐으며, 내려받은 보고서는 영어로 구성돼 있었다. 사용자와 DB는 모두 실습용이다.
참고: Reports · DB Access Control · DB Access History
![[32편] 조회한 이유를 SQL과 함께 남겨봤다](/assets/content/acp-lab-notes/sql-execution-reason/01.webp)
![[34편] 같은 서버에 있는 DB도 업무별로 권한을 나눠봤다](/assets/content/acp-lab-notes/database-permissions-by-task/01.webp)