이름 | 내용 |
---|---|
IAM | AWS Identity and Access Management(IAM)은 AWS 리소스에 대한 액세스를 안전하게 제어할 수 있는 웹 서비스입니다. IAM을 사용하여 리소스를 사용하도록 인증(로그인) 및 권한 부여(권한 있음)된 대상을 제어합니다. |
Root Account | 기본적으로 생성되는 계정으로, 거의 사용되거나 공유될 일이 없습니다. |
Users | 같은 organization의 사람들 또는 그룹 사용자들 |
Groups | 오직 User만 포함가능합니다. 그룹안에 그룹은 불가능 |
유저는 그룹에 꼭 속할 필요는 없습니다. 그리고 유저는 다양한 그룹에 가입될수 있습니다.
유저들 또는 그룹들은 JSON 문서로된 정책에 접근할수 있습니다.
이 정책은 Permission, 유저들의 권한을 정의합니다.
AWS에서는 최소권한원칙을 중요시합니다. 유저가 필요하지 않은 권한까지 주지마세요.
IAM 정책은 상속될수도 있습니다. 한 유저가 다양한 IAM Policies를 가질수 있습니다.
이름 | 내용 |
---|---|
Version | Policy Language의 버전입니다. 보통 2012-10-17 을 사용합니다 |
Id | 정책의 분류가능한 ID입니다 (optional) |
Statement | 하나이상의 IAM 정책을 작성합니다 (requirement) |
Statement 요소는 정책의 주요 요소로서 필수입니다. Statement 요소는 단일 문 또는 개별 문의 배열을 포함할 수 있습니다. 각 개별 문 블록은 중괄호 { }로 묶어야 합니다. 여러 문의 경우 배열은 대괄호 [ ]로 묶어야 합니다.
이름 | 내용 |
---|---|
Sid | 구분 가능한 Statement입니다. (optional) |
Effect | 접근 허용 여부입니다. (Allow, Deny) |
Principal | 작성한 Statement가 적용되는 특정 계정, 유저, 역할입니다. |
Action | 허용되는 작업들을 작성합니다. |
Resource | 어느 resource에서 사용가능한 IAM 인지 정의합니다 |
Condition | 정책의 효력이 발생되는 시점에 대한 조건을 추가로 작성할수 있습니다. |
AWS에서는 비밀번호 정책을 설정할수 있습니다.
패스워드와 MFA를 활용해 계정을 더 안전하게 사용할수있습니다.
비밀번호가 해커에게 누출되더라도 물리장치가 없다면 로그인할수 없습니다.
IAM의 API 키를 발급받아 터미널에서 실행할수있습니다.
IAM 권한만 있다면 서비스의 동작을 명령어로 수행가능합니다.
Software 개발 언어로 사용할수 있는 개발툴입니다.
다양한 언어로 AWS 서비스를 사용할수 있는 SDK가 제공됩니다.
이 SDK 또한 API 키를 활용해서 서비스에 접근할수있습니다.
IAM 역할은 AWS 서비스에서 사용되는 IAM입니다.
예를 들어 EC2 서버가 S3 서비스를 사용하고자 한다면 어떻게 해야할까요?
EC2의 IAM 역할에 S3 정책을 넣어준다면 EC2에서 접근이 가능합니다.
계정의 모든 사용자와 암호, 액세스 키, MFA 디바이스 등 이들의 자격 증명 상태를 나열하는 자격 증명 보고서를 생성하고 다운로드할 수 있습니다. AWS Management Console, AWS SDK 및 명령줄 도구 또는 IAM API에서 자격 증명 보고서를 가져올 수 있습니다.
AWS Management Console, AWS CLI 또는 AWS API를 사용하여 IAM에 대해 마지막으로 액세스한 정보를 볼 수 있습니다. 마지막으로 액세스한 정보에는 Amazon EC2, IAM, Lambda, Amazon S3에 대해 마지막으로 액세스한 일부 작업에 대한 정보가 포함됩니다.
https://docs.aws.amazon.com/ko_kr/IAM/latest/UserGuide/introduction.html
https://www.udemy.com/course/best-aws-certified-solutions-architect-associate/