Điểm:0

Trang web tĩnh AWS S3 so với CloudFront OIA

lá cờ si

Có vẻ như có hai cách để lưu trữ một trang web tĩnh trên S3/CloudFront.

  1. Tạo bộ chứa S3 với đầy đủ quyền truy cập công khai và Trang web tĩnh được đặt thành Đã bật + cấu hình CloudFront
  2. Tạo nhóm S3 không có quyền truy cập công khai và Trang web tĩnh được đặt thành Đã tắt + cấu hình CloudFront

Điều tôi không thích ở (1) là dòng chữ màu đỏ "KHÔNG ĐƯỢC LÀM ĐIỀU NÀY" chói lóa để truy cập công khai. Nhưng nó hoạt động hoàn hảo.

Điều tôi không thích ở (2) là tôi mất Trang web tĩnh được đặt thành Lợi ích đã bật, giống như mọi thứ tự động chuyển hướng đến index.html. Bây giờ tôi thấy có một nguồn gốc đối tượng trong cài đặt CloudFront, nhưng điều này chỉ hoạt động cho miền cơ sở của tôi (ví dụ: mysite.com). Trang web của tôi là một SPA và với (1) nếu tôi truy cập mysite.com/profile nó sẽ chính xác đi đến mysite.com/index.html Tôi nghĩ do chuyển hướng 404 mà tôi đã thiết lập. Nhưng với (2) sẽ mysite.com/profile không phải là 404 mà là truy cập 403 bị từ chối, điều mà tôi không nghĩ là thông minh để chuyển hướng như 404.

Vì vậy, tôi có nên chọn tùy chọn (1) ngay cả với dòng chữ màu đỏ rõ ràng về quyền truy cập công khai không? Hoặc có cách nào thích hợp để thực hiện một SPA mà không cần truy cập công cộng/lưu trữ trang web tĩnh không?

Điểm:1
lá cờ gp
Tim

Cảnh báo truy cập công khai có thể được bỏ qua một cách an toàn đối với các trang web được lưu trữ trên S3. Nhóm/tệp được cố ý công khai. AWS có thể nên tắt cảnh báo đó khi dịch vụ lưu trữ trang web được bật.

Bản phân phối CloudFront rõ ràng sẽ mang lại hiệu suất tốt hơn, nhưng đối với ứng dụng một trang, điều đó có thể không đủ quan trọng để bận tâm, cuộc gọi của bạn dựa trên kiến ​​thức về người dùng/ứng dụng của bạn. Thay vì dựa vào máy chủ web để đưa ra các chuyển hướng, bạn có thể không mã hóa nó trong ứng dụng của mình để các liên kết theo cách bạn muốn không? Bạn có thể thực hiện chuyển hướng với CloudFront@Edge nhưng điều đó cần thêm công việc và thêm một số mức chi phí bổ sung.

pbuzz007 avatar
lá cờ si
Tôi đoán điều "không thích" khác về lưu trữ công khai S3 là mọi người có thể truy cập qua URL như `https://mything.s3.us-east-2.amazonaws.com/index.html`. Nhưng đó có phải là một vấn đề lớn? Tôi thực sự không biết.
Tim avatar
lá cờ gp
Tim
Tôi không thể thấy URL thứ hai sẽ là một vấn đề như thế nào. Bạn có thể loại trừ rô bốt bằng robots.txt.
pbuzz007 avatar
lá cờ si
Được chứ. Tôi đã dành cả ngày cho việc này và tôi có cảm giác tồi tệ rằng việc cấp quyền truy cập công khai cũng có nghĩa là bất kỳ ai có tài khoản AWS đều có thể ghi vào nhóm?? Tôi nghĩ điều này bởi vì tôi đã tạo nhóm thứ hai là nhóm "an toàn" mà chỉ một trong số những người dùng IAM của tôi có thể ghi vào. Nhưng tôi thấy cách duy nhất để sử dụng AWS sdk là bật quyền truy cập công khai vào nhóm! Ahhh.. ai đó có thể viết thư cho nhóm công khai không?
Tim avatar
lá cờ gp
Tim
Bạn kiểm soát quyền truy cập bằng chính sách bộ chứa của mình https://docs.aws.amazon.com/AmazonS3/latest/userguide/WebsiteAccessPermissionsReqd.html
Điểm:0
lá cờ cn

Tôi sẽ chọn tùy chọn thứ hai. Bộ chứa S3 vẫn ở chế độ riêng tư với quyền truy cập chỉ đọc được cấp cho danh tính truy cập gốc trên nền tảng đám mây (OAI). Và bạn đảm bảo rằng các yêu cầu được tối ưu hóa qua nền tảng đám mây thay vì điểm cuối trang web s3.

Để giải quyết vấn đề index.html, bạn có thể sử dụng các hàm lambda@edge hoặc các hàm trên nền tảng đám mây. Có một ví dụ cho phần sau trong tài liệu AWS:

https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/example-function-add-index.html

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.