mirror of
https://github.com/ceph/ceph-csi.git
synced 2024-12-04 20:20:19 +00:00
136 lines
2.9 KiB
YAML
136 lines
2.9 KiB
YAML
|
# Required PodSecurityPolicies, Roles and RoleBindings
|
||
|
# for minikube to bootstrap when PSPs are enabled
|
||
|
# https://minikube.sigs.k8s.io/docs/tutorials/using_psp/
|
||
|
---
|
||
|
apiVersion: policy/v1beta1
|
||
|
kind: PodSecurityPolicy
|
||
|
metadata:
|
||
|
name: privileged
|
||
|
annotations:
|
||
|
seccomp.security.alpha.kubernetes.io/allowedProfileNames: "*"
|
||
|
labels:
|
||
|
addonmanager.kubernetes.io/mode: EnsureExists
|
||
|
spec:
|
||
|
privileged: true
|
||
|
allowPrivilegeEscalation: true
|
||
|
allowedCapabilities:
|
||
|
- "*"
|
||
|
volumes:
|
||
|
- "*"
|
||
|
hostNetwork: true
|
||
|
hostPorts:
|
||
|
- min: 0
|
||
|
max: 65535
|
||
|
hostIPC: true
|
||
|
hostPID: true
|
||
|
runAsUser:
|
||
|
rule: 'RunAsAny'
|
||
|
seLinux:
|
||
|
rule: 'RunAsAny'
|
||
|
supplementalGroups:
|
||
|
rule: 'RunAsAny'
|
||
|
fsGroup:
|
||
|
rule: 'RunAsAny'
|
||
|
---
|
||
|
apiVersion: policy/v1beta1
|
||
|
kind: PodSecurityPolicy
|
||
|
metadata:
|
||
|
name: restricted
|
||
|
labels:
|
||
|
addonmanager.kubernetes.io/mode: EnsureExists
|
||
|
spec:
|
||
|
privileged: false
|
||
|
allowPrivilegeEscalation: false
|
||
|
requiredDropCapabilities:
|
||
|
- ALL
|
||
|
volumes:
|
||
|
- 'configMap'
|
||
|
- 'emptyDir'
|
||
|
- 'projected'
|
||
|
- 'secret'
|
||
|
- 'downwardAPI'
|
||
|
- 'persistentVolumeClaim'
|
||
|
hostNetwork: false
|
||
|
hostIPC: false
|
||
|
hostPID: false
|
||
|
runAsUser:
|
||
|
rule: 'MustRunAsNonRoot'
|
||
|
seLinux:
|
||
|
rule: 'RunAsAny'
|
||
|
supplementalGroups:
|
||
|
rule: 'MustRunAs'
|
||
|
ranges:
|
||
|
# Forbid adding the root group.
|
||
|
- min: 1
|
||
|
max: 65535
|
||
|
fsGroup:
|
||
|
rule: 'MustRunAs'
|
||
|
ranges:
|
||
|
# Forbid adding the root group.
|
||
|
- min: 1
|
||
|
max: 65535
|
||
|
readOnlyRootFilesystem: false
|
||
|
---
|
||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||
|
kind: ClusterRole
|
||
|
metadata:
|
||
|
name: psp:privileged
|
||
|
labels:
|
||
|
addonmanager.kubernetes.io/mode: EnsureExists
|
||
|
rules:
|
||
|
- apiGroups: ['policy']
|
||
|
resources: ['podsecuritypolicies']
|
||
|
verbs: ['use']
|
||
|
resourceNames:
|
||
|
- privileged
|
||
|
---
|
||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||
|
kind: ClusterRole
|
||
|
metadata:
|
||
|
name: psp:restricted
|
||
|
labels:
|
||
|
addonmanager.kubernetes.io/mode: EnsureExists
|
||
|
rules:
|
||
|
- apiGroups: ['policy']
|
||
|
resources: ['podsecuritypolicies']
|
||
|
verbs: ['use']
|
||
|
resourceNames:
|
||
|
- restricted
|
||
|
---
|
||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||
|
kind: ClusterRoleBinding
|
||
|
metadata:
|
||
|
name: default:restricted
|
||
|
labels:
|
||
|
addonmanager.kubernetes.io/mode: EnsureExists
|
||
|
roleRef:
|
||
|
apiGroup: rbac.authorization.k8s.io
|
||
|
kind: ClusterRole
|
||
|
name: psp:restricted
|
||
|
subjects:
|
||
|
- kind: Group
|
||
|
name: system:authenticated
|
||
|
apiGroup: rbac.authorization.k8s.io
|
||
|
---
|
||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||
|
kind: RoleBinding
|
||
|
metadata:
|
||
|
name: default:privileged
|
||
|
namespace: kube-system
|
||
|
labels:
|
||
|
addonmanager.kubernetes.io/mode: EnsureExists
|
||
|
roleRef:
|
||
|
apiGroup: rbac.authorization.k8s.io
|
||
|
kind: ClusterRole
|
||
|
name: psp:privileged
|
||
|
subjects:
|
||
|
- kind: Group
|
||
|
name: system:masters
|
||
|
apiGroup: rbac.authorization.k8s.io
|
||
|
- kind: Group
|
||
|
name: system:nodes
|
||
|
apiGroup: rbac.authorization.k8s.io
|
||
|
- kind: Group
|
||
|
name: system:serviceaccounts:kube-system
|
||
|
apiGroup: rbac.authorization.k8s.io
|