클라우드 이용 고객은 다양합니다. 대기업부터 갓 창업한 스타트업까지 업종, 규모의 스펙트럼이 넓습니다. 고객군의 다양성만큼 보안에 대한 요구도 각양각색입니다. 클라우드 환경에서의 보안에 대한 요구 수준은 차이가 없지만, 보안 정책과 설정 측면에서 보면 조직 규모와 업종에 따라 원하는 것에 차이가 있죠. 관련해 이번 포스팅에서 구글 클라우드 플랫폼(Google Cloud Platform)의 보안 정책 설정에 대한 기본적인 내용을 소개합니다. 참고로 본 포스팅은 3편의 시리즈 중 첫 번째 이야기입니다.
1편: GCP 보안 설정의 기초 – 엔터프라이즈 편
2편: GCP 보안 설정의 기초 – 스타트업 편
3편: GCP 보안 설정의 기초 – 교육 기관 편
“엔터프라이즈와 스타트업의 차이”
클라우드 보안 설정에 대한 조직별 요구 사항의 차이를 예를 들어 살펴보겠습니다.
- 엔터프라이즈: 보통 대기업이나 중견기업의 경우 조직 구조가 복잡하죠. 조직도 관리만 따로 해야 할 정도인데요, 보안 역시 매우 오랜 시간 동안 조직에 맞게 최적화되어 있습니다. ID를 부여하고, 비밀번호 관리하고, 중요 자산에 대한 접근 제어를 하기 위한 권한 통제 체계가 각기 조직의 특성에 맞게 다듬어져 있습니다. 이런 경우 클라우드 환경에서의 보안 설정 역시 정교하게 들어가게 됩니다.
- 스타트업: 조직 규모가 작은 경우 높은 수준의 보안 설정보다는 쉽고, 편하고, 빠르게 일할 수 있는 민첩성을 살리는 쪽으로 향하게 되죠. 클라우드 사업자가 제공하는 다양한 보안 기능과 설정을 간소하게 해놓고 쓰는 경우가 많습니다.
- 교육 기관: 조직원 구성이 매우 자주 바뀌는 교육 기관은 그 특성상 계정을 자동으로 생성하고, 안전하게 폐기하는 것이 중요합니다. 클라우드 환경에서도 이런 조건을 만족해야 하죠.
“엔터프라이즈 환경을 위한 구글 클라우드 플랫폼 입문 – 보안”
엔터프라이즈 고객을 위한 GCP 보안 정책 설정을 간단히 살펴보겠습니다. GCP 이용 고객의 이름은 편의상 OurBigOrg라 부르겠습니다.
엔터프라이즈는 사세 확장, 인수합병, 조직 규모 확대 등 변화를 거치면서 조직 구성이 바뀝니다. 더불어 조직도에 맞게 보안 정책도 달라집니다. 이때 보안 팀은 중앙집중적인 통제력, 규제 준수 등을 목표로 조직원에 대한 보안 설정을 합니다. OurBigOrg란 고객도 조직이 복잡한데요, 이 고객이 클라우드를 이용하려고 합니다. 관련해 보안 요구 사항을 정리하면 다음과 같습니다.
· 온프레미스 환경에서 운영하던 ID 관리 시스템을 유지 하고 싶습니다.
· OurBigOrg 조직원이 각종 클라우드 리소스에 접근하는 것을 강력하게 통제하고 싶습니다.
· GCP 리소스 관리를 팀이나 부서 수준에서 할 수 있도록 관리자 권한을 위임하고 싶습니다.
· 서비스나 제품 개발 관련 클라우드 사용료를 부서 간에 서로 청구할 할 수 있었으면 합니다.
· 셀프 서비스 도구로 리소스를 프로비져닝하고 리소스 사용료를 계산할 수 있도록 하고, 이를 OurBigOrg의 통제 아래 두었으면 합니다.
· 클라우드 자원에 대한 구매 의사 결정은 OurBigOrg의 재무 부서를 통해 할 수 있었으면 합니다.
· OurBigOrg의 GCP 계정에 대한 모든 활동을 모니터링하고 싶습니다.
· 개발자가 셀프 서비스 도구로 주어진 자원만 사용하게 하고 싶습니다.
· QA와 운영 환경으로 배포하는 것은 권한이 주어진 엔지니어만 할 수 있게 하고 싶습니다.
이제, 위와 같은 OurBigOrg의 요구 사항을 GCP에서 어떻게 수용할지 살펴보겠습니다.
[Identity Management]
OurBigOrg 요구 사항:
· 온프레미스 환경에서 운영하던 ID 관리 시스템을 유지하고 싶습니다.
GCP는 Google Accounts로 사용자 인증과 접근 관리를 합니다. OurBigOrg는 기존에 사용하던 온 프레미스 아이덴티티 관리 시스템을 유지하는 가운데 GCP에 대한 인증과 접근 관리를 하고 싶어 합니다. 이를 위해 OurBigOrg는 먼저 클라우드 아이덴티티 계정을 설정합니다. 그리고 나서 GCDS(Cloud Directory Sync)를 이용해 클라우드와 온 프레미스 계정 정보를 연동합니다. SAML SSO까지 구현하면 사내에서 운영하는 아이덴티티 시스템을 통해 클라우드까지 SSO를 제공할 수 있습니다.
OurBigOrg 요구 사항:
· OurBigOrg 조직원이 각종 클라우드 리소스에 접근하는 것을 강력하게 통제하고 싶습니다.
· GCP 리소스 관리를 팀이나 부서 수준에서 할 수 있도록 관리자 권한을 위임하고 싶습니다.
· 서비스나 제품 개발 관련 클라우드 사용료를 부서 간에 서로 청구할 할 수 있었으면 합니다.
위 요구 사항을 수용하려면 OurBigOrg 관리자는 사내외 클라우드에 있는 회사의 자산에 대한 가시성과 통제력을 모두 확보해야 합니다. 조직의 리소스를 한데 모아 정리할 때 Cloud Folders가 유용하게 쓰입니다. OurBigOrg 의 사내와 클라우드 자산을 수직적 구조 아래 일목요연하게 정리할 수 있습니다. 이를 다이어그램으로 표현하면 다음과 같이 그릴 수 있습니다.
[Organizational Security Control]
OurBigOrg 요구 사항:
· 셀프 서비스 도구로 리소스를 프로비져닝하고 리소스 사용료를 계산할 수 있도록 하고, 이를 OurBigOrg의 통제 아래 두었으면 합니다.
· 클라우드 자원에 대한 구매 의사 결정은 OurBigOrg의 재무 부서를 통해 할 수 있었으면 합니다.
· OurBigOrg의 GCP 계정에 대한 모든 활동을 모니터링하고 싶습니다.
· 개발자가 셀프 서비스 도구로 주어진 자원만 사용하게 하고 싶습니다.
· QA와 운영 환경으로 배포하는 것은 권한이 주어진 엔지니어만 할 수 있게 하고 싶습니다.
위 요구 사항은 Organization Policy Service로 수용할 수 있습니다. OurBigOrg에서 조직원에게 사내와 클라우드 서비스를 제공하는 책임자는 Cloud Resource Hierachy를 통해 세부적인 설정과 정책을 부여할 수 있습니다. 이를 통해 관리자는 프로젝트, 폴더, 조직별로 정책을 따로 적용할 수 있습니다.
더 자세히 살펴보겠습니다. 먼저 리소스 통제입니다. 관리자는 폴더, 프로젝트, 조직(팀, 부서) 수준에서 자원에 대한 통제력을 행사할 수 있습니다. 관리자는 Cloud IAM으로 조직원의 직급, 책임, 역할에 따라 주요 자원에 대한 접근 제어를 할 수 있습니다. 그리고 Cloud Resource Manager와 Cloud Resource Manager API로 폴더, 프로젝트, 조직 관련 자원 사용과 협업을 매끄럽게 지원할 수 있습니다.
배포의 경우 Cloud Deployment Manager로 프로젝트를 생성하면 IAM 정책에 따라 적절한 리소스에 대한 보안 정책이 적용됩니다. 참고로 보안 감사 활동도 간단히 수행할 수 있는데요, 관리자는 Cloud Audit Logging을 통해 누가, 언제, 어떤 리소스에 접근했는지에 대한 로그 정보를 확인할 수 있습니다.
다음으로 재무 부서를 중심으로 클라우드 자원에 대한 구매 관리를 하고 해당 자원을 사용한 내부 조직과 프로젝트를 대상으로 사용량을 파악하고 청구하는 작업도 Cloud Resource Manager로 할 수 있습니다. 참고로 과금 관련 정보를 BigQuery로 보내 상세 내용을 분석할 수 있어 재무 부서가 더 정교하게 클라우드 관련 예산 집행 및 비용 계획을 수립할 수 있습니다.
앞서 소개한 설정을 반영한 중앙집중적인 아이덴티티 및 정책 관리 체계를 그림으로 표현하면 다음과 같습니다.
이상으로 엔터프라이즈 고객을 위한 GCP 아이덴티티 및 보안 정책 설정의 예를 살펴보았습니다. OurBigOrg과 같은 클라우드 관련 보안 설정 고민이 있다면, 메가존으로 해당 요구 사항을 보내주시면 친절하게 방향을 안내해 드리겠습니다.