You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<p>Privilege escalation (such as via set-user-ID or set-group-ID file mode) should not be allowed.</p>
329
+
<p>Privilege escalation (such as via set-user-ID or set-group-ID file mode) should not be allowed. <em><a href="#policies-specific-to-linux">This is Linux only policy</a> in v1.25+ <code>(spec.os.name != windows)</code></em></p>
<p>Seccomp profile must be explicitly set to one of the allowed values. Both the <code>Unconfined</code> profile and the <em>absence</em> of a profile are prohibited.</p>
384
+
<p>Seccomp profile must be explicitly set to one of the allowed values. Both the <code>Unconfined</code> profile and the <em>absence</em> of a profile are prohibited. <em><ahref="#policies-specific-to-linux">This is Linux only policy</a> in v1.25+ <code>(spec.os.name != windows)</code></em></p>
Containers must drop <code>ALL</code> capabilities, and are only permitted to add back
410
-
the <code>NET_BIND_SERVICE</code> capability.
410
+
the <code>NET_BIND_SERVICE</code> capability. <em><ahref="#policies-specific-to-linux">This is Linux only policy</a> in v1.25+ <code>(.spec.os.name != "windows")</code></em>
411
411
</p>
412
412
<p><strong>Restricted Fields</strong></p>
413
413
<ul>
@@ -461,6 +461,30 @@ Other alternatives for enforcing policies are being developed in the Kubernetes
Kubernetes lets you use nodes that run either Linux or Windows. You can mix both kinds of
467
+
node in one cluster.
468
+
Windows in Kubernetes has some limitations and differentiators from Linux-based
469
+
workloads. Specifically, many of the Pod `securityContext` fields
470
+
[have no effect on Windows](/docs/concepts/windows/intro/#compatibility-v1-pod-spec-containers-securitycontext).
471
+
472
+
{{< note >}}
473
+
Kubelets prior to v1.24 don't enforce the pod OS field, and if a cluster has nodes on versions earlier than v1.24 the restricted policies should be pinned to a version prior to v1.25.
474
+
{{< /note >}}
475
+
476
+
### Restricted Pod Security Standard changes
477
+
Another important change, made in Kubernetes v1.25 is that the _restricted_ Pod security
478
+
has been updated to use the `pod.spec.os.name` field. Based on the OS name, certain policies that are specific
479
+
to a particular OS can be relaxed for the other OS.
480
+
481
+
482
+
#### OS-specific policy controls
483
+
Restrictions on the following controls are only required if `.spec.os.name` is not `windows`:
484
+
- Privilege Escalation
485
+
- Seccomp
486
+
- Linux Capabilities
487
+
464
488
## FAQ
465
489
466
490
### Why isn't there a profile between privileged and baseline?
@@ -484,23 +508,6 @@ as well as other related parameters outside the Security Context. As of July 202
484
508
[Pod Security Policies](/docs/concepts/security/pod-security-policy/) are deprecated in favor of the
0 commit comments