온프레미스 시절에는 이런 그림이 필요 없었다. 건물부터 코드까지 전부 우리 책임이었기 때문이다. 그런데 클라우드로 옮기면 일부는 AWS가, 일부는 고객이 맡게 된다. 여기서 위험한 착각이 생긴다.
"AWS가 알아서 다 지켜 주겠지."
실제로 클라우드에서 발생하는 보안 사고의 상당수는 AWS 인프라가 뚫려서가 아니라, 고객이 자기 몫을 설정하지 않아서 일어난다. 저장소를 실수로 전체 공개해 두거나, 관리자 열쇠를 아무 데나 흘리거나, 방화벽을 전 세계에 열어 두는 식이다. 공동 책임 모델은 "어디까지가 내 몫인지 착각하지 말라"는 경고문에 가깝다.
렌터카로 바꿔 봐도 같다.
렌터카
클라우드
정비·검사·리콜 대응은 렌터카 회사
하드웨어·시설·가상화는 AWS
안전벨트 매기, 문 잠그기, 과속 안 하기는 운전자
IAM 설정, 암호화, 방화벽 규칙은 고객
차 안에 두고 내린 귀중품은 운전자 책임
저장한 데이터와 그 공개 범위는 고객 책임
브레이크 결함으로 난 사고는 회사 책임
물리 인프라 결함은 AWS 책임
⚠️ 함정: 공동 책임 모델을 "보안 업무를 반씩 나눠 갖는다"로 이해하면 틀린다. 겹치는 구간 없이 층으로 갈라져 있다. 아래층(시설·하드웨어·가상화)은 전부 AWS, 위층(내가 올린 것과 설정)은 전부 고객이다. 그리고 층 자체가 서비스 종류에 따라 위아래로 움직인다는 점이 이 모델의 핵심이다.
AWS는 서비스를 돌리는 기반 인프라를 책임진다. 고객이 손댈 수 없고, 손댈 필요도 없는 영역이다.
AWS가 책임지는 것
설명
물리적 시설(데이터센터)
건물 출입 통제, 경비, 화재·전력·냉방
하드웨어
서버, 스토리지, 네트워크 장비
가상화(하이퍼바이저)
가상 서버를 돌리는 기반 소프트웨어
글로벌 네트워크 인프라
리전·AZ를 잇는 네트워크
한마디로 콘크리트 바닥부터 가상화 계층까지가 AWS의 영역이다.
여기에는 고객이 아예 볼 수도, 손댈 수도 없는 것들이 들어간다. 데이터센터 주소도 공개되지 않고, 서버실에 들어가 볼 수도 없으며, 하이퍼바이저 설정을 바꿀 수도 없다. "고객이 손댈 수 없는 것 = AWS 책임"이라는 감각을 잡아 두면 관련 문항을 푸는 기준이 된다.
디스크가 고장 나서 교체하는 일 → 고객은 알지도 못한다 → AWS
데이터센터 경비원과 출입 카드 → 고객이 관여할 수 없다 → AWS
리전과 AZ를 잇는 광케이블 → 고객이 만질 수 없다 → AWS
폐기하는 저장 장치의 물리적 파기 → 고객이 할 수 없다 → AWS
AWS 문서는 이를 "Security OF the Cloud"라고 부른다. 반대로 고객 몫은 "Security IN the Cloud"다. 시험에서는 이 영어 문구가 보기 그대로 등장하는 경우가 많으니, 한국어 해석뿐 아니라 of / in이라는 전치사 하나로 갈린다는 사실을 기억한다. of = 클라우드라는 시설 그 자체(AWS), in = 그 안에 내가 넣어 둔 것(고객).
공동 책임 모델의 경계선은 고정된 게 아니라, 어떤 서비스를 쓰느냐에 따라 위아래로 움직인다. 더 "관리형(managed)"인 서비스를 쓸수록 고객 책임은 줄어든다.
EC2(가상 서버): 운영체제 패치, 앱 설치, 방화벽 설정까지 고객이 직접 한다. 책임이 가장 많다.
RDS(관리형 데이터베이스): 데이터베이스 엔진의 패치·백업은 AWS가 대신해 준다. 고객은 데이터와 접근 권한에 집중한다.
S3 / Lambda(완전 관리형): 운영체제·서버를 아예 신경 쓸 필요가 없다. 고객은 데이터 분류와 접근 권한 정도만 책임진다.
서비스별로 경계선이 어떻게 움직이는지 항목 단위로 보면 훨씬 선명해진다.
항목
EC2
RDS
S3 / Lambda
물리 시설·하드웨어
AWS
AWS
AWS
가상화(하이퍼바이저)
AWS
AWS
AWS
게스트 OS 설치·패치
고객
AWS
AWS(고객은 볼 일도 없음)
데이터베이스 엔진 패치
고객(직접 설치했다면)
AWS
해당 없음
백업 수행
고객(설정·운영)
AWS가 기능 제공, 고객이 설정
AWS가 내구성 관리, 고객이 정책 설정
애플리케이션 코드
고객
고객
고객
방화벽·접근 규칙
고객(보안 그룹)
고객
고객(권한 정책)
데이터 분류·암호화 선택
고객
고객
고객
IAM 사용자·권한
고객
고객
고객
표를 세로로 훑어보면 규칙이 보인다.
위쪽 줄(시설·하드웨어·가상화)은 어느 서비스를 쓰든 항상 AWS.
아래쪽 줄(애플리케이션·접근 규칙·데이터·IAM)은 어느 서비스를 쓰든 항상 고객.
움직이는 것은 가운데 줄(OS·엔진 패치·백업)뿐이다. 관리형 서비스일수록 이 가운데 부분이 AWS 쪽으로 넘어간다.
"서비스의 추상화 수준이 올라갈수록 고객 책임은 위로 좁아진다"는 원칙으로 기억하면 모든 문제가 풀린다. 같은 일을 EC2 → RDS → Lambda로 옮길수록 고객이 신경 쓸 부분이 줄어든다. 단, 데이터와 권한(IAM)만큼은 어느 단계에서도 고객 몫으로 남는다.
사내 데이터베이스를 클라우드로 옮긴다고 가정한다. 방법은 두 가지다. ① EC2에 직접 데이터베이스를 설치하는 방법 — 익숙한 방식 그대로 쓸 수 있고 세부 설정도 마음대로지만, OS 패치·DB 엔진 패치·백업 스크립트·장애 대응이 전부 고객 몫이다. ② RDS 같은 관리형 서비스를 쓰는 방법 — 세부 통제는 줄어들지만 패치와 백업 같은 반복 운영 업무를 AWS가 맡는다. 같은 데이터베이스인데 팀이 야근할 일의 양이 달라진다. 시험에서 "운영 부담을 줄이고 싶다", "패치 관리를 하고 싶지 않다"는 지문이 나오면 답은 관리형 서비스다.
"공동 책임 모델"이라는 이름 때문에 보안 이야기로만 생각하기 쉽지만, 실제로는 운영 전반이 같은 방식으로 나뉜다.
영역
AWS 쪽
고객 쪽
패치
인프라와 관리형 서비스의 소프트웨어
고객이 다루는 게스트 OS와 애플리케이션
구성(설정)
서비스가 안전한 기본값으로 동작하도록 제공
실제로 어떤 값으로 설정할지 결정
인식 교육
AWS 직원에 대한 교육
자기 조직 구성원에 대한 교육
규정 준수
인프라가 각종 인증·감사 기준을 충족하도록 관리
그 위에 올린 워크로드가 기준을 지키는지 책임
특히 규정 준수는 오해가 많다. "AWS가 인증을 받았으니 우리 서비스도 자동으로 준수된다"고 생각하면 틀린다. AWS가 보장하는 것은 기반 인프라 수준이고, 그 위에서 데이터를 어떻게 다루는지는 여전히 고객의 몫이다. 이런 구조를 "규정 준수의 상속(inheritance)"이라고 부른다 — 아래 계층의 준수 결과를 물려받되, 위 계층은 스스로 지켜야 한다.
고객은 감사나 심사를 받을 때 "AWS 인프라가 어떤 기준을 충족하는지"를 증빙해야 할 때가 있다. AWS는 이런 규정 준수 보고서를 고객이 직접 받아 볼 수 있는 창구를 제공하는데, 그 서비스가 AWS Artifact다. 이름 정도만 알아 두면 충분하다.
경계선이 움직인다는 말에 흔들리지 않으려면, 절대 안 움직이는 것부터 외워 두는 편이 빠르다.
언제나 고객 책임 (외워야 할 목록)
데이터의 분류 — 어떤 정보가 민감한지 판단하는 일
IAM 자격 증명 관리 — 계정, 비밀번호, 액세스 키, 다중 인증(MFA) 설정
권한 부여 — 누구에게 무엇을 허용할지
게스트 OS 패치 (EC2처럼 고객이 OS를 다루는 경우)
보안 그룹 등 네트워크 접근 규칙 설정
암호화를 켤지 말지의 선택과 그 설정
직접 만든 애플리케이션 코드의 보안
언제나 AWS 책임 (외워야 할 목록)
물리적 시설 — 데이터센터 건물, 출입 통제, 경비, 화재·전력·냉방
하드웨어 — 서버, 스토리지, 네트워크 장비, 고장 교체, 폐기 장비의 물리적 파기
가상화 계층(하이퍼바이저)
글로벌 네트워크 인프라 — 리전·AZ를 잇는 회선
관리형 서비스의 OS·데이터베이스 엔진 패치
⚠️ 함정: 암호화는 보기에서 가장 자주 낚는 항목이다. AWS는 "암호화할 수 있는 기능과 도구"를 제공하지만, 그 기능을 켤지 말지, 어떤 데이터에 적용할지 정하는 것은 고객이다. "AWS가 모든 데이터를 자동으로 암호화해 준다" 같은 보기는 오답으로 보면 된다. 마찬가지로 백업도 AWS가 기능을 주지만 정책을 정하는 건 고객이다.
저장소를 실수로 전체 공개 설정해 두어 내부 자료가 인터넷에 노출되는 사고는 클라우드에서 드물지 않게 보고된다. 이때 AWS 인프라는 아무 문제 없이 정상 동작했다. 스토리지는 고객이 요청한 대로 "누구나 읽을 수 있게" 공개했을 뿐이다. 공동 책임 모델로 보면 접근 권한 설정은 고객 책임이므로 이 사고는 명백히 고객 영역이다. 아파트 비유로 돌아가면, 건물 현관은 멀쩡했는데 세입자가 자기 집 문을 열어 둔 상황이다.