1. 개요

  • AWS의 S3을 알고 있다면 이해하기 쉽다. 객체(Object)를 저장하는 서비스이다.
  • 용량을 미리 프로비저닝할 필요가 없는 관리형 서비스이다.

2. 객체

  • 객체는 변경할 수 없다. 다만 새 버전을 만들 수 있을 뿐..
  • HTTPS 통신이 기본이다.

3. 버킷

  • 버킷이라는 컨테이너에 객체를 저장한다.
  • 버킷 이름은 고유하다.
  • 스토리지 클래스를 선택할 수 있다.
  • 이 버킷은 프로젝트와 연결되어 있고, 조직별로 프로젝트 그룹화가 가능하다.

4. 권한

4.1. 특징

  • 특정 사용자에게 억세스 권한을 부여할 수 있다.
  • 퍼블릭하게 설정하여 모든 사람이 접근할 수 있게 할 수 있다.
  • IAM, ACL로 설정할 수 있다. 
    ① 대부분은 Cloud IAM으로 제어 가능. 버킷이나 프로젝트 수준에서 제어 가능
    ② ACL은 리소스에 대한 권한만 제어하고 한정적인 권한 옵션을 갖고 있지만 개별 객체당 권한 부여가 가능. AWS S3에서 마이그레이션 할 때 사용.

4.2. 억세스 컨트롤

  • ACL은 사용자 범위, 혹은 권한(read/write)
  • 권장사항
    ① 권장 : 균일한 억세스 제어 (데이터 유출 가능성이 낮다, 버킷 수준에서 권한 부여 시 새 파일이 버킷에 추가되도 서로 다른 버킷끼리 파일 볼 수 없음)
    ② 비권장 - 세분화된 억세스 제어 (데이터 유출 가능성이 높다, 객체 권한을 올바르게 설정하지 않으면 다른 사용자끼리 파일을 볼 수 있다)
    예: 개인 정보와 같이 민감한 객체가 포함된 경우 권한을 간소화할 수 있게 균일한 억세스 권한이 있는 버킷에 데이터 저장을 권장