DB 접근제어란 사용자가 DBMS에 로그인하거나 데이터 질의를 수행할 때 사용자의 접근 여부를 미리 정의된 권한에 따라 통제하는 기술입니다. DBMS의 접속 및 권한제어, 감사, 로깅 및 모니터링과 같은 보안 솔루션에 대해 자세히 알아보겠습니다.
DB 접근제어 솔루션
필요성
데이터베이스 서버는 기업의 주요 정보자산이 저장되어있어 유출시 그 피해가 매우 큽니다. 최근 클라우드 기반 운영으로 외부의 침입 가능성도 증가하였으며, 내부자에 의한 유출 가능성도 대비할 필요가 있습니다.
또한 개인정보를 다루는 기업의 경우 ISMS-P 인증을 의무적으로 받아야 합니다. 데이터 보호를 위해 DB 접근제어 솔루션이 가져야 할 주요 기능을 자세히 알아보겠습니다.
주요기능
1. 접속 및 권한 제어
주요 정보가 저장된 데이터베이스에 로그인하고 SQL 쿼리등으로 데이터에 접근하는 모든 행위에 대한 접근통제 및 제어하는 관리방법을 말합니다.
(1) 계정의 생성과 파기
정보 사용목적, 기간, 연락처 등이 기재된 사용자 정보와 함께 권한을 부여하며, 휴직이나 퇴직시 신속히 권한을 조정해야 한다.
(2) 계정운영 기능
모든 사용자에 대한 리스트가 누락되어서는 안 되며, 사용자가 변경된 경우 즉시 계정 및 패스워드를 변경한다.
(3) 패스워드 관리기능
패스워드의 주기전 변경, 쉬운 패스워드의 사용제한, 세션 만료 시 자동 로그아웃 설정 등의 규칙을 사용한다.
2. 모니터링 기능
데이터 베이스에 접근해 사용 중인 실시간 사용자의 모니터링 및 필터링 기능을 제공해야 합니다. 모니터링 솔루션을 통해 복수의 이기종 DB의 지표를 한눈에 볼 수 있는 대시보드 및 성능지표 추이 등을 체크할 수 있으면 편리합니다.
3. 동적 데이터 마스킹
데이터베이스 조회시 사용자의 권한에 따라 자동으로 개인정보와 같은 민감 데이터의 마스킹 기능인 동적 데이터 마스킹(DDM) 기능을 지원하면 좋습니다.
이를 통해 데이터 자체는 변경하지 않으면서, 권한에 따라 중요데이터를 무단으로 액세스하는 것을 방지할 수 있습니다.
4. 다양한 인증수단
인증수단은 지식, 소유, 신체의 3가지 범주에서 분류할 수 있습니다.
구분 | 설명(예) |
지식 | – 나만 알고 있는 것 (ID, 패스워드, 생일)- 분실우려는 없지만 보안성은 취약함 |
소유 | – 내가 가지고 있는 것 (인증서, OTP, 인증 문자, 메일 등) – 보안성은 높지만, 분실의 위험성이 있음 |
생체정보 | 지문, 홍채, 안면인식과 같이 생체정보를 이용한 형태. 보안성이 높고 분실위험이 적음 |
2 Factor Authentication (2 요소 인증)
위의 인증수단 중 최소 2가지 이상을 거쳐서 인증하는 방법 말합니다. 각 유형별 취약점을 보호할 수 있으므로 보다 강화된 접근제어가 가능한 솔루션 입니다. 또한 기업 내 주요 자산에 접근하는 개인과 그룹을 정의하고 인증하는 솔루션으로 IAM 통합계정관리를 이용할 수도 있습니다. 이에 관련해서는 다음을 참고 바랍니다.
통합계정관리 솔루션은 SSO와 EAM의 한계점을 보안한 솔루션으로 기업 내 다양한 서비스에 접근하는 계정관리의 효율성을 더욱 높여줄 수 있습니다.
5. 통신구간 암호화
서버간의 통신구간에도 암호화 솔루션을 적용할 수 있습니다. 아래는 기존 데이터베이스에 별도의 Agent를 이용해 암호화 기능을 추가하는 솔루션의 예 입니다.
외부의 사용자에(그룹웨어, ERP, CRM 애플리케이션) 의해 DB 접근 시 암호화를 통해 보안을 강화할 수 있으며, 암호키는 보안관리자에 의해 통제됩니다.
6. 데이터베이스 암호화
DB에 저장된 데이터를 암호 알고리즘을 이용하여 저장 및 관리하는 솔루션입니다. 이를 통해 만약 유출시에도 해독이 불가하여 추가적인 피해를 방지할 수 있습니다.
DB 암호화는 서버의 성능저하 및 관리효율성을 비교하여 적용하여야 합니다. 크게 다음의 3가지 유형을 비교해 보겠습니다.
1) API 방식
ERP, 그룹웨어 등에 암호화 API를 제공하여 애플리케이션이 주체가 되어 암호화를 하는 것입니다. DB 성능의 저하가 없지만 각 사용자가 암호화를 해야 하므로 관리 효율성은 낮습니다.
2) 플러그인 방식
데이터베이스 내부에서 뷰 테이블을 생성할 때 외부함수를 통해 원본 테이블을 암호화하는 방식입니다. 유지보수는 쉽지만 DB 서버 성능저하가 일어날 가능성이 큽니다.
3) 시큐어 프록시방식
데이터베이스 외부에 암호화/복호화 Agent가 설치되며 이는 독립적으로 운용됩니다. 이를 통해 외부의 애플리케이션은 평문으로 DB를 접근 가능하며 데이터는 암호화 되어 보호할 수 있습니다.
7. 리포트 기능 (Audit 감사기능)
SQA DB 감사(Audio)을 통해 데이터 베이스의 변경 추적에 용이합니다. 이를 통해 다음을 수행할 수 있습니다.
- 감사할 데이터베이스의 범주를 정의
- 보고서 및 대시보드를 이용해 빠르게 다양한 이벤트를 체크
- 의심스러운 이벤트 및 특이사항을 빠르게 찾을 수 있음
이상으로 DB 접근제어 솔루션 필요성 및 주요기능 들에 대해서 알아보았습니다.