forked from yannh/kubernetes-json-schema
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsecuritycontext.json
153 lines (153 loc) · 5.38 KB
/
securitycontext.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
{
"description": "SecurityContext holds security configuration that will be applied to a container. Some fields are present in both SecurityContext and PodSecurityContext. When both are set, the values in SecurityContext take precedence.",
"properties": {
"allowPrivilegeEscalation": {
"description": "AllowPrivilegeEscalation controls whether a process can gain more privileges than its parent process. This bool directly controls if the no_new_privs flag will be set on the container process. AllowPrivilegeEscalation is true always when the container is: 1) run as Privileged 2) has CAP_SYS_ADMIN",
"type": [
"boolean",
"null"
]
},
"capabilities": {
"description": "Adds and removes POSIX capabilities from running containers.",
"properties": {
"add": {
"description": "Added capabilities",
"items": {
"type": [
"string",
"null"
]
},
"type": [
"array",
"null"
]
},
"drop": {
"description": "Removed capabilities",
"items": {
"type": [
"string",
"null"
]
},
"type": [
"array",
"null"
]
}
},
"type": [
"object",
"null"
]
},
"privileged": {
"description": "Run container in privileged mode. Processes in privileged containers are essentially equivalent to root on the host. Defaults to false.",
"type": [
"boolean",
"null"
]
},
"procMount": {
"description": "procMount denotes the type of proc mount to use for the containers. The default is DefaultProcMount which uses the container runtime defaults for readonly paths and masked paths. This requires the ProcMountType feature flag to be enabled.",
"type": [
"string",
"null"
]
},
"readOnlyRootFilesystem": {
"description": "Whether this container has a read-only root filesystem. Default is false.",
"type": [
"boolean",
"null"
]
},
"runAsGroup": {
"description": "The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.",
"format": "int64",
"type": [
"integer",
"null"
]
},
"runAsNonRoot": {
"description": "Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.",
"type": [
"boolean",
"null"
]
},
"runAsUser": {
"description": "The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence.",
"format": "int64",
"type": [
"integer",
"null"
]
},
"seLinuxOptions": {
"description": "SELinuxOptions are the labels to be applied to the container",
"properties": {
"level": {
"description": "Level is SELinux level label that applies to the container.",
"type": [
"string",
"null"
]
},
"role": {
"description": "Role is a SELinux role label that applies to the container.",
"type": [
"string",
"null"
]
},
"type": {
"description": "Type is a SELinux type label that applies to the container.",
"type": [
"string",
"null"
]
},
"user": {
"description": "User is a SELinux user label that applies to the container.",
"type": [
"string",
"null"
]
}
},
"type": [
"object",
"null"
]
},
"windowsOptions": {
"description": "WindowsSecurityContextOptions contain Windows-specific options and credentials.",
"properties": {
"gmsaCredentialSpec": {
"description": "GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field. This field is alpha-level and is only honored by servers that enable the WindowsGMSA feature flag.",
"type": [
"string",
"null"
]
},
"gmsaCredentialSpecName": {
"description": "GMSACredentialSpecName is the name of the GMSA credential spec to use. This field is alpha-level and is only honored by servers that enable the WindowsGMSA feature flag.",
"type": [
"string",
"null"
]
}
},
"type": [
"object",
"null"
]
}
},
"type": "object",
"$schema": "http://json-schema.org/schema#"
}