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

Add signing for cert-manager artifacts #4473

Closed
17 of 18 tasks
SgtCoDFish opened this issue Sep 23, 2021 · 11 comments
Closed
17 of 18 tasks

Add signing for cert-manager artifacts #4473

SgtCoDFish opened this issue Sep 23, 2021 · 11 comments
Labels
kind/feature Categorizes issue or PR as related to a new feature. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete.

Comments

@SgtCoDFish
Copy link
Member

SgtCoDFish commented Sep 23, 2021

Overview

Supply chain security is a popular topic in infosec at the moment, largely because of several high-profile incidents using supply chain attacks. The issue is getting worse, too; as software becomes more complex and proliferates in the cloud, the supply chain also becomes more distributed and introduces several new points of trust, including in programming language package managers, operating system package managers, software platforms such as Kubernetes and the software itself being developed.

Signing is one of the answers for combating supply chain attacks. Assuming that private keys are kept private to the software producer and that trust of the signing keys can be established ahead of time for the client, signing allows a client to assert that the software it received was packaged by the organization owning the signing keys and wasn’t tampered with.

We'd like to add this functionality to at least some of the cert-manager artifacts, possibly expanding the list of signed artifacts in the future to include more.

See also the project spec and the technical spec.

What to Sign?

To start, we'd like to add signing for:

  • Helm charts, which we believe to be a popular way of installing cert-manager and for which an easy verification process already exists (via the helm CLI)
  • Container images, which all cert-manager installations use and which the Sigstore project's cosign tool makes simple.

To ensure that nobody can access the private key of the signing keypair, we'll use KMS to store the key, and all signing operations will go through that key.

Pull Requests and Work

Bonus PRs arising from this work:

/kind feature

@jetstack-bot jetstack-bot added the kind/feature Categorizes issue or PR as related to a new feature. label Sep 23, 2021
@SgtCoDFish
Copy link
Member Author

Update 2021-11-23: I still need to do the infrastructure for this, which involves first provisioning a cert-manager-infrastructure account in CNCF's GCP org.

We're also still blocked on actually pushing cosign signatures since quay.io still doesn't support them.

@jetstack-bot
Copy link
Contributor

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close.
Send feedback to jetstack.
/lifecycle stale

@jetstack-bot jetstack-bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Feb 21, 2022
@jetstack-bot
Copy link
Contributor

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.
If this issue is safe to close now please do so with /close.
Send feedback to jetstack.
/lifecycle rotten
/remove-lifecycle stale

@jetstack-bot jetstack-bot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Mar 23, 2022
@SgtCoDFish
Copy link
Member Author

Worth updating again here: I had delayed work on this pending quay.io adding support and softly behind formally moving the cert-manager-release project into the CNCF org.

The org move is now pretty firmly blocked since the person taking care of it has other priorities, but the quay.io support seems to be there. I should revisit this.

@SgtCoDFish
Copy link
Member Author

/remove-lifecycle rotten

@jetstack-bot jetstack-bot removed the lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. label Apr 28, 2022
@SgtCoDFish SgtCoDFish added the priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. label Apr 28, 2022
@jetstack-bot
Copy link
Contributor

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close.
Send feedback to jetstack.
/lifecycle stale

@jetstack-bot jetstack-bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jul 27, 2022
@jetstack-bot
Copy link
Contributor

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.
If this issue is safe to close now please do so with /close.
Send feedback to jetstack.
/lifecycle rotten
/remove-lifecycle stale

@jetstack-bot jetstack-bot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Aug 26, 2022
@SgtCoDFish
Copy link
Member Author

/remove-lifecycle rotten

@jetstack-bot jetstack-bot removed the lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. label Aug 30, 2022
@jetstack-bot
Copy link
Contributor

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close.
Send feedback to jetstack.
/lifecycle stale

@jetstack-bot jetstack-bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Nov 28, 2022
@joebowbeer
Copy link
Contributor

/remove-lifecycle stale

@jetstack-bot jetstack-bot removed the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Nov 28, 2022
@SgtCoDFish
Copy link
Member Author

I think this can be closed - IaC would be great for this but there's no resourcing for it and it won't happen any time soon.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/feature Categorizes issue or PR as related to a new feature. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete.
Projects
None yet
Development

No branches or pull requests

3 participants