Hướng dẫn bật versioning trên AWS S3

Share and Enjoy !

Shares

Mở đầu

Ở bài viết trước, mình đã chia sẻ những thao tác cơ bản nhất với S3 trên giao diện AWS Console như: tạo và upload file lên bucket, thiết lập object permissions, tạo bucket policy. Hôm nay, mình tiếp tục bổ sung thêm một lab khá quan trọng về chủ đề AWS S3 vào serie  SAA Hands-on Labs: kích hoạt tính năng versioning trên S3 (hỗ trợ giữ vào quản lý nhiều phiên bản của cùng một object trên bucket).

Lab steps

Task 1: Tạo bucket trên S3

1. Truy cập Storage >> S3 từ menu Services

2. Tại giao diện của S3, nhấn chọn Create bucket và điền lần lượt vào các trường sau cho bucket details.

  • Bucket name: đặt tên cho bucket (S3 bucket name mang tính định danh trên tất cả các region của AWS nên phải duy nhất và không trùng lặp).
  • Region: Chọn Singapore (ap-southeast-1)
  • Object ownership: Chọn ACLs enabled
    • Object ownership: Chọn Object writer (anh em nhớ chọn Object Owner, ngược lại sẽ không có quyền chỉnh sửa bucket ACL)
  • Với thiết lập Block Public Access, để đơn giản anh em bỏ check và xác nhận vào mục acknowleadge nhé (thao tác này đồng nghĩa bật mode public cho bucket).

Những phần khác giữ nguyên như mặc đinh và nhấn Create bucket.

3. Sau khi quá trình taọ bucket hoàn tất, hệ thống sẽ tự động chuyển đến giao diện chứa danh sách tất cả các bucket đang có trong tài khoản AWS của bạn.

Task 2: Bật versioning trên S3 bucket

1. Nhấn vào bucket name để mở giao diện bucket details, chuyển sang tab Properties, bên dưới mục Bucket Versioning nhấn Edit.

2. Ngay tại giao diện Edit Bucket Versioning, chọn option Enable và nhấn Save changes để lưu thay đổi.

3. Sau khi thao tác thành công, anh em sẽ thấy Bucket Versioning chuyển sang trạng thái Enable như hình dưới đây.

Task 3: Upload object và thiết lập bucket policy để public bucket.

  1. Nhấn vào bucket name để, ngay tại tab Object, nhấn vào upload.

2. Tại giao diện kế tiếp, nhấn add file và chọn một hoặc nhiều file từ local và nhấn Upload.

3. Sau khi quá trình upload hoàn tất sẽ hiện thông báo kèm danh sách các object tương tự như ví dụ bên dưới.

Tiếp theo ta tiến hành tạo Bucket policy để gán quyền public access cho tất cả các đối tượng trong bucket này.

4. Quay trở lại giao diện chứa danh sách bucket, nhấn chọn vào bucket name hiepsharing-saa-b-1, chuyển sang tab Permissions.

5. Kéo xuống tại mục Bucket policy, nhấn Edit để mở trình soạn thảo Bucket policy editor (dĩ nhiên trống không 😆 ).

Lưu ýBucket policy được trình bày dưới dạng ngôn ngữ JSON nên anh em có thể chủ động nghiên cứu thêm bằng 2 công cụ Policy examples hoặc Policy generator được AWS  cung cấp.

Hoặc đơn giản trong bài lab này, anh em có thể copy và dán JSON bên dưới vào và thay thế phần Resources bằng chính Bucket ARN của anh em.

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Statement1",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::hiepsharing-saa-b-1/*"
}
]
}

Với nội dung JSON  trên, mình muốn tạo ra một bucket  policy cho phép mọi người có quyền truy cập tất cả các object có trong bucket hiepsharing-saa-b-1

Xem kỹ lại cú pháp của JSON, nếu không có lỗi gì (Errors: 0), nhấn Save changes để tạo policy.

6. Sau khi thiết lập bucket policy thành công, quay lại danh sách các object đã tải lên ở phần trước, tick chọn vào file test_upload.txt (chưa cấu hình object permission trước đó), nhấn Copy URL.

2.7. Mở một tab trình duyệt khác và dán Object URL để truy cập vào nội dung file test_upload.txt trên bucket hiepsharing-saa-b-1. Kết quả như minh họa bên dưới chứng tỏ bucket policy chúng ta tạo ở phần trước thành công.

Task 4: Kiểm tra hoạt động của tính năng Versioning

1. Bây giờ, chúng ta mở và sửa nội dung file test_upload.txt từ máy tính local thành This is content of version 2(hoặc nội dung bla bla gì đó tùy anh em).

2. Thực hiện lại thao tác upload file test_upload.txt vừa mới sửa lên lại bucket hiepsharing-saa-b-1 (xem lại Task 3).

3. Lặp lại bước Copy URL của object test_upload.txt, truy cập từ một tab trình duyệt khác và xem kết quả trả về với nội dung của phiên bản mới nhất chúng ta vừa tải lên.

4. Quay lại giao diện chứa danh sách các Object của bucket, anh em có thể bật tính năng Show versions để hiển thị chi tiết phiên bản của tất cả các đối tượng có trên bucket như minh họa bên dưới.

Lời kết

Như vậy là mình đã hoàn thành bài viết hướng dẫn bật versioning trên AWS S3.

Nếu có bất kỳ thắc mắc, góp ý về nội dung bài viết hoặc anh em có thêm những tip hay khác có thể chia sẻ dưới phần bình luận nhé.

Trong thời gian tới, mình sẽ cố gắng bổ sung nhiều lab khác về chủ để S3 vào serie SAA Hands-on Labs, anh em nhớ theo dõi nhé.

Share and Enjoy !

Shares
Giới thiệu Hiệp Phạm 135 bài viết
Hiệp hiện đang là thành viên nhóm tác giả của HIEPSHARING.COM. Thích tìm hiểu, nghiên cứu Ethical Hacking, SysAdmin, DevOps và những công nghệ mới. Phương châm sống của mình: "Chỉ cần bản thân không bỏ cuộc, chậm chút cũng không sao."

Hãy bình luận đầu tiên

Để lại một phản hồi

Thư điện tử của bạn sẽ không được hiện thị công khai.


*