Skip to content

Back up Rust releases and crates #122

Open
@jdno

Description

@jdno

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
No labels

Type

No type

Projects

Status

In Review

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions