Source: Davide Aracri on Unsplash
Amazon S3 offers various Server-Side Encryption (SSE) options to protect data at rest:
You can also implement Client-Side Encryption, where you encrypt data before uploading it to S3.
When using KMS, be aware of potential KMS limits. You can request a quota increase using the Service Quotas Console. The default KMS key for S3 encryption is free, while using a custom KMS key will incur a cost.
CORS allows web applications running under one origin to access resources from a different origin.
Origin = scheme (protocol) + host (domain) + port
Requests from one origin to another will not be fulfilled unless the receiving origin explicitly allows the request using CORS Headers (e.g., Access-Control-Allow-Origin).
* If a client makes a cross-origin request on our S3 bucket, we need to enable the correct CORS headers to permit the request.
MFA Delete adds an extra layer of security to protect against accidental or malicious deletion of objects in your S3 buckets.
S3 Access Logs provide an audit trail by logging all access requests made to your S3 buckets.
Pre-Signed URLs provide temporary access to your S3 objects, allowing users to upload or download files without needing AWS security credentials directly.
S3 Object Lock helps you store objects using a WORM (Write Once Read Many) model, preventing objects from being deleted or overwritten for a specified period.
Retention Period: Protects the object for a fixed duration, which can be extended.
s3:PutObjectLegalHold
IAM permission.Access Points simplify security management for S3 Buckets by creating named network endpoints with specific access policies.
Each Access Point has: