AWS

[AWS] S3 실습

어코링 2024. 2. 12. 15:43

여기서 파일과 오브젝트는 동의어

S3의 대시보드

S3는 지역이 상관없기 때문에 글로벌이 default 그리고 reigion 변경 불가 (비활성화)

버킷 만들기

일반 구성

버킷 이름은 고유한 이름이어야한다.

awslearner-s3-bucket이라고 함.

리전은 서울로 놔둠

버킷 선택 버튼 : 기존에 생성된 버킷 설정 그대로 가져와 만들고 있는 버켓에 적용할 수있다.

객체 소유권

액세스 제어 목록 ACL을 활성화 할지 안할지

ACL를 비활성화함으로써 루트 계정을 제외한 AWS 사용자 그 어느 누구도 이 버켓에 객체 소유권을 가질수 없다 

따라서 객체 소유권은 버킷 소유자만 적용된다. (객체 소유권은 버킷오너만)

이 버킷의 퍼블릭 액세스 차단 설정

체크 활성화 : 만들 버킷은 외부로부터 접근 불가 (다른 사람들이 버킷에 들어있는 데이터를 읽거나 업로드 불가) default aws에서도 권장사항

버킷 버전 관리

활성화 : 같은 버켓에서 똑같은 파일을 업로드 하더라도 파일이 덮어 씌워지는 것이 아니라 다른 버전으로 관리 되어진다.

예를들어 파일명은 똑같아도 콘텐츠는 달라질 수 있는데 여기서 다른 버전을 선택해서 사용자가 원하는 객체를 사용할 수 있다.

비활성화 : default

태그 (생략)

기본 암호화

고급 설정

객체 잠금에 대한 안목

활성화 : 버킷에 파일을 한번 업로드한 이상 파일을 덮어 씌우거나 삭제가 불가능해진다. ⭢ 원본파일을 오랜 시간 동안 복원하고 싶을 경우 사용되는 것

이렇게 버킷이 만들어짐

새로운 파일을 만들수도 있고 업로드 할수 있다

 

버킷에서 폴더 만들기

폴더 만들기 누른다

폴더

폴더 이름 : image

서버 측 암호화

폴터이름에도 암호를 걸수 있다

버킷은 암호화가 걸려 있지 않더라도 이렇게 특정 폴더만 암호화를 걸 수 있게 세부화되어있다.

암호화 키를 지정하지 마십시오. default로 지정

버킷에서 폴더에 파일 업로드

업로드 버튼 click

파일 추가 버튼 click ⭢ 이미지 파일 업로드하였음

대상 : 이 파일이 업로드 될 폴더 경로

현재 버킷의 버전 관리 및 암호화 여부를 확인 가능

권한 설정 : 파일에 대한 소유권을 정의 할 수 있다.

위 파란창은 버킷 만들때 ACL을 비활성화 했기 때문

스토리지 클래스 : default Standard

https://eocoring.tistory.com/31?category=1086596

 

[AWS] S3

S3 (Simple Storage Servise) : AWS에서 가장 처음으로 런칭한 프로그램 ✴ 안전하고 가변적인 Object 저장공간을 제공 (eg. Google Could) 외부에서 안전장치를 걸어서 안전하게 사용가능 / Object은 이미지, 동영

eocoring.tistory.com

이론에서 배운거 확인

서버 측 암호화 : default로 설정된 암호화 키를 지정하지 마십시오. 선택

추가 체크섬 : S3 버킷 오브젝트는 고유한 MD5 체크섬을 가지고 있다. 이 태그를 포함하여 데이터 무결성을 확인할 때 사용되어진다.

데이터 무결성이란? 업로드된 오브젝트가 일관적이며 깨지진 않았는지, 오브젝트가 삭제될 때까지 잘 복원되어지는지에 대한 것

태그 : 태그를 만들면 버킷에 들어있는 오브젝트들을 태그별로 묶어서 따로 관리할 수 있다. (잘 사용하면 유용)

메타데이터 : 생략

업로드 성공

 

이미지파일 열어보기

이미지 파일을 여는 방법은 여러가지가 있다

 

Object로 들어간 다음 열기 버튼 click 그러면 새탭이 뜨며 이미지가 열린다.

또 다른 방법은 객체 URL 복사한 다음에 새탭을 열어서 붙혀놓고 여는 방법

두번째 방법은 문제점이 있다. Access denied라는 메시지가 뜬다.

왜? 버켓을 만들때 퍼블릭 접근 권한을 차단했기때문에.

해당 URL 주소를 다른 사람이 다른 컴퓨터에서 열 경우 이미지 파일을 볼 수가 없다.

해결방법은? public 접근권한을 허용하면 됨.

 


다시 버킷으로 가서 image_public라는 새로운 폴더를 만들어 주겠다.

그리고 똑같은 파일을 업로드 하겠다. 

그런다음 버킷으로 돌아가서 권한 탭을 클릭

퍼블릭 액세스 차단 : 모든퍼블릭 액세스 차단이 활성화가 되어있기 때문에 위에서 URL을 통해 접근이 불가했던 것.

변경해주겠다. 편집 click

모든퍼블릭 액세스 차단 체크박스 해제 후 변경 사항 저장하면

보안상 문제가 있을수 있으니 경고창이 뜬다.

확인 타이핑 후 확인 click

다시 업로했던 파일을 열어서 

객체 URL을 복사해서 새탭으로 연다면 여전히 access denied 

비록 머킷은 퍼블릭 접근이 허용이 되었으나 object는 여전히 공개가 되어있지 않았다.

파일에 권한 탭으로 가서 ACL (액세스 제어 목록)에서 편집 버튼을 누른다.

그러면 피부여자가 총 3가지가 나오는데 두번째 모든 사람 퍼블릭 액세스라고 되어있는 곳에다가 읽기권한을 준다. 그리고 변경사항 저장

access denied의 창을 새로 고침하면 사진이 잘보여진다.