Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

hyewon's study

AWS Educate: Amazon Storage Service(Amazon S3) 실습 본문

AWS

AWS Educate: Amazon Storage Service(Amazon S3) 실습

hyeoni__ 2024. 5. 7. 16:31

Amazon S3란?

: 전 세계 어디에서나 원하는 만큼의 데이터를 수집, 저장, 분석하는 사용할 수 있는 객체 스토리지 서비스


Amazon S3 실습 단계

  • Amazon S3에 버킷 생성
  • Amazon S3에서 정적 웹 사이트 구성
  • 버킷에 콘텐츠 업로드
  • 객체에 대한 퍼블릭 액세스 활성화
  • 미리 서명된 URL을 사용하여 객체를 안전하게 공유
  • 버킷 정책을 사용하여 버킷 보호
  • 웹 사이트 업데이트
  • 파일 버전 탐색

 

1.  Amazon S3에 버킷 생성

AWS Management ConsoleServices(서비스) 메뉴에서 S3를 선택하고 Create bucket(버킷 만들기)을 선택합니다.

 

Bucket name(버킷 이름)website-527을 입력한 후  Object Ownership(객체 소유권)에서 ACL enabled(ACL 활성화)를 선택합니다.

저는 website-527로 설정하였고 숫자는 자유롭게 바꾸시면 됩니다.

 

Bucket owner preferred(버킷 소유자 기본 설정)를 선택한 후, Block Public Access settings for this bucket(이 버킷의 퍼블릭 액세스 차단 설정)에서 Block all public access(모든 퍼블릭 액세스 차단) 확인란의 선택을 취소한 다음 I acknowledge that the current settings might result in this bucket and the objects within becoming public(현재 설정으로 인해 이 버킷과 포함된 객체가 공개될 수 있다는 사실을 확인합니다) 확인란을 선택합니다.

 

Bucket Versioning(버킷 버전 관리)에서 Enable(활성화)을 선택한 후,  Tags(태그)에서 Add tag(태그 추가)를 선택하고 다음을 입력합니다.

Key(): Department

Value(): Marketing

그런 다음, Create bucket(버킷 생성)을 선택합니다.


2. Amazon S3에서 정적 웹 사이트 구성

Buckets(버킷) 섹션에서 새 버킷 이름을 선택하고, Properties(속성) 탭을 선택합니다. Static website hosting(정적 웹 사이트 호스팅) 패널로 스크롤하고. Edit(편집)을 선택합니다.

 

다음 설정을 구성하고 변경사항 저장을 합니다.

Static web hosting(정적 웹 호스팅): Enable(활성화)을 선택합니다.

Hosting type(호스팅 유형): Host a static website(정적 웹 사이트 호스트)를 선택합니다.

Index document(인덱스 문서): index.html을 입력합니다.

Error document(오류 문서): error.html을 입력합니다.

참고: index.html error.html이 이미 표시되어 있더라도 입력해야 합니다.

 

Static website hosting(정적 웹 사이트 호스팅) 패널의 Bucket website endpoint(버킷 웹 사이트 엔드포인트)에서 링크를 선택합니다. 버킷 사용 권한을 아직 구성하지 않았기 때문에 403 Forbidden(403 사용 권한 없음) 메시지가 표시됩니다.

403 사용 권한 없음 메시지 표시


3. 버킷에 콘텐츠 업로드

버킷에 정적 파일을 업로드합니다. Upload(업로드)를 선택하고, Add files(파일 추가)를 선택하고, 다운로드한 세 파일을 선택합니다. 파일 이름은 확장자를 포함하여 동일하게 유지되어야 합니다.

index.html

script.js

style.css

버킷에 정적 파일 업로드


4. 객체에 대한 퍼블릭 액세스 활성화

Amazon S3에 저장된 객체는 기본적으로 프라이빗으로 설정됩니다. 먼저 현재 객체 상태가 프라이빗인지 확인합니다.

403 Forbidden(403 사용 권한 없음) 메시지가 표시된 브라우저 탭으로 돌아가 웹 페이지를 새로 고침합니다. 403 Forbidden(403 사용 권한 없음) 메시지가 여전히 표시됩니다.

다음 두 가지 방법으로 Amazon S3 객체를 퍼블릭으로 설정할 수 있습니다.

Actions(작업) 메뉴에서 Make public using ACL(ACL을 사용하여 퍼블릭으로 설정)을 선택합니다.

ACL을 사용하여 퍼블릭으로 설정

 

Make public(퍼블릭으로 설정)을 선택합니다. 이제 정적 웹 사이트에 퍼블릭 액세스가 가능합니다.

퍼블릭으로 설정

 

