프로젝트 AWS S3 버킷 생성 후 IAM 권한 관리 하는 방법

2025. 2. 5. 17:18·개발 프로젝트
목차
  1. 요구사항
  2. 🔹 Root 계정 vs. IAM 계정 차이
  3. 선택적 권한 부여
  4. 트러블슈팅
  5. 권한 부여 성공

요구사항

빠르고 안정적인 프로필 이미지 이용을 위해 AWS S3 버킷을 사용하기로 했다.

S3 버킷 만드는 방법은

[AWS] S3 개념 및 버킷 만들기 (파일 업로드) — yeonnys' 개발일지

 

[AWS] S3 개념 및 버킷 만들기 (파일 업로드)

S3란?AWS(Amazon Web Service)의 S3는 Simple Storage Sevice의 약어로, 인터넷 스토리지 서비스를 의미한다. 쉽게 말하자면, 구글 드라이브처럼 파일을 저장하여 다른 사람들과 쉽게 공유할 수 있는 파일 저

yeonnys.tistory.com

 

내 root 계정으로 S3 버킷 생성 후 접근할 팀원의 IAM 권한을 부여해야한다.

root는 전지전능한 계정, iam은 root 하위의 허용된 권한만 이용가능한 계정이라고 보면 된다. 

 

🔹 Root 계정 vs. IAM 계정 차이

항목                        Root 계정                                                                  IAM 계정

설명 AWS를 처음 생성할 때 만든 최고 관리자 계정 Root 계정이 만든 하위 계정으로, 권한이 제한됨
권한 AWS의 모든 서비스와 리소스에 대한 무제한 권한 할당된 권한만 사용 가능
삭제 가능 여부 ❌ 삭제 불가 ✅ 필요하면 삭제 가능
보안 위험 해킹 시 모든 리소스를 삭제 가능 제한된 권한만 사용하므로 상대적으로 안전
사용 권장 여부 ❌ 사용 지양 (필요 시 IAM 계정 사용 권장) ✅ 일반적인 AWS 사용은 IAM 계정을 활용

 

나는 여기서 내 ROOT 계정에 대한 IAM 계정을 콘솔에서 로그인 할 수 있게 하려고 한다.

 

AWS 서비스 검색에서 IAM 검색 후 왼쪽 바에서 사용자를 클릭한다.

 

오른쪽에 액세스 거부는 권한 경계가 S3 접근만 허용된 IAM 계정으로 접근해서 그렇다.

 

선택적 권한 부여

트러블슈팅

권한 경계만 설계했는데 해당 IAM 계정으로 AWS 콘솔에 로그인 해보니 ROOT계정에 생성되어 있는 S3 버킷이 안 보였다.

실질적으로 권한을 부여하는 것은 '권한 정책' 칸에서 관리하고 '권한 경계'는 최대 허용 가능한 권한을 제한하는 칸이다.

 

항목          권한 정책 (Policy)                                               권한 경계 (Permission Boundary)

설명 사용자의 권한을 부여하는 정책 최대 허용 가능한 권한을 제한하는 정책
주 용도 특정 사용자/그룹/역할(Role)에게 권한을 부여할 때 사용 IAM 사용자가 가질 수 있는 최대 권한을 제한할 때 사용
우선순위 정책이 허용하는 모든 권한을 사용할 수 있음 권한 정책이 허용하더라도, 경계를 초과하면 해당 권한을 사용할 수 없음
예시 "S3 버킷에 접근 가능하도록 설정" "이 사용자는 S3 관련 작업만 가능하도록 제한"

 

 

나는 팀원 한 명에게만 권한을 부여할것이라 1:1 정책 생성방식인 인라인 정책 생성을 선택했다.

권한 정책 클릭 - 인라인 정책 생성 - 권한 지정에서 서비스 선택 S3 선택 후 정책 이름 설정해주면 완료된다.

권한 부여 성공

IAM 계정에서 S3버킷에 대한 접근이 가능한 걸 볼 수 있다.

'개발 프로젝트' 카테고리의 다른 글

Kubernetes가 왜 많이 쓰이나요? (학습과 프로젝트 도입)  (0) 2025.03.23
Buffer와 Cache의 차이와 GIT SUBMODULE 사용, 도커 트러블슈팅 err_name_not_resolved  (0) 2025.03.12
Docker-compose 환경 has blocked by CORS policy 문제  (0) 2025.02.17
JIRA 활용법 - 가장 높은 점유율의 일정 관리 툴  (1) 2025.02.02
공공데이터포털 데이터 MySQL에 csv파일로 import하는 방법  (1) 2024.12.23
  1. 요구사항
  2. 🔹 Root 계정 vs. IAM 계정 차이
  3. 선택적 권한 부여
  4. 트러블슈팅
  5. 권한 부여 성공
'개발 프로젝트' 카테고리의 다른 글
  • Buffer와 Cache의 차이와 GIT SUBMODULE 사용, 도커 트러블슈팅 err_name_not_resolved
  • Docker-compose 환경 has blocked by CORS policy 문제
  • JIRA 활용법 - 가장 높은 점유율의 일정 관리 툴
  • 공공데이터포털 데이터 MySQL에 csv파일로 import하는 방법
maxwithjude
maxwithjude
maxwithjude 님의 블로그 입니다.
  • maxwithjude
    maxwithjude 님의 블로그
    maxwithjude
  • 전체
    오늘
    어제
    • 분류 전체보기 (30)
      • 네트워크 (2)
      • 프론트 (2)
      • Devops (7)
      • 데이터베이스 (6)
      • 영어회화 + 자격증 (2)
      • 개발 프로젝트 (10)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    vue3
    Sendbird
    db 압축
    채팅api
    오픽후기
    typeorm
    EC2
    싸피
    AWS
    티스토리챌린지
    db 락
    vroid studio
    오블완
    센드버드
    부하테스트
    Nest.js
    버튜버
    인덱스
    버츄얼 모델 프로젝트
    오픽주엽
    ssl/tls
    osi 응용계층
    db 격리수준
    버츄얼 모델
    Vtuber
    innodb
    Docker
    mysql #db #database #성능 최적화
    mysql
    mysql에러로그
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
maxwithjude
프로젝트 AWS S3 버킷 생성 후 IAM 권한 관리 하는 방법

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.