Validate User ID, Group ID, and FS Group
All processes inside the pod can be made to run with specific user and groupID by setting ‘runAsUser’ and ‘runAsGroup’ respectively. ‘fsGroup’ can be specified to make sure any file created in the volume with have the specified groupID. These options can be used to validate the IDs used for user and group.
Policy Definition
/other/restrict_usergroup_fsgroup_id.yaml
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
name: validate-userid-groupid-fsgroup
annotations:
policies.kyverno.io/title: Validate User ID, Group ID, and FS Group
policies.kyverno.io/category: Sample
policies.kyverno.io/description: >-
All processes inside the pod can be made to run with specific user and groupID
by setting 'runAsUser' and 'runAsGroup' respectively. 'fsGroup' can be specified
to make sure any file created in the volume with have the specified groupID.
These options can be used to validate the IDs used for user and group.
spec:
rules:
- name: validate-userid
match:
resources:
kinds:
- Pod
validate:
message: "User ID should be 1000."
pattern:
spec:
securityContext:
runAsUser: '1000'
- name: validate-groupid
match:
resources:
kinds:
- Pod
validate:
message: "Group ID should be 3000."
pattern:
spec:
securityContext:
runAsGroup: '3000'
- name: validate-fsgroup
match:
resources:
kinds:
- Pod
validate:
message: "fsgroup should be 2000."
pattern:
spec:
securityContext:
fsGroup: '2000'
Last modified January 2, 2021: fix title & sort and regen policies (fa7e171)