1
0
Fork 0
mirror of https://github.com/kyverno/kyverno.git synced 2025-03-06 16:06:56 +00:00
kyverno/cmd/cli/kubectl-kyverno/_testdata/policies/cpol-limit-configmap-for-sa.yaml
Charles-Edouard Brétéché 7562bea6db
chore: apply policy fixes (#8427)
Signed-off-by: Charles-Edouard Brétéché <charles.edouard@nirmata.com>
2023-09-17 22:24:26 +00:00

59 lines
1.7 KiB
YAML

---
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
annotations:
kyverno.io/kubernetes-version: 1.20-1.23
kyverno.io/kyverno-version: 1.6.0
policies.kyverno.io/category: Other
policies.kyverno.io/description: This policy shows how to restrict certain operations
on specific ConfigMaps by ServiceAccounts.
policies.kyverno.io/severity: medium
policies.kyverno.io/subject: ConfigMap, ServiceAccount
policies.kyverno.io/title: Limit ConfigMap to ServiceAccounts for a User
name: limit-configmap-for-sa
spec:
admission: true
background: false
rules:
- match:
any:
- resources:
kinds:
- ConfigMap
subjects:
- kind: ServiceAccount
name: developer
namespace: kube-system
- resources:
kinds:
- ConfigMap
subjects:
- kind: ServiceAccount
name: another-developer
namespace: another-namespace
name: limit-configmap-for-sa-developer
preconditions:
all:
- key: '{{request.object.metadata.namespace}}'
operator: AllIn
value:
- any-namespace
- another-namespace
- key: '{{request.object.metadata.name}}'
operator: AllIn
value:
- any-configmap-name-good
- another-configmap-name
validate:
deny:
conditions:
all:
- key: '{{request.operation}}'
operator: In
value:
- UPDATE
- CREATE
message: '{{request.object.metadata.namespace}}/{{request.object.kind}}/{{request.object.metadata.name}}
resource is protected. Admin or allowed users can change the resource'
validationFailureAction: Audit