본문으로 건너뛰기

IAM

User

  • Root User(arn:aws:iam::<account-id>:root): 해당 계정의 모든 권한을 가진 사용자 계정입니다.
  • User는 사람이 될 수도 있고, 서비스가 될 수도 있습니다.
  • AWS CLI, boto3 등을 위해 사용됩니다.
  • arn:aws:iam::<account-id>:user/[<path>/]<user-name>로 관리됩니다.
  • 권한을 부여하는 방법은
    • 직접 Policy 연결
    • 원하는 Policy가 있는 그룹에 연결
    • Role에 권한을 부여하고 "Action": "sts:AssumeRole" + "Principal": {"AWS": "<user-arn>"}을 추가하여 연결
정보

Role을 사용하는 경우 aws sts assume-role을 사용하여 임시 AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN을 발급 받아서 사용하게 되는데, 여러 계정과 여러 권한을 행사해야 하는 경우 스위칭해가며 작업하는 것이 불편했습니다.

Group

  • Group은 User의 묶음입니다.
  • Group에 직접 Policy를 연결하여 권한을 부여합니다.

Role

  • 사람이 아닌 경우, 예를 들어 EC2, EKS 내의 POD 등에 권한을 부여할 때, 사용됩니다.
  • arn:aws:iam::<account-id>:role/[<path>/]<role-name>로 관리됩니다.
  • Role에 직접 Policy를 연결하여 권한을 부여합니다.

Policy