IAM
AWS Identity and Access Management(IAM)를 사용하면 AWS 서비스와 리소스에 대한 액세스를 안전하게
관리 할 수 있습니다. 또한, AWS 사용자 및 그룹을 만들고 관리하며 AWS 리소스에 대한 액세스를 허용 및 거부 할 수 있습니다.- AWS 어카운트 관리 및 리소스/사용자/서비스의 권한 제어
- 서비스 사용을 위한 인증 정보 부여
- 사용자의 생성 및 관리 및 계정의 보안
- 사용자의 패스워드 정책 관리(일정 시간마다 패스워드 변경 등)
- 다른 계정과의 리소스 공유
- Identity federation(Facebook 로그인, 구글 로그인 등)
- 계정에 별멍 부여 가능 → 로그인 주소 생성 가능
- IAM은 글로벌 서비스 (Region별 서비스가 아님)
IAM 구성
IAM의 권한 검증
ex) 사용자가 S3를 사용하고 싶을 경우
ex) Lambda에서 S3 서비스를 이용하고 싶을 경우
사용자의 종류
- 루트 사용자: 결제 관리를 포함한 계정의 모든 권한을 가지고 있음
- 관리 목적 이외에 다른 용도로 사용하지 않는 것을 권장
- 탈취 되었을 때 복구가 매우 어려움 → MFA를 설정하는 것을 권장
- MFA(Multi-factor authentication): 일회용 패스워드를 생성하여 로그인
- IAM 사용자: IAM을 통해 생성해서 사용하는 사용자
- 한 사람 혹은 하나의 어플리케이션을 의미
- 설정 시 콘솔 로그인 권한 부여 가능
- 설정 시 AWS 서비스를 이용할 수 있음
- Access Key
- Secret Access Key
IAM 자격 증명 보고서
- 계정의 모든 사용자와 암호, 액세스 키, MFA 장치등의 증명 상태를 나열하는 보고서를 생성하고 다운로드 가능
- 4시간에 한번씩 생성 가능
- AWS 콘솔, CLI, API에서 생성 요청 및 다운로드 가능
- 포함되는 정보
IAM 모범 사용 사례
- 루트 사용자는 사용하지 않기
- 불필요한 사용자는 만들지 않기
- 가능하면 그룹과 정책을 사용하기
- 최소한의 권한만을 허용하는 습관을 들이기 (Principle of least priviledge)
- MFA를 활성화 하기
- AccessKey 대신 역할을 활용하기
- IAM 자격 증명 보고서 (Credential Report) 활용하기
![IAM 기초- aws_introduction[4]](/_next/image?url=https%3A%2F%2Fwww.notion.so%2Fimage%2Fhttps%253A%252F%252Fprod-files-secure.s3.us-west-2.amazonaws.com%252Fd715e42f-5ece-4a62-9155-8ef2d8d7d58b%252Ff734dbd4-c572-47c6-bc24-4e606e28cb94%252F%2525E1%252584%252589%2525E1%252585%2525B3%2525E1%252584%25258F%2525E1%252585%2525B3%2525E1%252584%252585%2525E1%252585%2525B5%2525E1%252586%2525AB%2525E1%252584%252589%2525E1%252585%2525A3%2525E1%252586%2525BA_2024-05-14_%2525E1%252584%25258B%2525E1%252585%2525A9%2525E1%252584%252592%2525E1%252585%2525AE_1.05.08.png%3Ftable%3Dblock%26id%3Db23e94dd-561e-40d1-88a1-8e95d9f46857%26cache%3Dv2&w=3840&q=75)