AWS - IAM 사용자(user), 역할(role), 정책 질문사항

희운·2025년 7월 4일

aws

목록 보기
6/9

1."springBoot 에서 S3 에 접근할때 사용자를 만들고, 권한을 주고, 엑세스 키로 접근한다는게 맞나요 ?"

-> 맞습니다! 완전히 정확한 이해예요!
이때 이 IAM 사용자는 인간이 아니라 프로그램(Spring Boot) 이 사용하는 계정이라고 생각하시면 이해하시기 편할거에요 ~
Spring Boot에서 S3 접근 = “프로그래밍 접근 전용 사용자” + 권한 부여 + 액세스 키 발급” 인거죠 !!

"CodeDeploy가 EC2 를 이용(접근)하기 위해? CodeDeploy 정책을 받아야한다길래헷갈립니다ㅠㅠ”"
"springBoot->S3 에 접근하기위해서 S3FullAccess 가 필요했던 것처럼 ‘대상’ 에 대한 정책을 얻는게 맞지 않나요 ?"
-> 우선 핵심 개념 먼저 집어드릴게요 ~
"IAM 사용자"는 외부(Github Action, spring서버)에서 AWS 서비스를 쓸(접근할) 때 사용해요 !
"역할"은 AWS 내부 서비스(EC2, S3, CodeDeploy)에서 AWS 내부 서비스를 쓸(접근할)때 사용해요 !

그래서"Spring Boot → S3"는 Spring Boot 앱이 클라이언트처럼 IAM 사용자 자격으로 S3에 요청을 보내요 !
"CodeDeploy → EC2"는 CodeDeploy 서비스가 EC2에 배포 명령을 내릴 수 있으려면, 그 EC2가 역할(Role)을 통해 배포 명령을 수락할 수 있어야 해요 ! 그리고 그역할에는 CodeDeploy 권한정책이 포함 되어있어야 해요 ~
"정책"은 자격증, "사용자/역할"은 신분" 이라고 생각하시면 좋아요 !

"springboot, redis, mysql 등 여러 컨테이너를 동시에 띄우고 싶으면 springboot는 ecr 에서 가져오고 redis , mysql 은 docker hub 에서 가져오게 compose.yml 작성하고 deploy.yml 만 약간 수정하면 되는거겠죠?"
-> 네 맞습니다 !! 말씀하신대로 compose.yml과 deploy.yml만 약간 수정하시면 됩니다 :)

혹시라도 추가로 궁금한 점이 있으시면 언제든 편하게 질문 주세요 ~~😊

profile
기록하는 공간

0개의 댓글