Top

AWS 마이크로서비스 보안 [AWS에서 마이크로서비스를 안전하게 운영하기 위한 보안 설계]

  • 원서명Security and Microservice Architecture on AWS: Architecting and Implementing a Secured, Scalable Solution (ISBN 9781098101466)
  • 지은이고라브 라제(Gaurav Raje)
  • 옮긴이박상영
  • ISBN : 9791161758237
  • 40,000원
  • 2024년 03월 08일 펴냄
  • 페이퍼백 | 536쪽 | 188*235mm
  • 시리즈 : 해킹과 보안

책 소개

소스 코드 파일은 여기에서 내려 받으실 수 있습니다.
https://github.com/AcornPublishing/security-msa-aws

요약

이전에 수립한 많은 레거시 보안 정책이 클라우드 컴퓨팅과 마이크로서비스가 제공하는 이점을 감안하지 못하고 있다. 이를 개선하고자 마이크로서비스 아키텍처와 AWS 클라우드의 특성을 모두 고려해, AWS 기반 마이크로서비스에서 발생 가능한 위험을 완화할 수 있는 보안 통제 방법을 AWS가 제공하는 서비스와 도구를 활용해 설명한다.

추천의 글

“저자는 최신 애플리케이션 아키텍처의 세 가지 중요 주제인 클라우드, 마이크로서비스 및 보안을 한 권의 책에서 모두 다루는 훌륭한 결과물을 내놓았다. 비즈니스를 위해 최신 디지털 애플리케이션을 구축하고 운영하는 모든 사람에게 이 책을 적극 추천한다.”

—리 애치슨(Lee Atchison)
애치슨 테크놀로지(Atchison Technology) 유한책임회사의 오너이자 작가,
고문 및 사고 리더

이 책에서 다루는 내용

클라우드 시스템에서 동작하는 마이크로서비스를 설계하는 조직에서 보안 이슈는 우선순위가 낮아 나중에 고려하는 경우가 대부분이다. 오늘날 대부분의 기업은 잠재적인 보안 위협에 노출돼 있지만 사전 대응보다는 사후 대응에 주력하고 있다. 이로 인해 만들어지는 시스템은 구현하기 어렵고 관리 및 확장이 훨씬 더 불편하면서 복잡하다. 저자는 오버헤드를 늘리지 않으면서도 AWS에서 매우 안전한 시스템을 구축하는 방법을 이 책을 통해 설명한다.

AWS 경험을 가진 클라우드 솔루션 아키텍트와 소프트웨어 개발자에게 적합한 실용적인 도서로서, 높은 수준의 아키텍처 및 설계에 관한 논의로 시작해 개발 및 운영 경험을 손상시키지 않는 범위에서 클라우드에서 솔루션을 구현하는 방법을 설명한다. AWS 공동 책임 모델을 활용해 얻을 수 있는 장점은 다음과 같다.

◆ 마이크로서비스로 금융, 의료 및 법률 분야의 다양한 규제를 간단하고도 쉽게 준수할 수 있는 모듈형 아키텍처 개발
◆ 악의적인 행위자로부터 마이크로서비스를 보호하는 데 사용할 수 있는 다양한 AWS 기반 보안 통제 도입
◆ 모듈화한 아키텍처를 활용해 개별 마이크로서비스에서 보안 메커니즘을 독립적으로 확장
◆ 개발 팀의 자율성이나 효율성을 손상시키지 않으면서 보안 태세 개선

이 책의 대상 독자

아마도 여러분은 AWS에 마이크로서비스 시스템을 구현하고 나서 갑자기 시스템을 보호해야 할 필요를 깨달았거나 보안을 중요한 요소로 고려하는 산업계에 재직 중일 수도 있다. 또는 여태껏 개발된 적이 없는 애플리케이션을 개발하는 과정 중에 마이크로서비스를 막 발견한 사람일지도 모른다. 아니면 마이크로서비스를 사용하는 회사에 입사해 보안 측면의 모범 사례를 따르고 있는지를 궁금해하고 있거나 다양한 유형의 클라우드 설계 패턴을 배우고 AWS가 클라우드 환경에서 제공하는 도구에 관한 추가 정보를 찾는 데 관심이 있는 사람일 수도 있다. 당신이 어떤 사람인지는 중요하지 않다. 누구든지 이 책을 통해 새로운 지식을 배울 것이라 확신한다.

