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

Verify container image signatures before deployment (Notary/cosign/Connaisseur) #13

Open
mogul opened this issue Jan 12, 2021 · 7 comments

Comments

@mogul
Copy link
Collaborator

mogul commented Jan 12, 2021

User Story

In order to ensure that images have not been tampered with before they are deployed, we want our EKS instances to verify the image signature in an admission controller hook using the Notary or cosign protocols.

Background

Here's the actual Connaisseur repository; it can be deployed using a Helm chart.

Demo

Sketch

We can/should also verify the signature of helm_release resources used in brokerpaks.

@mogul mogul changed the title Verify container image signatures before deployment Verify container image signatures before deployment (Notary/Connaisseur) Apr 22, 2021
@adborden
Copy link
Contributor

Adding some breadcrumbs, this looks like another area that is under development. When we pick up this story, we can re-evaluate options.

Reading between the lines, I think registry providers (Amazon, Azure, Google, GitHub, etc) are not into Notary (v1) because the trust store is external from the registry. Notary v2 seems to be an effort to support signatures directly within the OCI artifact.

Linux Foundation launched sigstore and has a tool cosign that supports GitHub Container Registry.

Both Notary v2 and cosign seem to be on Connaisseur's radar.

@xopham
Copy link

xopham commented Jul 27, 2021

@adborden @mogul using the latest Connaisseur v2.0 release, it is possible to use either Notary (V1) or Cosign or both at the same time.
More info can be found in the docs or release post.
We'll be looking into Notary V2 now and if we can start implementing a first experimental support.

Feel free to reach out if we can help! Always great to learn about use-cases in the wild

@mogul
Copy link
Collaborator Author

mogul commented Jul 27, 2021

Thanks for reaching out!

@mogul
Copy link
Collaborator Author

mogul commented Sep 1, 2021

Noting for later: Kyverno also implements this as part of a more general policy framework. It's pretty alpha and only supports cosign, though.

@mogul mogul changed the title Verify container image signatures before deployment (Notary/Connaisseur) Verify container image signatures before deployment (Notary/cosign/Connaisseur) Sep 20, 2021
@mogul mogul moved this to Product Backlog in data.gov team board Dec 3, 2021
@mogul
Copy link
Collaborator Author

mogul commented Dec 8, 2021

sigstore is now natively supported in GitHub Actions.
https://github.blog/2021-12-06-safeguard-container-signing-capability-actions/

@mogul
Copy link
Collaborator Author

mogul commented Jan 1, 2022

@dlorenc
Copy link

dlorenc commented Jan 16, 2022

Cosign maintainer here, let me know if we can help at all!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants