새로운 프로젝트를 시작하게 되면서, 그동안은 편의를 위해 Admin 계정 하나로 모든 걸 해결하던 방식을 버리기로 마음먹었습니다. 보안 사고의 가능성이 늘 맘에 걸렸기 때문이죠. 이번에는 AWS의 보안 모범 사례를 제대로 준수하며, 필요한 서비스들을 충분히 검토하고 설계해 보고자 합니다.
왜 IAM Identity Center를 선택했나?
AWS의 보안 모범 사례를 살펴보면 항상 강조하는 것들이 있습니다. 루트 계정은 사용하지 말고, 최소한의 권한만 부여하며, 가능하다면 임시 보안 인증을 사용하라는 것이죠. 특히 실제 사람이 사용하는 계정은 일반 IAM 유저 대신 IAM Identity Center를 사용하라고 권장하고 있었습니다.
처음에는 ‘우리처럼 작은 조직에서도 굳이 써야 하나?’ 싶었는데, 조금 더 알아보니 몇 가지 확실한 장점들이 보였습니다.
-
중앙 집중식 관리: 여러 AWS 계정과 애플리케이션 접근을 한곳에서 관리할 수 있습니다. 지금은 계정이 하나지만, 나중에 프로젝트가 커지면 분명 강력한 기능이 될 겁니다.
-
강화된 보안: MFA(다중 인증)가 기본이고, 모든 접근이 단기 세션 기반의 임시 인증으로 이루어집니다. 즉, 실수로 Access Key가 유출되어도 그 유효기간이 매우 짧아 피해를 최소화할 수 있습니다.
-
권한 관리의 명확성: 사용자에게 직접 권한을 주는 게 아니라, ‘역할(Permission Set)‘을 만들어 그룹에 할당하고, 사용자를 그룹에 소속시키는 방식입니다. 누가 어떤 권한을 갖는지 파악하기 훨씬 쉽습니다. 그래서 도입 전에 몇 가지를 스스로에게 물어봤습니다.
-
관리하기 복잡한가? 아니요, 생각보다 직관적입니다.
-
비용이 드는가? 아니요, 서비스 자체는 무료입니다.
-
장기적으로 확장성이 좋은가? 네, IAM 유저 방식보다 훨씬 뛰어납니다.
-
보안에 이득이 있는가? 네, 이게 핵심입니다. 사용하지 않을 이유가 없다고 판단했습니다.
그래서 뭘 해야 하나?
계획은 다음과 같이 세웠습니다.
- 루트 계정에 강력한 암호와 MFA를 설정한다.
- 루트 계정은 이후에 사용하지 않도록 봉인한다.
- IAM Identity Center를 사용해 IAM을 관리할 첫 관리자 계정을 생성한다.
- 이후에는 이 관리자 계정으로 로그인해서, Terraform 같은 도구로 필요한 다른 사용자나 역할을 관리한다. 이번 포스팅에서는 3번 과정, 즉 IAM Identity Center로 첫 관리자 계정을 만드는 과정을 상세히 다뤄보겠습니다.
IAM Identity Center으로 IAM 관리자 계정 만들기
1. IAM Identity Center 활성화
가장 먼저 할 일은 IAM Identity Center를 사용할 리전에서 활성화하는 것이었습니다. AWS 콘솔에서 몇 번 클릭하면 간단히 끝납니다.
2. IAM 관리자 그룹 및 사용자 생성
저는 권한을 사용자 개인이 아닌 그룹에 부여하고, 사용자를 그룹에 할당하는 방식을 선호합니다. 이게 나중에 관리가 훨씬 편하더군요. 먼저 IAM 관리자 역할을 할 그룹과 사용자를 만들어 보겠습니다.
3. Permission Set (권한 세트) 생성\
그룹을 만들었으니, 이제 이 그룹에 부여할 권한의 묶음, 즉 ‘Permission Set’을 만들 차례입니다.
4. Permission Set을 계정에 연결
이제 이전에 만든 그룹과 권한 세트를 현재 AWS 계정에 연결해 줍니다.
5. 생성한 사용자의 이메일로 초대 수락
이제 설정은 끝났습니다. 생성한 사용자 이메일로 AWS에서 보낸 초대 메일을 확인하고, 계정을 활성화할 차례입니다.

이번 포스팅에서는 IAM Identity Center 활성화와 기본적인 사용자 생성 방법을 다뤄봤습니다. 다음 포스팅에서는 오늘 만든 이 계정을 사용해서, Terraform으로 AWS 리소스를 관리하는 방법을 알아보겠습니다.
- https://docs.aws.amazon.com/ko_kr/IAM/latest/UserGuide/root-user-best-practices.html ↩︎
- https://docs.aws.amazon.com/ko_kr/IAM/latest/UserGuide/best-practices.html ↩︎
- https://docs.aws.amazon.com/ko_kr/IAM/latest/UserGuide/best-practices.html#bp-users-federation-idp ↩︎
- https://aws.amazon.com/ko/iam/identity-center/faqs/ ↩︎