kui-vault/03.Note/IAM(Identity and Access Man...

3.3 KiB

id created tags
IAM(Identity and Access Management) 20260316 2026-03-16 13:35

💡 생각

사용자(User)가 가지는 권한이 무엇인지를 나열하고 필요한 사용자 혹은 그룹에 필요한 권한들을 원하는대로 부여할 수 있도록 구성해놓은 웹 서비스

AWS의 고유개념이 아니고 정보 보안 분야에서는 오랫동안 존재해온 표준적인 개념이자 기술 프레임워크.


📑 개념

"누가(인증)", "어떤 리소스에(권한)" 접근할 수 있는지를 중앙에서 관리를 해서 리소스에 대한 접근을 안전하게 제어할 수 있게 해주는 웹 서비스입니다.

📌 IAM의 핵심 구성 요소

  • 사용자 (User): 실제 사람이나 서비스(애플리케이션)를 나타냅니다. 고유한 보안 자격 증명(ID/PW 또는 Access Key)을 가집니다.

  • 그룹 (Group): 사용자들의 집합입니다. 그룹에 권한을 부여하면 그 그룹에 속한 모든 사용자가 동일한 권한을 상속받습니다. (예: Developers 그룹, Admins 그룹)

  • 역할 (Role): 특정 사용자에게 귀속되지 않고, 필요할 때만 잠시 빌려 쓰는 권한입니다. 주로 EC2 서버나 Lambda 함수 같은 AWS 서비스가 다른 서비스에 접근할 때 사용합니다.

  • 정책 (Policy): "무엇을 할 수 있는지"를 정의한 JSON 문서입니다. 사용자, 그룹, 역할에 이 정책을 연결(Attach)하여 권한을 부여합니다.

주요 기능과 특징

기능 설명
세분화된 권한 제어 특정 S3 버킷의 파일만 읽게 하거나, 특정 시간대에만 접속을 허용하는 등 매우 정밀한 설정이 가능합니다.
다요소 인증 (MFA) 아이디/비번 외에 OTP(Google Authenticator 등)를 추가하여 보안을 한층 강화할 수 있습니다.
자격 증명 연동 (Federation) 기업의 기존 계정(Active Directory 등)이나 구글/페이스북 계정으로 AWS에 로그인할 수 있게 지원합니다.
비용 무료 IAM 서비스 자체 사용에 따른 추가 비용은 없습니다.

📝 노트

[!note]

IAM 설계의 황금률: "최소 권한의 원칙"

보안 사고를 막기 위해 IAM을 운영할 때 가장 중요한 원칙은 **최소 권한의 원칙 (Least Privilege)**입니다.

  • 사용자에게 업무에 꼭 필요한 권한만 부여합니다.

  • 루트(Root) 계정은 가급적 사용하지 않고, 일상 업무용 IAM 사용자를 따로 만들어 사용합니다.


!Pasted image 20260316134417.png 사용자가 하나 있고 역할은 21개가 있고 정책은 1개가 생성되어있음.

!Pasted image 20260316134502.png !Pasted image 20260316134525.png 사용자는 dihwang 하나가 있는데 AdministratorAccess 라는 이름의 정책을 가지고있다.

!Pasted image 20260316134705.png 이 AdministratorAccess 정책에는 총 464개의 권한이 있다. 즉, dihwang 사용자는 464개의 기능을 사용할 권한이 있다는 뜻이 된다.