본문 바로가기

[AWS] IAM 접근제어 및 관리 이해하기

IAM ( Identity and Access Management, 식별 및 접근 관리 )


IAM은 사용자와 그룹을 생성하고 AWS의 각 리소스에 대해 접근제어와 권한관리를 제공하는 서비스. 또한 실제로 서비스를 제공하는 AWS 리소스가 아니라서 사용요금이 없다


IAM 특징

- 그룹과 사용자를 생성하여 접근제어 및 권한관리 세분화

- EC2 사용자만 관리 혹은 S3 사용자만 관리 등등 세분화 가능

- 보안성 강화

IAM 사용자도 AWS 콘솔 접속 가능

- 액세스 키를 별도로 생성할 수 있고, 이 액세스 키를 이용하여 AWS API를 사용

- EC2 인스턴스 전용으로 권한을 설정가능. 이것을 IAM 역할(Role) 부름


 Note: IAM은 리전별로 설정할 수 없고 모든 리전에서 동일하게 작동


[IAM 기본개념도]



즉 root 계정은 모든 권한이 다 들어있어서 잘못 사용했다가 과금폭탄테러를 맞을 수 있으니
IAM 계정을 만들어서 사용하는 편이 더 효율적이다. 또한 부서별로 권한을 나누어서 사용이 가능하다.


 ※ IAM 계정을 생성할 때 Programmatic access 를 체크해야 Access key와 Secret access key 가 발급되어 AWS API, CLI, SDK 등 다른 개발 툴에서 호출해서 사용이 가능하다.

또한 Secret access key는 다시 확인 할 수 없으므로 생성을 하고나서 어딘가에 잘 복사해 두어야 한다.


IAM 계정을 생성시에는 접근 정책권한이 ...엄청나게 많으므로 필요한 권한만 부여해서 생성하면 된다.