CLF-C02 Security
· 16 min read
AWS 공동 책임 모델
AWS는 사용자 환경의 일부분을 책임지고 고객은 다른 부분을 책임지는 개념을 공동 책임 모델 이라고 한다.
고객 : 클라우드 내부의 보안
-
고객은 AWS 클라우드 내에서 생성하고 배치하는 모든 것의 보안을 책임
- 서비스, 시스템의 복잡성
- 회사별 운영 및 보안 요구 사항
- 운영체제 구성 및 패치
- 보안 그룹 구성
- 사용자 계정 관리
AWS: 클라우드 자체의 보안
-
AWS는 클라우드 자체의 보안을 담당
-
AWS는 인프라의 모든 계층에서 구성 요소를 운영, 관리 및 제어
- 데이터 센터의 물리적 보안
- 하드웨어 및 소프트웨어 인프라
- 네트워크 인프라
- 가상화 인프라
사용자 권한 및 엑세스
AWS Identity and Access Management (IAM)
-
IAM을 사용하면 AWS 서비스와 리소스에 대한 엑세스를 안전하게 관리
-
IAM 기능
- IAM 사용자, 그룹 및 역할
- IAM 정책
- 다중 인증 (MFA)
AWS 계정 루트 사용자
- AWS 계정을 처음 만들면 루트 사용자 라고 하는 자격증 명으로 시작
- 루트 사용자는 AWS 계정을 만들 때 사용한 이메일 주소 및 암호로 로그인하여 액세스
- 모든 AWS 서비스 및 리소스에 대한 전체 액세스 권한을 가짐
AWS Directory Service
- AWS Directory Service는 디렉터리 인식 워크로드와 AWS 리소스가 AWS 클라우드에서 관리형 Active Directory를 사용
AWS Single Sign-On (SSO)
- 여러 AWS 계정 및 비즈니스 애플리케이션에 대한 SSO 액세스를 중앙에서 쉽게 관리할 수 있게 해주는 클라우드 SSO 서비스
- Cognito와 달리 모바일 앱에 사용자 로그인, 가입 및 액세스 제어를 추가하는 쉬운 방법을 제공하지 않음
Amazon Cognito
- 웹 및 모바일 앱에 사용자 가입, 로그인 및 액세스 제어를 빠르고 쉽게 추가
- Facebook, Google, Amazon과 같은 소셜 자격 증명 공급자 및 SAML 2.0을 통한 엔터프라이즈 자격 증명 공급자와의 로그인을 지원
Amazon Cognito Identity Pool
- Amazon Cognito 자격 증명 풀은 게스트(인증되지 않은) 사용자와 인증되어 토큰을 받은 사용자에게 임시 AWS 자격 증명을 제공
- Amazon Cognito 자격 증명 풀을 사용하면 고유한 자격 증명을 생성하고 사용자에게 권한을 할당
- Facebook, Google 또는 SAML 기반 ID 공급자와 같은 외부 ID 공급자를 통해 인증하는 사용자 관리
Amazon Cognito User Pool
- 사용자 풀은 Amazon Cognito의 사용자 디렉터리
- 인증되지 않은 ID에는 액세스할 수 없음
AWS AppSync
- 애플리케이션 관련 사용자 데이터의 기기 간 동기화를 가능하게 하는 서비스
AWS IAM Identity Center
- Microsoft Active Directory 도메인 서비스, Okta와 같은 ID 소스의 자격 증명을 사용하여 여러 AWS 계정에 대한 액세스를 중앙에서 관리
IAM 사용자
- IAM 사용자 는 사용자가 AWS에서 생성하는 자격 증명
- 기본적으로 AWS에서 새 IAM 사용자를 생성시, 해당 사용자와 연결된 권한은 없음
- 특정 작업을 수행하도록 IAM 사용자에게 필요한 권한을 부여해야 함
- 액세스 키는 IAM 사용자 또는 AWS 계정 루트 사용자에 대한 장기 보안 인증
IAM 정책
- IAM 정책은 AWS 서비스 및 리소스에 대한 권한을 허용, 거부하는 문서
- 사용자가 리소스에 액세스할 수 있는 수준을 사용자 지정
최소 권한의 보안 원칙
- 권한을 부여할 때 사용자 또는 역할이 해당 작업을 수행하는 데 필요한 것보다 많은 권한을 갖는 것을 방지
예: IAM 정책
![]() | 이 예제 IAM 정책은 ID가 AWSDOC-EXAMPLE-BUCKET인 Amazon S3 버킷의 객체에 액세스할 수 있는 권한을 허용합니다. |
IAM 그룹
- IAM 그룹은 IAM 사용자의 모음
- 그룹에 IAM 정책을 할당하면 해당 그룹의 모든 사용자에게 정책에 지정된 권한이 부여됨
IAM 역할
- 임시로 권한에 액세스하기 위해 수임할 수 있는 자격 증명
- 특정 작업을 수행해야 하는 AWS서비스나 외부 엔터티에 임시로 권한 제공
- IAM 역할은 서비스 또는 리소스에 대한 액세스 권한을 장기적이 아니라 일시적으로 부여해야 하는 상황에 이상적
다중 인증(MFA)
- IAM에서 다중 인증(MFA)은 AWS 계정에 추가 보안 계층을 제공