[AWS] IAM User/Group/Policy 생성 실습
IAM(Identity and Access Management) 은 글로벌 서비스이다.
각 AWS Account에는 Root Account가 있다. 하지만 Root Account를 사용하기보다 User를 생성하고 권한을 부여받아서 사용하는 것을 권장한다.
아래 가이드라인 및 베스트 프랙티스를 참고하자!
해당 가이드라인에 따라 실습을 진행하고자 한다. 나눠서 포스팅을 할 예정인데 이번에는 IAM User/Group/Policy 생성하는 실습으로 작성할 것이다.
IAM Guidlines & Best Practices
- AWS Account 설정을 제외하고는 Root Account를 사용하지 않는다.
- 한 사람 당 하나의 User Account를 사용한다.
- User를 Group에 할당하고 그 Group에 권한을 부여한다.
- 강력한 패스워드 정책을 만든다.
- MFA 사용!
- AWS 서비스에 권한을 부여할 땐 Role 사용
- CLI 또는 SDK를 사용할 땐 Access Key를 사용해라
- Account의 권한을 감사할 땐 IAM 자격 증명 보고서(IAM Credential Reports)와 IAM 액세스 분석기(IAM Access Advisor) 사용 가능
- 절대 IAM User와 Access Key를 공유하지 말 것!
IAM User 및 Group 생성
-
IAM User를 먼저 생성한다.
-
User를 Group에 추가하여 관리하는 것이 베스트 프랙티스이기 때문에 Group을 생성해 줄 것이다.
-
일단
AdministratorAccess
권한을 가진 administrator 그룹을 만든다. -
생성된 그룹을 선택해 준다.
-
설정 값을 검토하고 태그를 추가할 수 있다. 태그는 AWS 모든 리소스에 쓰이며 사용자의 접근을 추적, 조직, 제어할 수 있다.
-
User가 성공되었다는 메세지와 함께 로그인 정보를 csv 파일로 다운받아도 되고 안받아도 된다
-
IAM > 사용자 그룹(Groups)에서 확인해 보면 User
engineer_yoo
가administrator
Group에 소속된 걸 확인할 수 있다.Group
administrator
에는AdministratorAccess
정책을 소유하고 있다.따라서,
engineer_yoo
는administrator
이라는 Group을 통하여AdministratorAccess
권한을 승계받은 것이다.
IAM Policy
먼저 Group에서 engineer_yoo
를 지워서 권한을 없애고 시작하겠다!
그럼 아래와 같이 어느 서비스에도 접근을 할 수 없는 상태가 된다.
(root 계정으로 로그인) 이 때 이 User에게 권한을 부여할 수 있는 방법은 아래와 같이 두 가지가 있다
-
첫 번째는 권한을 추가하거나 (그룹 권한, 사용자의 권한 복사, 직접 정책 연결)
-
두 번째는 직접 정책을 생성해서 연결할 수 있다.
기존에 있는 IAMReadOnlyAccess
정책을 연결해 주었다.
다시 engineer_yoo
로 로그인해서 IAM에 들어와 보면 접근 가능함을 확인할 수 있다!
다음 포스팅은..
- Role Switch
- IAM MFA
- IAM Role
- IAM 보안 도구
네 가지 더 남았다! 나머지 포스팅 다하고 느낀 점, 적용할 수 있는 사례, 목적 등을 고민해 봐야 겠다
Leave a comment