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

Support CRDs in a K8s environment #193

Closed
2 of 3 tasks
Tracked by #9
lee0c opened this issue May 11, 2022 · 0 comments
Closed
2 of 3 tasks
Tracked by #9

Support CRDs in a K8s environment #193

lee0c opened this issue May 11, 2022 · 0 comments
Assignees
Labels
design Items related to the underlying design of the project
Milestone

Comments

@lee0c
Copy link
Contributor

lee0c commented May 11, 2022

Ratify should be configurable through either config.json or, in a Kubernetes environment, through dynamically configurable CRDs. We propose 2 CRDs: a Store and a Verifier. Both CRDs should be thought of as representing a specific type of store/verifier with a specific configuration – aka, a notaryv2 verifier with keys A and B is distinct from a notaryv2 verifier with key C.

kind: Store
metadata:
  name: string # Cluster-unique name for this store
  namespace: string # Namespace in which to use this store
spec:
  type: string # ORAS, FilePath, Sigstore, etc
  address: string # Optional (required for custom store). URL or file path
  auth:
    mode: string # K8sSecrets, AzureWorkloadIdentity, etc
    # may need additional fields here
kind: Verifier
metadata:
  name: string # Cluster-unique name for this verifier
  namespace: string # Namespace in which to use this verifier
spec:
  type: string # NotaryV2, SBOM, VulnerabilityScan, etc
  address: string # Optional. URL/file path
  artifactType: string
  params: object # Verifier-specific field. For ex. NotaryV2 takes certs

It may be beneficial to have an additional CRD for Keys to allow for flexibility in how keys are stored/fetched - this is worthy of further discussion. @etrexel I think you have more familiarity with options around keys and how they are handed to Notation/the notation verifier?

David Tesar edit 8/9/2022: I'd like to break this down into smaller parts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
design Items related to the underlying design of the project
Projects
None yet
Development

No branches or pull requests

3 participants