셀렉트 보안지침 (Security notes & concerns)
어드민 백오피스는 서비스 데이터와 회원의 개인정보를 취급하기 때문에 높은 보안이 중요합니다.
셀렉트를 이용하며 적정 보안을 유지하고 기존 보안 모델에 충족하기 위해 조치해야할 몇가지 고려사항을 공유드립니다.
데이터베이스 Database
- 데이터베이스 연결은 반드시 IP 제한 또는 사설망내 Tunnel을 통한 연결을 한다.
- 읽기전용(slave, readonly) 리소스와 읽기쓰기(master) 리소스를 분리한다.
- UserAccount가 아닌 Server/ServiceAccount 계정을 연결한다.
- 담당자 계정의 quota limit을 지정하여 대량 개인정보 유출을 차단한다. *Enterpise Plan
- (선택) 데이터 공유가 필요할때는 서비스내 Google Spreadsheet로 반출한다.
클라우드 서비스 (Select as Cloud)
- Google Suite SSO등을 통해 인증 보안을 높인다.
- G Suite 접근 정책을 설정하여 기기관리, 위치제한, 퇴사 권한 회수를 처리한다.
- 셀렉트의 모든 쿼리 데이터는 중간저장(캐시 데이터) 없이 즉시 요청하여 표시한다.
- 셀렉트의 권한모델은 RBAC을 지원하며 블록단위로(메뉴/페이지/쿼리) 설정가능하다. *Team Plan
- 셀렉트는 Audit log, 세션정책(inactivity expire, 유지정책, 12시간 재로그인), IP제한등을 제공한다. *Enterprise Plan
- ISMS 인증에 무리없도록 정보보호, 개인정보보호 가이드라인을 준수한다.
- 사무실 IP 제한 기능을 이용한다. *Team Plan
망분리 환경
- 셀렉트 설치형(self-hosted)의 경우 기존의 네트워크 정책을 그대로 유지한다.
*개발자는 어드민 설정파일을 가진 git repo만을 조작하면 개발환경에 배포가 이루어지고 상위조직장(팀장등) 승인으로 운영환경에 배포되도록 구성이 필요하다. - 셀렉트 클라우드의 경우 Cloudflare Access 형태로 감싸서 회사의 네트워크 정책을 적용한다. VDI와 유사한 논리적 망분리를 통해 담당자에게 제공하는것을 권장한다. *Cloudflare JWT 인증을 원하는 경우 Enterprise Plan
어드민 개발 및 배포 권한
- (모든직군 대상) 셀렉트 클라우드의 경우 웹 UI를 통해 편집이 가능하므로, 개발환경 어드민(Team, 개발 데이터베이스 연결)과 운영환경 어드민(Team, 운영 데이터베이스 연결)을 따로 분리하여 설정한다. 권한이 있는 사람만 운영환경 어드민(Team)의 편집 권한을 가지고 배포 가능하도록 한다.
- (개발직군 대상) 셀렉트 클라우드의 경우 Github Repo 연동을 통해 master(main)/develop Branch 전략에 따라 구성을 한다. 이 경우 소스코드 접근가능한 개발자는 로컬에서 테스트/개발을 진행하고, 변경사항을 commit-push하여 상위조직장(팀장등) 리뷰/승인을 통해 master(main)에 병합되는 전략이 필요하다.
- (개발직군 대상) 셀렉트 설치형의 경우 기존의 정책 및 배포 전략을 그대로 유지한다.
2022년 3월 30일