All Policies
Prevent Disabling Istio Sidecar Injection
One way sidecar injection in an Istio service mesh may be accomplished is by defining an annotation at the Pod level. Pods not receiving a sidecar cannot participate in the mesh thereby reducing visibility. This policy ensures that Pods cannot set the annotation `sidecar.istio.io/inject` to a value of `false`.
Policy Definition
/istio/prevent-disabling-injection-pods/prevent-disabling-injection-pods.yaml
1apiVersion: kyverno.io/v1
2kind: ClusterPolicy
3metadata:
4 name: prevent-disabling-injection-pods
5 annotations:
6 policies.kyverno.io/title: Prevent Disabling Istio Sidecar Injection
7 policies.kyverno.io/category: Istio
8 policies.kyverno.io/severity: medium
9 kyverno.io/kyverno-version: 1.8.0
10 policies.kyverno.io/minversion: 1.6.0
11 kyverno.io/kubernetes-version: "1.24"
12 policies.kyverno.io/subject: Pod
13 policies.kyverno.io/description: >-
14 One way sidecar injection in an Istio service mesh may be accomplished is by defining
15 an annotation at the Pod level. Pods not receiving a sidecar cannot participate in the mesh
16 thereby reducing visibility. This policy ensures that Pods cannot set the annotation
17 `sidecar.istio.io/inject` to a value of `false`.
18spec:
19 validationFailureAction: Audit
20 background: true
21 rules:
22 - name: prohibit-inject-annotation
23 match:
24 any:
25 - resources:
26 kinds:
27 - Pod
28 validate:
29 message: "Pods may not disable sidecar injection by setting the annotation sidecar.istio.io/inject to a value of false."
30 pattern:
31 metadata:
32 =(annotations):
33 =(sidecar.istio.io/inject): "!false"