Amazon S3 hỗ trợ cả mã hóa phía máy chủ (với 3 tùy chọn quản lý khóa: SSE-KMS, SSE-C, SSE-S3) và mã hóa phía máy khách để tải dữ liệu lên. Amazon S3 cung cấp các tính năng bảo mật linh hoạt để ngăn không cho người dùng trái phép truy cập dữ liệu của bạn. Bạn có thể kết nối với tài nguyên S3 từ Amazon Virtual Private Cloud (Amazon VPC) bằng cách sử dụng điểm cuối VPC
Trong phần này, chúng ta tạo S3 Bucket Policy để yêu cầu mã hóa dữ liệu ở trạng thái nghỉ.
Tương tự ở lab trước, chúng ta truy cập vào AWS Management Console
Trong giao diện S3
Trong giao diện sid-security-xxxxxxx bucket
Chọn Permission
Trong Bucket policy, chọn Edit
{
"Statement": [
{
"Effect": "Deny",
"Principal": "*",
"Action": "s3:PutObject",
"Resource": "arn:aws:s3:::BUCKET_NAME/*",
"Condition": {
"StringNotEquals": {
"s3:x-amz-server-side-encryption": "AES256"
}
}
}
]
}
cd ~
echo "123456789abcdefg" > textfile
aws s3api put-object --key text01 --body textfile --profile user1 --bucket ${bucket}
Yêu cầu sẽ không thành công, vì object không được mã hóa.
aws s3api put-object --key text01 --body textfile --server-side-encryption AES256 --profile user1 --bucket ${bucket}
Lệnh thành công vì PUT đã sử dụng SSE-S3.