403 Forbidden(403 사용 권한 없음) 메시지가 표시된 웹 브라우저 탭으로 돌아가서 웹 페이지를 새로 고침합니다.

이제 Amazon S3에서 호스트하는 정적 웹 사이트가 표시됩니다.

Amazon S3에서 호스트하는 정적 웹 사이트 표시


5. 미리 서명된 URL을 사용하여 객체를 안전하게 공유

객체를 사용자 또는 사용자 그룹과 일시적으로 안전하게 공유해야 하는 경우 미리 서명된 URL을 생성하면 됩니다.

new-report.png라는 파일을 다운 받아 Amazon S3 콘솔로 돌아가 Objects(객체) 탭을 선택해 Upload(업로드)를 선택합니다.

 

이번에는 객체를 퍼블릭으로 설정하는 대신 미리 서명된 URL을 만들어 파일에 액세스하겠습니다. Objects(객체) 탭에서 new-report.png를 선택하고 Actions(작업) 메뉴에서 Share with a presigned URL(미리 서명된 URL로 공유)을 선택합니다.

미리 서명된 URL과 공유

 

 

팝업 창에서 Time interval until the presigned URL expires(미리 서명된 URL이 만료될 때까지의 기간)를 구성합니다.

Minutes()를 선택하고 Number of minutes()2를 입력합니다.

 

Create presigned URL(미리 서명된 URL 생성)을 선택하고 페이지 상단의 배너에서 Copy presigned URL(미리 서명된 URL 복사)을 선택합니다. 새 브라우저 탭을 열고 주소 표시줄에 복사한 URL을 붙여넣으면 보고서가 웹 브라우저에 표시됩니다.

 


6. 버킷 정책을 사용하여 버킷 보호

웹 사이트 파일을 보호하고 누구도 삭제하지 못하도록 할 수 있습니다. 웹 사이트 파일에 삭제 권한을 허용하지 않는 버킷 정책을 적용하면 됩니다.

Amazon S3 콘솔로 돌아가 Permissions(권한) 탭을 선택하고 Bucket policy(버킷 정책)에서 Edit(편집)을 선택합니다. 텍스트 편집기에서 기존 정책 텍스트를 지우고 사진에서 보이는 이 텍스트로 바꿉니다.

"arn:aws:s3:::website-527/index.html",

"arn:aws:s3:::website-527/script.js",

"arn:aws:s3:::website-527/style.css" 생성항한 버킷 이름을 사용해야 합니다.

 

Object(객체) 탭으로 돌아가서 index.html을 선택해 Delete(삭제)를 선택합니다. Delete objects(객체 삭제) 패널에서 삭제를 입력하여 파일을 제거할지 확인합니다. Delete objects(객체 삭제)를 선택합니다.

 

웹 사이트 파일에 삭제 권한을 허용하지 않는 버킷 정책을 적용하여 웹 사이트의 파일이 삭제되지 않음을 확인할 수 있습니다.


7. 웹 사이트 업데이트

웹 사이트 파일을 삭제하지 못하도록 하는 정책을 구성했어도 HTML 파일을 편집하고 S3 버킷에 다시 업로드하여 웹 사이트를 업데이트할 수 있습니다. 컴퓨터에서 텍스트 편집기(: 메모장 또는 TextEdit)index.html 파일을 로드하여 Served from Amazon S3(Amazon S3에서 제공) 텍스트를 찾아 Created by <YOUR-NAME>으로 바꾸고 을 사용자 이름으로 바꾸고(: Created by Won)난 다음 바꾼 파일을 저장한다.

body 부분에 있는 created by your name으로 바꾼다

 

Amazon S3 콘솔로 돌아가 방금 편집한 index.html 파일을 업로드하여 index.html을 선택하고 Actions(작업) 메뉴에서 Make public using ACL(ACL을 사용하여 퍼블릭으로 설정) 옵션을 다시 선택해 Make public(퍼블릭으로 설정)을 선택합니다.

.

 

정적 웹 사이트가 열려 있는 웹 브라우저 탭으로 돌아가서 페이지를 새로 고침하여 페이지에 본인의 이름이 뜨는지 확인합니다. 


8. 파일 버전 탐색

버킷 버전 관리 기능은 기본적으로 꺼져 있습니다. 버전 관리 기능이 꺼져 있으면 객체에 대한 변경을 취소할 수 없습니다. 버전 관리 기능을 켜면 변경 및 삭제된 버전의 파일이 저장됩니다. 검색어 옆에 있는 Show versions(버전 표시)를 선택하여 버킷 버전 관리를 활성화합니다.

 

출처 : AWS Educate