Skip to content

Commit fcd63f6

Browse files
committed
2579: windows restricted profile support
1 parent 1fd25ff commit fcd63f6

File tree

2 files changed

+17
-10
lines changed

2 files changed

+17
-10
lines changed

keps/sig-auth/2579-psp-replacement/README.md

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -561,16 +561,14 @@ _Note: These fields should be unconditionally restricted, regardless of targeted
561561

562562
### Windows Support
563563

564-
In the initial alpha implementation, Windows pods will be supported by both the `privileged` and
565-
`baseline` profiles. Windows pods _may_ be broken by the restricted field, which requires setting
566-
linux-specific settings (such as seccomp profile, run as non root, and disallow privilege
567-
escalation). If the Kubelet and/or container runtime choose to ignore these linux-specific values at
568-
runtime, then windows pods should still be allowed under the restricted profile, although the
569-
profile will not add additional enforcement over baseline (for Windows).
564+
The `privileged` and `baseline` levels do not require any OS-specific fields to be set.
570565

571-
Windows support will be reevaluated prior to this policy feature going to beta, or if/when
572-
Kubernetes adds support to definitively distinguish between Windows and Linux workloads. See
573-
[Windows restricted profile support](#windows-restricted-profile-support) for more details.
566+
The `restricted` level currently requires fields that are Linux-specific, which may prevent
567+
Windows pods from running or require Windows kubelets to ignore those fields.
568+
569+
A mechanism for Windows-specific exemptions or requirements in the `restricted` profile is
570+
described in the ["future work" section](#windows-restricted-profile-support) and addressed by
571+
[KEP-2802](https://github.com/kubernetes/enhancements/issues/2802).
574572

575573
### Flexible Extension Support
576574

@@ -1042,6 +1040,14 @@ a user can just create a linux pod with the Windows RuntimeClass and manually sc
10421040
node to bypass the policy checks. For example, this would be the case if the cluster was exclusively
10431041
using the dockershim runtime, which requires the hardcoded `docker` runtime handler to be set.
10441042

1043+
[KEP-2802](https://github.com/kubernetes/enhancements/issues/2802) proposes allowing a Pod to indicate its OS.
1044+
As part of that KEP:
1045+
* Pod validation will be adjusted to ensure values are not required
1046+
for OS-specific fields that are irrelevant to the Pod's OS.
1047+
* Pod Security Standards will be reviewed and updated to indicate which Pod OSes they apply to
1048+
* The `restricted` Pod Security Standard will be reviewed to see if there are Windows-specific requirements that should be added
1049+
* The PodSecurity admission implementation will be updated to skip checks which do not apply to the Pod's OS.
1050+
10451051
### Offline Policy Checking
10461052

10471053
We could provide a standalone tool that is capable of checking the policies against resource files

keps/sig-auth/2579-psp-replacement/kep.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@ approvers:
2424
- "@tabbysable"
2525
prr-approvers:
2626
- "@deads2k"
27-
see-also: []
27+
see-also:
28+
- https://github.com/kubernetes/enhancements/issues/2802
2829
replaces: []
2930

3031
# The target maturity stage in the current dev cycle for this KEP.

0 commit comments

Comments
 (0)