Skip to content

proposal: secrets managementΒ #557

@bobheadxi

Description

@bobheadxi

Summary

We should be able to create and distribute credentials to subsets of Rocket users based on team.

Requirements

  • Some sort of secret manager - either built-in to Rocket, or leveraging something like Vault. This would probably involve setting up our own Vault instance (or whatever service we opt to use)
    • alternative approaches include more consumer-facing password managers like Passbolt and Bitwarden, but I don't think those are geared for programmatic access like Vault is (ie they have APIs, but seemingly not for reading passwords, likely for good reason)
  • /rocket secret [create|view|delete|edit] $SECRET for secrets CRUD
    • what secrets looks like (structured vs unstructured) probably depends on the backend, but I would be in favour of unstructured and encourage JSON secrets/arbitrary format as plain text
  • /rocket secret [grant|rescind] $SECRET $TEAM for providing access

Context

Suggested by @SarahBornais , who brings up a good point - we currently manage passwords through ad-hoc sharing or the private exec repository, which is pretty jank and unsafe.

My only concern with self-hosting our secrets is losing access to our instance of the secrets service would be a pretty big problem, whereas our current approach with the exec repository feels pretty permanent (if unsafe)

Metadata

Metadata

Assignees

Labels

discussionSeeking input and discussionneeds researchDo research and exploratory worktheme:featureRequest a new feature.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions