1
0
Fork 0
mirror of https://github.com/kyverno/kyverno.git synced 2025-03-09 09:26:54 +00:00
kyverno/samples/DisallowNewCapabilities.md

38 lines
972 B
Markdown
Raw Normal View History

2019-10-31 18:40:54 -07:00
# Disallow new capabilities
Linux allows defining fine-grained permissions using
capabilities. With Kubernetes, it is possible to add capabilities that escalate the
level of kernel access and allow other potentially dangerous behaviors. This policy
2020-06-26 18:28:52 -07:00
enforces that containers cannot add new capabilities. Other policies can be used to set
2019-10-31 18:40:54 -07:00
default capabilities.
## Policy YAML
[disallow_new_capabilities.yaml](best_practices/disallow_new_capabilities.yaml)
````yaml
2019-11-13 13:56:20 -08:00
apiVersion: kyverno.io/v1
2019-10-31 18:40:54 -07:00
kind: ClusterPolicy
metadata:
2019-11-09 16:07:16 -08:00
name: disallow-new-capabilities
2020-08-18 21:44:11 -07:00
annotations:
pod-policies.kyverno.io/autogen-controllers: none
2019-10-31 18:40:54 -07:00
spec:
rules:
2019-11-09 16:07:16 -08:00
- name: validate-add-capabilities
2019-10-31 18:40:54 -07:00
match:
resources:
kinds:
- Pod
validate:
2019-11-09 16:07:16 -08:00
message: "New capabilities cannot be added"
2020-06-26 18:28:52 -07:00
pattern:
2019-10-31 18:40:54 -07:00
- spec:
containers:
- name: "*"
2019-11-01 15:10:42 -07:00
=(securityContext):
=(capabilities):
2019-10-31 18:40:54 -07:00
X(add): null
2019-11-09 16:07:16 -08:00
2019-10-31 18:40:54 -07:00
````