[SAA-C03] Instance Profile
[SAA-C03] Instance Profile — #개발자의도구들 #awsinstanceprofile #인스턴스프로필 * AWS SAA 도전기 목록: https://blog.naver....
#SAA-C03#Naver Blog
#개발자의도구들 #awsinstanceprofile #인스턴스프로필
\* AWS SAA 도전기 목록: https://blog.naver.com/jword\_/224028873217
Instance Pofile
관련 도메인: AWS IAM, EC2, Role
📌 Point
IAM Role vs Instance Profile
IAM Role
AWS 리소스(Ec2, Lambda 등)가 AWS서비스에 접근할 수 있도록 권한을 부여해주는 역할
- who can access what
- 구성요소
-
- Trust Policy (who)
- Permission Policy (what)
Instance Profile
EC2 인스턴스에 IAM Role을 연결하기 위한 껍데기
- EC2에서 Role을 사용할 수 있게하는 껍데기
EC2는 직접 Role을 붙일 수 없다. 그래서 instance Profile을 통해서 Role을 간접적으로 사용하는 것이다.
- Instance Profile안는 단 하나의 Role만 포함할 수 있다.
예시
Ec2가 S3 버킷에 접근하고 싶다.
- IAM Role 생성
- Trust Policy연결까지
aws iam create-role --role-name EC2S3AccessRole \
--assume-role-policy-document file://trust-policy.json
- Iam Policy 연결
- Permisson Policy 연결까지
aws iam attach-role-policy --role-name EC2S3AccessRole \
--policy-arn arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess
- Instance Profile 생성 후 Role 연결
aws iam create-instance-profile --instance-profile-name EC2S3AccessProfile
aws iam add-role-to-instance-profile --instance-profile-name EC2S3AccessProfile \
--role-name EC2S3AccessRole
- Ec2에 Instance Profile연결
aws ec2 associate-iam-instane-profile \
--instance-id i-0123456789abcdef \
--iam-instance-profile Name="EC2S3AccessProfile"
시험 Tips
| 시험 상황 | 정답 / 설명 |
|---|---|
| “EC2 인스턴스가 S3 버킷에 접근해야 한다. Access Key를 코드에 넣고 싶지 않다.” | ✅ Instance Profile을 통해 Role 연결 |
| “EC2에서 다른 AWS 서비스 호출 시 인증 실패 발생” | ❌ Role만 생성하고 Instance Profile 미연결된 경우 |
| “IAM Role과 Instance Profile의 차이?” | Role은 권한 정의, Instance Profile은 Role을 EC2에 붙이는 수단 |
| “Lambda는 Instance Profile이 필요한가?” | ❌ 필요 없음 (Lambda는 직접 Role 연결 가능) |
| 문장 | 정답 |
|---|---|
| “EC2가 Role을 직접 쓸 수 있을까?” | ❌ → 반드시 Instance Profile 필요 |
| “Instance Profile은 무엇을 감싸는가?” | IAM Role |
| “다른 서비스(Lambda, ECS)는?” | Role 직접 연결 가능 (Instance Profile 불필요) |