Open
Description
Currently, all of Rust's releases and all crates are stored on AWS. While we have multiple measures in place to prevent accidental deletion of releases or crates, e.g. bucket replication to a different region and restricted access, our current setup does not sufficiently protect us against a few threats:
- The threat model for Rust's infrastructure, created by the Rust Foundation's security engineer, highlights the risk of an AWS account compromise. If a malicious actor was able to gain administrator access to our AWS account, they could bypass a lot of safe guards and delete data.
- Google accidentally deleted a customer account recently. If this would happen to our AWS account, we could potentially lose our data and our backups.
Therefore, we want to set up automated out-of-band backups for both Rust releases and crates. These backups will be hosted in GCP and have totally separate access controls compared to AWS. Specifically, none of the current infra-admins
should have access to this separate environment to protect against an account compromise.
Tasks
- Investigate a synchronization mechanism between AWS and GCP
- Design and propose separate access controls to the new environment
- Get feedback from the Rust Foundation's security engineer on the proposed design
- Implement the proposed solution
Metadata
Metadata
Assignees
Labels
No labels
Type
Projects
Status
In Review