저자/역자 소개

지은이의 말

이미 아마존 웹 서비스(AWS, Amazon Web Services), 마이크로서비스 아키텍처 및 보안에 대한 기본 지식을 갖고 있고 이를 유기적으로 활용해 운영 중인 애플리케이션의 가치를 끌어올리고자 하는 독자를 위한 책이다.
보안 전문가와 개발자가 협력함으로써 엔터프라이즈 애플리케이션의 가치를 높일 수 있는 방법을 전파하고, 효율적인 설계와 간단한 솔루션 및 AWS가 제공하는 도구 등을 활용해 보안을 구현함으로써 보안 문제에 대한 혁신적인 해결책을 제시하고자 한다.
나는 다른 어떤 개발자보다도 보안으로 발생하는 불편을 싫어하기 때문에 단순한 방법으로 보안의 중요성을 전달하고 회사 내 개발자나 관리자와 마찰을 유발하는 보안 통제를 구현하지 않도록 최선을 다할 것이다.

지은이 소개

고라브 라제(Gaurav Raje)

소프트웨어 아키텍트로 10년 이상 근무했으며, 민감한 데이터를 호스팅하고 높은 가용성을 요구하는 애플리케이션을 구축하고 확장하는 데 빼어난 경험을 보유하고 있다. 또한 보안 모범 사례를 적용해 모든 이용자의 정보를 보호하는 데 특별히 주의를 기울여왔다. 그 외에도 AWS Certified Database Specialty 시험의 전문가로서 공식 시험에 다양한 문제를 출제하고 조정하는 일을 해왔고 자이썬(Jython) 프로그래밍 언어 SHA-224 패키지의 저자이기도 하다. 뿐만 아니라 뉴욕대학교 스턴 경영 대학(NYU Stern School of Business)에서 금융 MBA를, 로체스터 공과대학(Rochester Institute of Technology)에서 컴퓨터 과학 석사 학위를 받았다.

옮긴이의 말

AWS 클라우드에 마이크로서비스를 구축해 비즈니스 기능을 운영하는 사례는 이미 대세가 됐지만 많은 보안 정책은 이러한 기술을 고려하지 않고 작성한 레거시 성격을 띠고 있어 AWS 기반 마이크로서비스 보안에 관해 참고할 수 있는 자료가 많지 않은 것이 사실이다. AWS, 마이크로서비스 아키텍처, 보안에 대한 기본 지식을 가진 독자가 AWS가 제공하는 도구를 활용해 마이크로서비스 보호 대책을 수립 및 적용할 수 있게 해줌으로써 보안 이슈에 대한 해결책을 제시하는 책이다.
마이크로서비스나 AWS 클라우드 전반을 다룬 책은 시중에 많지만 AWS 클라우드에 구축한 마이크로서비스 보안을 핵심 주제로 집필한 책은 아직 없다. 관련 주제를 고민 중인 보안 담당자에게 도움을 줄 수 있는 책이 됐으면 한다.
이 책의 구성은 다음과 같다.
1장, 클라우드 기반 마이크로서비스 소개
정보 보안 용어에 대한 정의를 시작으로 클라우드와 마이크로서비스 아키텍처에 대한 기본 지식을 소개함으로써 AWS 클라우드 기반 마이크로서비스를 보호하는 데 필요한 배경지식을 전달한다.
2장, 인가와 인증 기초
모놀리식과 마이크로서비스 애플리케이션의 접근 통제 정책을 비교하고, 접근 정책을 중앙 집중화해 관리할 수 있는 AWS IAM 서비스를 사용해 마이크로서비스 아키텍처에서 비인가 요청을 차단하기 위한 인증과 인가 정책을 구현하는 방법을 설명한다.
3장, 암호화의 기초
물리적 인프라를 여러 고객이 공유해서 사용하는 클라우드 리소스의 특성을 고려한 심층 방어 전략의 일환으로, 인증이나 인가 절차 등 다른 통제가 동작하지 않을 때 비인가자에게 데이터를 노출하지 않도록 보호하기 위한 암호화의 개념과 구현 방법도 알아본다.
4장, 저장된 데이터 보안
데이터를 분산해 저장하는 마이크로서비스 아키텍처의 특징을 알아보고 암호화와 접근 통제를 사용해 S3, 람다, 데이터베이스 등 AWS의 저장소 메커니즘을 보호하는 방법을 소개한다.
5장, 네트워크 보안
AWS 네트워킹에 대한 이해를 도울 수 있는 배경지식을 전달하고 VPC 간 통신을 가능하게 하는 방법들과 AWS에 추가할 수 있는 다양한 네트워크 통제에 대해 다룬다.
6장, 대외 공개 서비스
최종 사용자와 상호작용의 필요성 때문에 퍼블릭 영역에서 운영해야 하는 서비스를 API Gateway, 배스천 호스트, AWS CloudFront, WAF, Shield 등으로 안전하게 설계하고 보호하는 방법을 설명한다.
7장, 전송 보안
전송 암호화를 구현하는 데 사용할 TLS 관련 배경지식과 다양한 마이크로서비스 통신 패턴에 TLS를 적용하는 방법을 전달하고 CloudFront의 필드 수준 암호화 기능을 소개한다.
8장, 조직의 복잡성을 고려한 보안 설계
마이크로서비스를 개발 및 운영하는 조직 구조에 맞게끔 보안 조치를 설계하는 방법과 이를 지원하는 AWS 도구들을 살펴본다.
9장, 모니터링과 사고 대응 미국 국립 표준 기술원의 사고 대응 프레임워크를 간략히 소개하고, 해당 프레임워크에 맞춰 대응할 수 있도록 도와주는 AWS의 서비스 및 도구를 살펴볼뿐만 아니라 보안 인프라를 보호하기 위한 모범 사례를 다룬다.

