S3 생성

버킷 이름은 리전과 상관없이 중복되는 버킷 이름은 줄 수 없다.

그리고, ‘버킷 선택’ 버튼을 통해 기존에 생성된 bucket 설정을 그대로 가져와서 지금 만들 bucket에 그대로 적용시키는 기능이 있다.

스크린샷 2024-08-28 오전 12.42.58.png

ACL을 비활성하면, 루트 유저를 제외한 모든 사람은 이 bucket 객체 소유권을 가질 수 없다.

따라서, 객체 소유권은 bucket 오너만 적용된다는 뜻이다.

테스트용 정적 페이지 제공을 위해서 ACL을 활성화시켰다.

스크린샷 2024-08-28 오후 1.02.58.png

퍼블릭 엑세스 차단 설정으로 외부로부터 접근이 불가능하도록 할 수 있다. 처음 bucket을 만들 때 이렇게 퍼블릭 접근을 차단하는 기능이 디폴트로 설정되어 있다. 그리고 AWS에서도 외부 접근을 차단하는 것을 매우 권장하고 있는 부분이다.

외부에서 S3 버킷으로 액세스가 되는 것을 테스트해보기 위해 버킷의 퍼블릭 엑세스를 차단을 해지했다. 하지만 사용목적에 따라 보안상 알맞게 설정해서 사용해야한다.

스크린샷 2024-08-28 오후 1.05.12.png

버전 관리를 활성화하면 같은 bucket에서 똑같은 파일을 업로드하더라도 파일이 덮어씌워지는 것이 아니라 다른 버전으로 관리가 되어진다. 파일명은 똑같아도 콘텐츠는 달라질 수 있는데 여기서 다른 버전을 선택해서 우리가 원하는 객체를 사용할 수 있다.

스크린샷 2024-08-28 오전 1.46.06.png

기본 암호화는 객체를 bucket에 업로드할 때 자동으로 암호화를 걸 수 있는 설정이다. 암호화 키 유형은 SSE-S3, SSE-KMS, DSSE-KMS 세가지 유형이 제공된다.

스크린샷 2024-08-28 오전 1.46.17.png

마지막으로 고급설정을 열어보면 객체 잠금에 대한 항목이 나온다. 만약 객체 잠금을 활성화 시킨다면 bucket에 파일을 한 번 업로드한 이상 파일을 덮어씌우거나 삭제가 불가능해진다. 이는 bucket에 원본 파일을 오랜 시간동안 복원하고 싶을 경우 사용되는 것이다.

스크린샷 2024-08-28 오전 1.46.43.png

bucket 생성 완료!

파일 업로드

이제 만들어진 버킷에 외부에서 접근할 오브젝트를 생성해보자.

방금 만든 bucket으로 들어와 폴더를 생성해준다.

스크린샷 2024-08-28 오전 1.47.56.png

images라는 폴더를 하나 생성해본다.

AWS는 이렇게 폴더에도 암호화를 있게 제공해준다. bucket은 암호화가 걸려있지 않더라도 이렇게 특정 폴더만 암호화를 걸 수 있게 세분화되어 있다.

스크린샷 2024-08-28 오전 1.49.50.png

파일 업로드 하기.

images 폴더로 들어와서 업로드를 클릭하고, 간단한 이미지 하나를 업로드 해본다.

스크린샷 2024-08-28 오전 1.54.48.png

권한 설정을 통해 파일에 대한 소유권을 정의할 수 있다. 버킷을 생성할 때 ACL을 비활성화하면 ‘이 bucket에는 객체 소유권에 대한 버킷 소유자 적용 설정이 적용되어 있습니다.’ 라는 문구가 뜬다.

스크린샷 2024-08-28 오전 1.58.08.png

다음은 스토리지 클래스를 지정할 수 있는데, 객체의 용도에 따라 설정해주면 된다.

스크린샷 2024-08-28 오전 1.59.35.png

여기서도 서버측 암호화를 설정할 수 있는데, 지정하지 않음으로 설정했다.

스크린샷 2024-08-28 오전 2.01.07.png

체크섬 설정은 데이터 무결성 확인을 위해 사용되는 것이다. S3 bucket 오브젝트는 고유한 MD5 체크섬을 가지고 있는데 여기에 이 태그를 포함하여 데이터 무결성을 확인할 때 사용되어진다.

스크린샷 2024-08-28 오전 2.02.58.png

마지막으로 태그와 메타데이터를 정의할 수 있는데, 여기 태그를 만듦으로써 bucket에 들어있는 오브젝트들을 태그별로 묶어서 따로 관리할 수 있다.

스크린샷 2024-08-28 오전 2.03.56.png

만들어진 폴더에 이미지 파일 하나를 업로드한 후에 파일 정보에 대해 확인해본다.

오른쪽 상단에 ‘열기’ 버튼으로도 확인할 수 있지만 우린 외부에서 접근 테스트를 하기 위해 객체 URL을 통해 접속해봐야 한다.

스크린샷 2024-08-28 오후 1.23.32.png

객체 URL로 접근을 하면 다음과 같이 Access denied가 뜨게 된다.

스크린샷 2024-08-28 오후 1.24.51.png

그럼 이제 해당 객체의 권한을 확인해보자.

권한을 확인해보면 객체 소유자에 대해서 객체: 읽기, 객체 ACL: 읽기,쓰기 로 설정되어 있다.

스크린샷 2024-08-28 오후 1.25.58.png

우린 외부에서 접근 테스트를 하기 위해 ‘편집’을 통해 퍼블릭 엑세스에 대하여 객체:읽기 설정을 해주자.

스크린샷 2024-08-28 오후 1.27.53.png

해당 내용으로 설정한 후에 다시 객체 URL로 접속하면 이제 우리가 업로드한 객체가 외부에서 접근이 가능하게 설정이 되고, URL을 통해 파일을 확인할 수 있다.

스크린샷 2024-08-28 오후 1.28.53.png

태그: ,

카테고리:

업데이트:

댓글남기기