Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Secure snapshots S3 bucket behind CloudFront #1180

Closed
4 tasks done
Mr0grog opened this issue Dec 13, 2022 · 1 comment · Fixed by #1267
Closed
4 tasks done

Secure snapshots S3 bucket behind CloudFront #1180

Mr0grog opened this issue Dec 13, 2022 · 1 comment · Fixed by #1267
Labels
ops security terraform Pull requests that update Terraform code

Comments

@Mr0grog
Copy link
Collaborator

Mr0grog commented Dec 13, 2022

Since requests directly to S3 buckets can get expensive quickly, we should put our “data snapshots” S3 bucket behind CloudFront and disable public access. (This recommendation from @TylerHendrickson’s very helpful review of our AWS configuraiton.)

@Mr0grog Mr0grog added ops security terraform Pull requests that update Terraform code labels Dec 13, 2022
@Mr0grog
Copy link
Collaborator Author

Mr0grog commented Dec 15, 2022

TIL multipart uploads to S3 are atomic — it doesn’t assemble the pieces into a GETable object until all parts are uploaded (see https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html). Single operation PUTs are also atomic (see https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html#ConsistencyModel)

So we actually don’t need to worry about item 1 (make writes atomic)!

Mr0grog added a commit that referenced this issue Jan 31, 2023
This adds a cloudfront distribution to serve data from our "data snaphsots" S3 bucket at `https://archives.getmyvax.org`. The goal here is mainly to prevent people from potentially driving up S3 costs by making requests we can't control or cache against the bucket. This is a first step for #1180.
Mr0grog added a commit that referenced this issue Feb 1, 2023
This adds a CloudFront distribution to serve data from our "data snaphsots" S3 bucket at `https://archives.getmyvax.org`. The goal here is mainly to prevent people from potentially driving up S3 costs by making requests we can't control or cache against the bucket. This is a first step for #1180.
Mr0grog added a commit to usdigitalresponse/appointment-data-insights that referenced this issue Feb 1, 2023
UNIVAF historical data is now available from `archives.getmyvax.org`; the S3 bucket will no longer be publicly accessible. See usdigitalresponse/univaf#1180.
Mr0grog added a commit to usdigitalresponse/appointment-data-insights that referenced this issue Feb 1, 2023
UNIVAF historical data is now available from `archives.getmyvax.org`; the S3 bucket will no longer be publicly accessible. See usdigitalresponse/univaf#1180.
Mr0grog added a commit that referenced this issue Feb 1, 2023
The data in the data snapshots S3 bucket is now available via CloudFront at `https://archives.getmyvax.org`, so we are ready to revoke public read access to the bucket. Fixes #1180.
Mr0grog added a commit that referenced this issue Feb 1, 2023
The data in the data snapshots S3 bucket is now available via CloudFront at `https://archives.getmyvax.org`, so we are ready to revoke public read access to the bucket.

Fixes #1180.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ops security terraform Pull requests that update Terraform code
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant