FileDummy Logo
FileDummy
Lưu Trữ Đám Mây & CDN

Cấu Hình Bucket Policy S3 & R2: Bảo Mật Tệp Tin & Chỉ Mở Cho CDN

Cách thiết lập chính sách truy cập tối thiểu cho S3 và Cloudflare R2, chặn truy cập trực tiếp và chỉ cho phép tải thông qua CDN.

23 tháng 10, 20269 phút đọc1,420 lượt xem
aws-s3cloudflare-r2bucket-policyiamsecurity

Cấu hình chính sách bucket S3 và R2 đúng cách là yếu tố then chốt để ngăn chặn rò rỉ dữ liệu ngoài ý muốn trong khi vẫn đảm bảo các lượt tải xuống được phép hoạt động trơn tru.

Nguyên Tắc Đặc Quyền Tối Thiểu

Theo mặc định, tất cả các bucket object storage trên đám mây nên bật Block Public Access. Các tệp riêng lẻ chỉ nên được hiển thị qua phân phối CloudFront/Cloudflare CDN hoặc các presigned URL được tạo động.

Thử Nghiệm Thực Tế.txt

Tải file mẫu để kiểm thử các chính sách truy xuất bucket riêng tư với xác thực S3 SigV4.

Tải File Mẫu 1MB TXT →

Ví Dụ: Chính Sách Bucket Chỉ Đọc Công Khai Cho CDN Origin

Nếu bucket của bạn được dành riêng để phục vụ tài sản tĩnh công khai qua tên miền tùy chỉnh:

JSON
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "AllowPublicReadForAssets",
      "Effect": "Allow",
      "Principal": "*",
      "Action": "s3:GetObject",
      "Resource": "arn:aws:s3:::my-public-bucket/*"
    }
  ]
}

Giới Hạn Truy Cập Chỉ Qua Cloudflare CDN (R2 Origin Access)

Để đảm bảo người dùng không thể vượt qua CDN và truy cập trực tiếp vào origin storage:

  1. Trong Cloudflare R2, điều hướng đến Settings > Custom Domains.
  2. Kết nối tên miền phụ tùy chỉnh của bạn (ví dụ: cdn.example.com).
  3. Tắt quyền truy cập R2.dev public URL. Toàn bộ lưu lượng sẽ được định tuyến qua WAF và các quy tắc cache của Cloudflare.
NDL

Nguyễn Đại Long

Tác Giả

Backend Lead • Chuyên gia Kiến trúc Hệ thống Phân tán & Lưu trữ Đám mây

Hơn 4 năm kinh nghiệm thiết kế các hệ thống xử lý tệp tải lên thông lượng lớn, tối ưu hóa cơ sở dữ liệu và hạ tầng phân tán Cloudflare R2 / AWS S3. Người sáng lập FileDummy và Mạng lưới Hệ sinh thái NDL.

Bài viết này có hữu ích không?

Bấm Thích để ủng hộ tác giả và giúp bài viết lan tỏa tới cộng đồng lập trình viên.

Thảo Luận Kỹ Thuật & Đóng Góp Ý Kiến (0)

Chia sẻ kết quả benchmark, phản hồi các trường hợp biên hoặc đặt câu hỏi chuyên môn.

0/3000

Chưa có bình luận nào. Hãy là lập trình viên đầu tiên bắt đầu cuộc thảo luận!

Câu Hỏi Thường Gặp (FAQ)

Should I ever make an S3 bucket fully public?▾

Only for genuinely static public assets that require no access control — like open-source CDN assets or public sample files. Never make buckets containing user data, PII, or financial records public. Misconfigured public buckets are among the most common causes of cloud data breaches.

What is the difference between a bucket policy and an IAM policy?▾

Bucket policies are resource-based policies attached to the bucket controlling access from any AWS account. IAM policies are identity-based attached to users and roles controlling which AWS resources that identity can access. Both must allow access for cross-account requests to succeed.

How do I block all public access to an S3 bucket?▾

Enable all four Block Public Access settings in the S3 console. These settings override bucket policies and ACLs that would otherwise make objects public — a safety net against accidentally misconfigured policies.

Bài Viết Liên Quan