All Policies
Check Tekton TaskRun Vulnerability Scan
A signed bundle is required and a vulnerability scan made by Grype must return no vulnerabilities greater than 8.0.
Policy Definition
/tekton/verify-tekton-taskrun-vuln-scan/verify-tekton-taskrun-vuln-scan.yaml
1apiVersion: kyverno.io/v1
2kind: ClusterPolicy
3metadata:
4 name: verify-tekton-taskrun-vuln-scan
5 annotations:
6 policies.kyverno.io/title: Check Tekton TaskRun Vulnerability Scan
7 policies.kyverno.io/category: Tekton
8 policies.kyverno.io/severity: medium
9 policies.kyverno.io/subject: TaskRun
10 kyverno.io/kyverno-version: 1.7.2
11 policies.kyverno.io/minversion: 1.7.0
12 kyverno.io/kubernetes-version: "1.23"
13 policies.kyverno.io/description: >-
14 A signed bundle is required and a vulnerability scan made by Grype must
15 return no vulnerabilities greater than 8.0.
16spec:
17 validationFailureAction: Audit
18 webhookTimeoutSeconds: 30
19 rules:
20 - name: check-signature
21 match:
22 any:
23 - resources:
24 kinds:
25 - tekton.dev/v1beta1/TaskRun.status
26 imageExtractors:
27 TaskRun:
28 - name: "taskrunstatus"
29 path: "/status/taskSpec/steps/*"
30 value: "image"
31 key: "name"
32 verifyImages:
33 - imageReferences:
34 - "*"
35 attestations:
36 - predicateType: https://grype.anchore.io/scan
37 attestors:
38 - entries:
39 - keys:
40 publicKeys: |-
41 -----BEGIN PUBLIC KEY-----
42 MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEahmSvGFmxMJABilV1usgsw6ImcQ/
43 gDaxw57Sq+uNGHW8Q3zUSx46PuRqdTI+4qE3Ng2oFZgLMpFN/qMrP0MQQg==
44 -----END PUBLIC KEY-----
45 conditions:
46 - any:
47 - key: "{{ matches[].vulnerability[].cvss[?metrics.impactScore > '8.0'][] | length(@) }}"
48 operator: Equals
49 value: 0
50 - key: "{{ source.target.userInput }}"
51 operator: Equals
52 value: "ghcr.io/tap8stry/git-init:v0.21.0@sha256:322e3502c1e6fba5f1869efb55cfd998a3679e073840d33eb0e3c482b5d5609b"