All Policies

Require TLS routes in OpenShift in CEL expressions

HTTP traffic is not encrypted and hence insecure. This policy prevents configuration of OpenShift HTTP routes.

Policy Definition

/openshift-cel/check-routes/check-routes.yaml

 1apiVersion: kyverno.io/v1
 2kind: ClusterPolicy
 3metadata:
 4  name: check-routes
 5  annotations:
 6    policies.kyverno.io/title: Require TLS routes in OpenShift in CEL expressions  
 7    policies.kyverno.io/category: OpenShift in CEL expressions
 8    policies.kyverno.io/severity: high
 9    kyverno.io/kyverno-version: 1.11.0
10    policies.kyverno.io/minversion: 1.11.0
11    kyverno.io/kubernetes-version: "1.26-1.27"
12    policies.kyverno.io/subject: Route
13    policies.kyverno.io/description: |-
14      HTTP traffic is not encrypted and hence insecure. This policy prevents configuration of OpenShift HTTP routes.
15spec:
16  validationFailureAction: Enforce
17  background: true
18  rules:
19    - name: require-tls-routes
20      match:
21        any:
22        - resources:
23            kinds:
24              - route.openshift.io/v1/Route
25            operations:
26            - CREATE
27            - UPDATE
28      validate:
29        cel:
30          expressions:
31            - expression: "has(object.spec.tls)"
32              message: >-
33                HTTP routes are not allowed. Configure TLS for secure routes.