S3 Simple Storage Services
Object storage built to store and retrieve any amount of data from anywhere
Use cases
-
BACKUP & RECOVERY
-
DATA ARCHIVING
-
DATA LAKES & BIG DATA ANALYTICS
-
HYBRID CLOUD STORAGE
-
CLOUD-NATIVE APPLICATION DATA
-
DISASTER RECOVERY
Storage classes
| S3 Standard | S3 Standard-IA | S3 One Zone-IA | Amazon Glacier | |
|---|---|---|---|---|
Designed for Durability |
99.999999999% |
99.999999999% |
99.999999999% |
99.999999999% |
Designed for Availability |
99.99% |
99.99% |
99.5% |
N/A |
Availability SLA |
99.9% |
99% |
99% |
N/A |
Availability Zones |
>3 |
>3 |
1 |
>3 |
Minimum Capacity Charge per Object |
N/A |
128KB* |
128KB* |
N/A |
Minimum Storage Duration Charge |
N/A |
30 days |
30 days |
90 days |
Retrieval Fee |
N/A |
per GB retrieved |
per GB retrieved |
per GB retrieved |
First Byte Latency |
milliseconds |
milliseconds |
milliseconds |
select minutes or hours*** |
Storage Type |
Object |
Object |
Object |
Object |
Lifecycle Transitions |
Yes |
Yes |
Yes |
Yes |
Security & Access Management
-
Flexible Access Control Mechanisms
-
VPC Endpoints
-
Encryption
-
SSE with Amazon S3 Key Management (SSE-S3)
-
SSE with Customer-Provided Keys (SSE-C)
-
SSE with AWS KMS (SSE-KMS)
-
-
Audit Logs
-
Versioning
-
Multi-Factor Authentication Delete
-
Time-Limited Access to Objects
-
Automated, Machine Learning-Powered Security
CLI
EC2
Metadata
http://169.254.169.254/latest/meta-data/
http://169.254.169.254/latest/user-data/
aws cloudformation create-stack --stack-name paris-buckets --template-body file://buckets/buckets-paris-stack.yml --region eu-west-3 aws cloudformation update-stack --stack-name paris-buckets --template-body file://buckets/buckets-paris-stack.yml --region eu-west-3 aws cloudformation create-stack --stack-name admin-vpc --template-body file://~/repo/newsbridge-infra/vpc/admin-vpc-stack.yml aws cloudformation update-stack --stack-name admin-vpc --template-body file://~/repo/newsbridge-infra/vpc/admin-vpc-stack.yml aws cloudformation update-stack --stack-name prod-cognito-staff --template-body file://~/repo/newsbridge-infra/cognito-staff/cognito-staff-stack.yml aws cloudformation create-stack --stack-name prod-cognito-staff --template-body file://~/repo/newsbridge-infra/cognito-staff/cognito-staff-stack.yml aws cloudformation validate-template --template-body file://~/repo/newsbridge-infra/cognito-staff/cognito-staff-stack.yml aws cloudformation create-stack --stack-name prod-cognito-staff --template-body file://cognito-staff/cognito-staff-stack.yml --capabilities CAPABILITY_IAM aws cloudformation update-stack --stack-name prod-cognito-staff --template-body file://cognito-staff/cognito-staff-stack.yml --capabilities CAPABILITY_IAM aws cloudformation create-change-set --stack-name prod-cognito-staff --template-body file://cognito-staff/cognito-staff-stack.yml --change-set-name changeset-1 aws cloudformation create-change-set --stack-name prod-cognito-staff --change-set-name changeset-1 aws cloudformation describe-change-set --change-set-name changeset-1 --stack-name prod-cognito-staff aws cloudformation create-change-set --stack-name prod-cognito-staff --change-set-name changeset-1 aws cloudformation describe-change-set --stack-name prod-cognito-staff --change-set-name changeset-1 | jq '.Changes[]' aws cloudformation create-change-set --stack-name prod-cognito-staff --template-body file://cognito-staff/cognito-staff-stack.yml --change-set-name changeset-1 aws cognito-idp update-user-pool-client \ --user-pool-id eu-west-1_kLFWR7f19 \ --client-id u6qi8p2n9j511823e1vs6s7vh \ --callback-urls '["https://test-oauth-1552654503565.firebaseapp.com"]' \ --allowed-o-auth-flows "code" "implicit" \ --allowed-o-auth-scopes "phone" "email" "openid" aws cognito-idp create-identity-provider \ --user-pool-id eu-west-1_kLFWR7f19 \ --provider-name "Google identity provider" \ --provider-type Google --provider-details <value> [--attribute-mapping <value>] [--idp-identifiers <value>]