fix: fix kyveno policies

This commit is contained in:
2025-06-20 14:55:18 +02:00
parent df7829dfbd
commit f3db2438cf
8 changed files with 34 additions and 27 deletions
+2
View File
@@ -41,3 +41,5 @@ clusterConfig:
enabled: true enabled: true
cilium: cilium:
enabled: true enabled: true
kyverno:
enabled: true
@@ -1,3 +1,4 @@
{{- if .Values.clusterConfig.kyverno.enabled }}
apiVersion: kyverno.io/v1 apiVersion: kyverno.io/v1
kind: Policy kind: Policy
metadata: metadata:
@@ -29,4 +30,4 @@ spec:
uri: '{{`postgres://{{ request.object.data.username | base64_decode(@) }}:{{ request.object.data.password | base64_decode(@) }}@{{ request.object.metadata.labels."cnpg.io/cluster" }}-rw/app?sslmode=disable`}}' uri: '{{`postgres://{{ request.object.data.username | base64_decode(@) }}:{{ request.object.data.password | base64_decode(@) }}@{{ request.object.metadata.labels."cnpg.io/cluster" }}-rw/app?sslmode=disable`}}'
skipBackgroundRequests: true skipBackgroundRequests: true
validationFailureAction: Audit validationFailureAction: Audit
{{- end }}
@@ -1,3 +1,4 @@
{{- if .Values.clusterConfig.kyverno.enabled }}
apiVersion: kyverno.io/v1 apiVersion: kyverno.io/v1
kind: ClusterPolicy kind: ClusterPolicy
metadata: metadata:
@@ -173,3 +174,4 @@ spec:
- prod-atlantis-db-replication - prod-atlantis-db-replication
annotations: annotations:
kyverno/clone: "true" kyverno/clone: "true"
{{- end }}
@@ -1,12 +1,13 @@
{{- if .Values.clusterConfig.kyverno.enabled }}
apiVersion: kyverno.io/v1 apiVersion: kyverno.io/v1
kind: ClusterPolicy kind: ClusterPolicy
metadata: metadata:
name: sync-gitlab-secret name: sync-gitlab-secret
annotations: annotations:
policies.kyverno.io/title: Sync Secrets policies.clusterConfig.kyverno.io/title: Sync Secrets
policies.kyverno.io/category: Sample policies.clusterConfig.kyverno.io/category: Sample
policies.kyverno.io/subject: Secret policies.clusterConfig.kyverno.io/subject: Secret
policies.kyverno.io/description: >- policies.clusterConfig.kyverno.io/description: >-
Secrets like registry credentials often need to exist in multiple Secrets like registry credentials often need to exist in multiple
Namespaces so Pods there have access. Manually duplicating those Secrets Namespaces so Pods there have access. Manually duplicating those Secrets
is time consuming and error prone. This policy will copy a is time consuming and error prone. This policy will copy a
@@ -30,3 +31,4 @@ spec:
clone: clone:
namespace: default namespace: default
name: gitlab-pull-secret name: gitlab-pull-secret
{{- end }}
@@ -1,9 +1,10 @@
{{- if .Values.clusterConfig.kyverno.enabled }}
apiVersion: kyverno.io/v1 apiVersion: kyverno.io/v1
kind: ClusterPolicy kind: ClusterPolicy
metadata: metadata:
annotations: annotations:
policies.kyverno.io/category: Sample policies.clusterConfig.kyverno.io/category: Sample
policies.kyverno.io/description: 'Access dataprotection keys from Azure Key Vault' policies.clusterConfig.kyverno.io/description: 'Access dataprotection keys from Azure Key Vault'
creationTimestamp: "2024-01-15T11:58:24Z" creationTimestamp: "2024-01-15T11:58:24Z"
name: sync-keyvault-secrets name: sync-keyvault-secrets
spec: spec:
@@ -28,5 +29,4 @@ spec:
names: names:
- "*-atlantis" - "*-atlantis"
name: sync-keyvault-secrets name: sync-keyvault-secrets
{{- end }}
@@ -1,13 +1,13 @@
{{- if .Values.kyverno.enabled }} {{- if .Values.clusterConfig.kyverno.enabled }}
apiVersion: kyverno.io/v1 apiVersion: kyverno.io/v1
kind: ClusterPolicy kind: ClusterPolicy
metadata: metadata:
name: sync-regcred-secret name: sync-regcred-secret
annotations: annotations:
policies.kyverno.io/title: Sync Secrets policies.clusterConfig.kyverno.io/title: Sync Secrets
policies.kyverno.io/category: Sample policies.clusterConfig.kyverno.io/category: Sample
policies.kyverno.io/subject: Secret policies.clusterConfig.kyverno.io/subject: Secret
policies.kyverno.io/description: >- policies.clusterConfig.kyverno.io/description: >-
Secrets like registry credentials often need to exist in multiple Secrets like registry credentials often need to exist in multiple
Namespaces so Pods there have access. Manually duplicating those Secrets Namespaces so Pods there have access. Manually duplicating those Secrets
is time consuming and error prone. This policy will copy a is time consuming and error prone. This policy will copy a
@@ -1,11 +1,11 @@
{{- if .Values.kyverno.enabled }} {{- if .Values.clusterConfig.kyverno.enabled }}
apiVersion: kyverno.io/v1 apiVersion: kyverno.io/v1
kind: ClusterPolicy kind: ClusterPolicy
metadata: metadata:
annotations: annotations:
policies.kyverno.io/description: 'This policy will sync the s3 secret in kube-system namespace across namespaces' policies.clusterConfig.kyverno.io/description: 'This policy will sync the s3 secret in kube-system namespace across namespaces'
policies.kyverno.io/subject: Secret policies.clusterConfig.kyverno.io/subject: Secret
policies.kyverno.io/title: Sync s3 Secrets policies.clusterConfig.kyverno.io/title: Sync s3 Secrets
name: sync-s3-credentials name: sync-s3-credentials
spec: spec:
generateExistingOnPolicyUpdate: true generateExistingOnPolicyUpdate: true
@@ -1,20 +1,20 @@
{{- if .Values.kyverno.enabled }} {{- if .Values.clusterConfig.kyverno.enabled }}
apiVersion: kyverno.io/v1 apiVersion: kyverno.io/v1
kind: ClusterPolicy kind: ClusterPolicy
metadata: metadata:
name: whitelist-internal-ingresses name: whitelist-internal-ingresses
annotations: annotations:
policies.kyverno.io/title: Concatenate Ingresss policies.clusterConfig.kyverno.io/title: Concatenate Ingresss
policies.kyverno.io/category: Other policies.clusterConfig.kyverno.io/category: Other
policies.kyverno.io/severity: medium policies.clusterConfig.kyverno.io/severity: medium
policies.kyverno.io/subject: Ingress policies.clusterConfig.kyverno.io/subject: Ingress
policies.kyverno.io/description: >- policies.clusterConfig.kyverno.io/description: >-
Ingresses with the label "internal=true" should be whitelisted. Ingresses with the label "internal=true" should be whitelisted.
If no whitelist exists, add the default values, otherwise append If no whitelist exists, add the default values, otherwise append
whitelist to the already existing ones whitelist to the already existing ones
spec: spec:
mutateExistingOnPolicyUpdate: false mutateExistingOnPolicyUpdate: false
#precondition: has whitelist annotation or #precondition: has whitelist annotation or
rules: rules:
- name: ensure-nginx-whitelist-exists - name: ensure-nginx-whitelist-exists
skipBackgroundRequests: true skipBackgroundRequests: true