oxidecomputer / oxidecomputer/omicron
IdP certificate rotation
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 572
- Forks
- 97
- Avg merge
- 2d 12h
- Merged PRs (30d)
- 96
Description
Currently we do not have support for handling certificate rotations (both for certificates issued by the IdP and the SP).
The current plan is to support a create + delete rotation mechanism so that operators can create a new IdP configuration, perform testing to confirm it works, and then deleting the old configuration. There are a few pieces missing to be able to support this:
- Add support for deleting an IdP configuration.
- The
nameof the IdP configuration is a unique value that is used in multiple places- ACS Url, login elements for the silo users (urls and UI elements)
- As a result (assuming delete was implemented) this means that certificate rotation is an outward visible change to silo users
- Ideally to a silo user there would be no visible effect of a certificate rotation
- If multiple IdP configurations are allowed to have the same ACS Url, how do we decide which to pick.
Part of this exercise should be mapping out the steps that we expect an operator to take when rotating certificates. I'll work on putting together some examples based on the IdPs we currently support.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by mapping the IdP configuration lifecycle and every use of its name in ACS URLs, silo-user login URLs, and UI elements. Then document the operator workflow for creating, testing, and deleting configurations, including how duplicate ACS URLs are selected and how rotation remains invisible to silo users.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- api, authentication
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100