Replication at S3
Encryption at S3
Server-Side Encryption
Client-Side Encryption
Encrypt data client-side and upload the encrypted data to Amazon S3. In this case, you manage the encryption process, the encryption keys, and related tools.
AWS KMS (SSE-KMS)
Server-side Encryption (SSE):
Client-side Encryption (CSE):
In order to ensure all objects uploaded to S3 are encrypted, create an S3 bucket policy that denies any S3 Put request that does not include the x-amz-server-side-encryption header.
https://aws.amazon.com/blogs/security/how-to-prevent-uploads-of-unencrypted-objects-to-amazon-s3/
For cost effective analysis on data stored on S3 use Amazon Athena to run SQL queries
S3 Object Lock
prevent deleting or modifying object for fixed amount of time.
Object Lock can help prevent objects from being deleted or overwritten for a fixed amount of time or indefinitely
Object Lock to help meet regulatory requirements that require WORM (write-once-read-many) storage
Adds layer of protection against object changes and deletion
Object locks must be enabled at the time of creation of buckets (new bucket)
Bucket versioning is automatically enabled (cant be disabled) for Object lock enabled buckets
S3 Static website hosting
Only for static content, can also contain client-side scripts.
Does NOT support Server-side processing/scripting like PHP, JSP, or ASP.NET.
Accessing S3 from EC2 or ECS
S3 Transfer Acceleration
fast, easy, and secure transfers of files over long distances between your client and an S3 bucket
S3 Transfer acceleration uses globally distributed edge locations in Amazon CloudFront
Additional data transfer charges might apply.
Use for large scale (more than 20GB) download and upload of data into S3 from various edge location
Use cases
Your customers upload to a centralized bucket from all over the world.
You transfer gigabytes to terabytes of data on a regular basis across continents.
You can't use all of your available bandwidth over the internet when uploading to Amazon S3.
S3 Cost
Enabling versioning will have additional cost (each versioned objects are charged)
Incomplete S3 multipart uploads are charged
Data transfer cost between S3 buckets in same region is free
VPC endpoint and S3