IAM = Identity and Access Management
Region에 상관없는 글로벌 서비스.
AWS 어카운트를 만들면 루트 어카운트가 됩니다.
이 루트 어카운트는 유저를 만들 때만 쓰세요.
IAM으로 유저를 만들었으면 그룹에 넣을 수 있습니다.
그룹에는 유저만 넣을 수 있습니다, 그룹 안에 그룹을 넣을 수 없습니다.
유저는 하나 이상의 그룹에 들어갈 수 있습니다.
다음으로는 권한을 주어야 합니다.
'정책'이라고 하는 JSON 문서로 유저 또는 그룹이 어떤 권한을 가지게 할 것인지 세팅할 수 있습니다.
AWS에서는 사고의 위험을 줄이기 위해 최소 권한 룰을 쓰고 있습니다.
즉 유저가 필요로 하는 것 이상의 권한은 주지 않습니다.
루트 어카운트만 모든 권한을 가지고 있습니다.
루트 어카운트는 이와 같이 룰을 어기기 때문에 AWS 서비스를 쓰는 어카운트로는 알맞지 않은 것입니다.
Admin 어카운트가 있어야 한다면 따로 유저를 만들고,
Admin 그룹을 만들고 AdministratorAccess 정책을 세팅해 주면 됩니다.
그리고 유저에게는 태그를 달 수 있는데, 이는 유저들의 액세스를 매니지먼트 및 컨트롤하기에 도움을 줍니다.
만들어진 유저로 로그인을 할 때는 아래와 같이 계정 ID(12자리) 또는 계정 별칭을 써야 합니다.
이것들은 IAM 대시보드에서 볼 수 있습니다.
계정 별칭은 여러분이 정할 수 있으며, 12자리 계정 ID의 도메인 이름이라고 생각하면 됩니다.
IAM 롤이라는 것도 있는데, 이건 어떤 AWS 서비스에게 권한을 세팅하는 것입니다.
예를 들어 EC2에게 IAM에 대한 ReadOnly 권한을 줄 수 있습니다.
정책에 대해 좀 더 알아보겠습니다.
정책은 어떤 유저나 그룹에게 줄 수 있습니다.
AWS에서 만들어 놓은 정책을 써도 되고, JSON 문서를 만들어도 됩니다.
정책의 구조(JSON 문서)를 보겠습니다.
유저와 그룹의 시큐리티도 신경 써야 합니다.
2가지 방법이 있습니다.
IAM 보안 도구로는 2가지가 있습니다.
여러분이 만들었거나 AWS에 의해 관리되고 있는 정책을 테스트해 볼 수 있는 툴이 있습니다.
IAM Policy Simulator 툴이고 찾으면 바로 나오니 한 번 봐 보세요!