옮긴이 소개

박상영

‘미래 유망 직종 1위’라는 달콤한 말에 현혹돼 보안 분야에 입문한, 여전히 자기계발의 끈을 놓지 않고 있는 이커머스 기업의 (개인)정보 보호 담당자다. 좋아하는 분야의 전문가가 되고 싶다는 뚜렷한 목표와 해외에서 일하며 가족들에게 글로벌 경험을 쌓게 해주고 싶단 포부를 갖고 오늘도 하루를 살아간다.

목차

목차
  • 1장. 클라우드 기반 마이크로서비스 소개
    • 클라우드 정보 보안의 기초
      • 위험과 보안 통제
      • 조직의 보안 정책
      • 보안 사고와 보안의 3요소
      • AWS 공동 책임 모델
    • 클라우드 아키텍처와 보안
      • 모듈화를 통한 보안
      • 단순화를 통한 보안
      • AWS의 완전 관리형 서비스를 통한 보안
      • 폭발 반경과 격리
      • 심층 방어와 보안
      • 경계 보호를 통한 보안
      • 제로 트러스트 아키텍처를 통한 보안
    • 소프트웨어 아키텍처에 대한 간략한 소개
      • 계층형 아키텍처
      • 도메인 주도 설계
    • 마이크로서비스
    • AWS에서 마이크로서비스 구현
      • 컨테이너 기반 마이크로서비스 아키텍처
      • 쿠버네티스의 매우 간략한 소개
      • 서비스형 함수: AWS 람다를 사용한 FaaS
    • 클라우드 마이크로서비스 구현 개요
      • 아마존 EKS
      • 아마존 EKS Fargate 모드
      • AWS 람다를 사용한 서비스형 함수
      • 마이크로서비스 구현 요약
    • 마이크로서비스 통신 패턴 예
      • 예제 1: 콘텍스트 간 단순 메시지 전달
      • 예제 2: 메시지 큐
      • 예제 3: 이벤트 기반 마이크로서비스
    • 요약

  • 2장. 인가와 인증 기초
    • AWS IAM의 기초
      • AWS의 권한 주체
      • IAM 정책
      • 최소 권한의 원칙
      • 최소 권한의 원칙과 폭발 반경
      • AWS IAM 정책의 구조
      • 권한 주체 기반 정책
      • 리소스 기반 정책
      • 신뢰 영역
      • 정책 평가
    • AWS IAM 정책의 고급 개념
      • IAM 정책 조건
      • AWS 태그와 속성 기반 접근 통제
      • Not 정책 요소: NotPrincipal 및 NotResource
      • IAM 정책 마무리
    • 역할 기반 접근 통제
      • 역할 기반 접근 통제 모델링
      • 역할 보호
      • 역할 수임
      • AWS CLI를 사용한 역할 수임
      • AWS 관리 콘솔을 사용한 역할 전환
      • 서비스 연결 역할
    • 인증 및 신원 관리
      • 인증의 기초
      • AWS의 자격증명 연동
      • SAML 2.0과 OpenID Connect를 사용한 자격증명 연동
    • 역할 기반 접근 통제와 마이크로서비스
      • 실행 역할
      • AWS 람다를 사용한 역할 기반 접근 통제
      • EC2와 인스턴스 메타데이터 서비스로 역할 기반 접근 통제
      • 서비스 계정이 필요로 하는 IAM 역할을 사용하는 아마존 EKS로 역할 기반 접근 통제
    • 요약

  • 3장. 암호화의 기초
    • 암호화의 간략한 개요
      • AWS에서 암호화의 중요성
      • 마이크로서비스 아키텍처에서 암호화의 중요성
      • AWS에서의 암호화
      • 키 기반 암호화의 보안 문제
      • 비즈니스 문제
    • AWS KMS
      • CMK를 사용한 기본 암호화
      • 봉투 암호화
      • 봉투 암호화 부연 설명
    • 보안과 AWS KMS
      • KMS 콘텍스트 및 추가 인증 데이터
      • 키 정책
      • Grants와 ViaService
      • CMK와 CMK의 구성 요소 및 지원되는 작업
      • 리전과 KMS
      • 비용, 복잡성, 규제 고려
    • 비대칭 암호화와 KMS
      • 암호화와 복호화
      • 디지털 서명(서명과 검증)
    • 도메인 주도 설계와 AWS KMS
      • 콘텍스트 경계와 암호화
      • 계정과 CMK 공유
      • KMS와 네트워크 고려 사항
      • KMS grant 재논의
    • KMS 계정과 토폴로지: 통합
      • 옵션 1: 경계 콘텍스트 내에 CMK 포함
      • 옵션 2: 전용 계정을 생성해 CMK 보유
    • AWS 시크릿 매니저
      • 시크릿 매니저의 작동 방식
      • AWS 시크릿 매니저의 비밀 값 보호
    • 요약

  • 4장. 저장된 데이터 보안
    • 데이터 분류 기초
    • KMS를 사용한 봉투 암호화 요약
    • AWS S3
      • AWS S3의 데이터 암호화
      • 버킷 정책을 사용한 S3 접근 통제
      • 아마존 GuardDuty
      • Glacier 저장소 잠금을 사용한 부인 방지
    • 컴퓨팅 서비스에 저장된 데이터 보안
      • AWS CodeGuru를 사용한 정적 코드 분석
      • AWS ECR
      • AWS 람다
      • AWS EBS
      • AWS에서 제공하는 도구 요약
    • 마이크로서비스 데이터베이스 시스템
      • AWS DynamoDB
      • 아마존 오로라 관계형 데이터 서비스
    • 미디어와 데이터 삭제
    • 요약

  • 5장. 네트워크 보안
    • AWS 네트워킹
      • 통제
      • 모놀리식과 마이크로서비스 모델에 대한 이해
      • 세분화와 마이크로서비스
      • 소프트웨어 정의 네트워크 파티션
    • 서브넷팅
      • 서브넷 내에서의 라우팅
      • 게이트웨이와 서브넷
      • 퍼블릭 서브넷
      • 프라이빗 서브넷
      • 서브넷과 가용 영역
      • 서브넷에서 인터넷 접근
    • VPC
      • VPC 내에서의 라우팅
      • 네트워크 계층에서 마이크로세분화
    • VPC 간 통신
      • VPC 피어링
      • AWS Transit Gateway
      • VPC 엔드포인트
      • VPC 간 통신 요약
    • 클라우드 환경의 방화벽
      • 보안 그룹
      • 보안 그룹 참조(체인) 및 설계
      • 보안 그룹의 속성
      • 네트워크 ACL
      • 보안 그룹과 네트워크 ACL 비교
    • 컨테이너와 네트워크 보안
      • 인스턴스 메타데이터 서비스 접근 차단
      • 파드를 프라이빗 서브넷에서 실행
      • 파드의 인터넷 접근 차단
      • 파드 간에 암호화된 네트워킹 사용
    • 람다와 네트워크 보안
    • 요약

  • 6장. 대외 공개 서비스
    • API 우선 설계와 API Gateway
    • AWS API Gateway
      • API Gateway 엔드포인트 유형
    • API Gateway 보안
      • API Gateway 통합
      • API Gateway 접근 제어
      • API Gateway 인프라 보안
    • AWS API Gateway 사용 시 비용 고려 사항
    • 배스천 호스트
      • 해결책
    • 정적 자산 배포(콘텐츠 전송 네트워크)
      • AWS CloudFront
      • 서명된 URL과 쿠키
      • AWS Lambda@Edge
    • 엣지 네트워크를 알려진 공격으로부터 보호
      • AWS WAF
      • AWS Shield와 AWS Shield Advanced
      • 마이크로서비스와 AWS Shield Advanced
      • 엣지 보호를 위한 비용 고려 사항
    • 요약

  • 7장. 전송 보안
    • TLS 기초
      • 디지털 서명
      • 인증서, 인증기관, 신원 검증
      • TLS 암호화
    • 마이크로서비스 환경의 TLS 종료와 종료 지점별 장단점
      • TLS 오프로딩과 종료
    • 전송 암호화 적용 시 발생 비용과 복잡성
    • 마이크로서비스에 TLS 적용
      • 메시지 큐(AWS SQS) 사용 시 전송 암호화 적용
      • gRPC와 애플리케이션 로드밸런서
      • mTLS
    • 서비스 메시에 대한 보안 관점의 간략한 소개
      • 프록시와 사이드카
      • App Mesh 구성 요소와 용어
      • TLS와 App Mesh
      • mTLS 재논의
      • AWS App Mesh 요약
    • 서버리스 마이크로서비스와 전송 암호화
      • AWS API 게이트웨이와 AWS 람다
      • 캐싱, API 게이트웨이, 전송 암호화
    • 필드 수준 암호화
    • 요약

  • 8장. 조직의 복잡성을 고려한 보안 설계
    • 조직 구조와 마이크로서비스
      • 콘웨이의 법칙
      • 단일 팀 지향 서비스 아키텍처
      • 역할 기반 접근 통제
      • 권한 상승
      • 권한 경계
      • 책임을 위임하기 위한 권한 경계
    • 대규모 조직을 위한 AWS 계정 구조
      • AWS 계정과 팀
      • AWS Organizations
      • 조직 단위와 서비스 제어 정책
      • 목적 기반 계정
    • 조직 관리를 위한 AWS 도구
      • AWS Organizations 모범 사례
      • AWS Resource Access Manager
      • AWS RAM을 사용한 공유 서비스
      • IAM Identity Center를 사용한 AWS SSO
      • 계정에 멀티팩터 인증 적용
    • 역할 기반 접근 통제, SSO, AWS Organizations를 사용한 복잡한 도메인 기반 조직 단순화
    • 요약

  • 9장. 모니터링과 사고 대응
    • 미국 국립 표준 기술원 사고 대응 프레임워크
      • 단계 1: 설계 및 준비
      • 단계 2: 탐지 및 분석
      • 단계 3: 억제 및 격리
      • 단계 4: 포렌식 분석
      • 단계 5: 재발 방지
      • 단계 6: 사후 활동
    • 보안 인프라 보호
      • CloudTrail 보안
      • 목적 기반 계정
    • 요약

  • 부록 A. 테라폼 클라우드에 대한 짧은 소개
  • 부록 B. AWS와의 연동을 지원하는 SAML 자격증명 공급자의 예
  • 부록 C. AWS KMS를 사용한 암호화 실습
  • 부록 D. 최소 권한의 원칙 적용 실습

도서 오류 신고

도서 오류 신고

에이콘출판사에 관심을 가져 주셔서 고맙습니다. 도서의 오탈자 정보를 알려주시면 다음 개정판 인쇄 시 반영하겠습니다.

오탈자 정보는 다음과 같이 입력해 주시면 됩니다.

(예시) p.100 아래에서 3행 : '몇일'동안 -> 며칠동안