Skip to content

Commit 9b68767

Browse files
committed
Moving Windows security info to new page
Signed-off-by: Mark Rossetti <[email protected]>
1 parent aef1728 commit 9b68767

File tree

2 files changed

+55
-18
lines changed

2 files changed

+55
-18
lines changed
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
---
2+
reviewers:
3+
- jayunit100
4+
- jsturtevant
5+
- marosset
6+
- perithompson
7+
title: Security For Windows Nodes
8+
content_type: concept
9+
weight: 75
10+
---
11+
12+
<!-- overview -->
13+
14+
This page describes security considerations and best practices specific to the Windows operating system.
15+
16+
<!-- body -->
17+
18+
## Protection for Secret data on nodes
19+
20+
On Windows, data from Secrets are written out in clear text onto the node's local
21+
storage (as compared to using tmpfs / in-memory filesystems on Linux). As a cluster
22+
operator, you should take both of the following additional measures:
23+
24+
1. Use file ACLs to secure the Secrets' file location.
25+
1. Apply volume-level encryption using [BitLocker](https://docs.microsoft.com/windows/security/information-protection/bitlocker/bitlocker-how-to-deploy-on-windows-server).
26+
27+
## Container users
28+
29+
[RunAsUsername](/docs/tasks/configure-pod-container/configure-runasusername)
30+
can be specified for Windows Pods or containers to execute the container
31+
processes as specific user. This is roughly equivalent to
32+
[RunAsUser](/docs/concepts/policy/pod-security-policy/#users-and-groups).
33+
34+
Windows containers offer two default user accounts, ContainerUser and ContainerAdministrator.
35+
The differences between these two user accounts are covered in
36+
[When to use ContainerAdmin and ContainerUser user accounts](https://docs.microsoft.com/virtualization/windowscontainers/manage-containers/container-security#when-to-use-containeradmin-and-containeruser-user-accounts) within Microsoft's _Secure Windows containers_ documentation.
37+
38+
Local users can be added to container images during the container build process.
39+
40+
{{< note >}}
41+
42+
* [Nano Server](https://hub.docker.com/_/microsoft-windows-nanoserver) based images run as `ContainerUser` by default
43+
* [Server Core](https://hub.docker.com/_/microsoft-windows-servercore) based images run as `ContainerAdministrator` by default
44+
45+
{{< /note >}}
46+
47+
Windows containers can also run as Active Directory identities by utilizing [Group Managed Service Accounts](/docs/tasks/configure-pod-container/configure-gmsa/)
48+
49+
## Pod-level security isolation
50+
51+
Linux-specific pod security context mechanisms (such as SELinux, AppArmor, Seccomp, or custom
52+
POSIX capabilities) are not supported on Windows nodes.
53+
54+
Privileged containers are [not supported](#compatibility-v1-pod-spec-containers-securitycontext) on Windows.
55+
Instead [HostProcess containers](/docs/tasks/configure-pod-container/create-hostprocess-pod) can be used on Windows to perform many of the tasks performed by privileged containers on Linux.

content/en/docs/setup/production-environment/windows/intro-windows-in-kubernetes.md

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -684,24 +684,6 @@ Windows Server SAC release
684684

685685
The Kubernetes [version-skew policy](/docs/setup/release/version-skew-policy/) also applies.
686686

687-
## Security for Windows nodes {#security}
688-
689-
On Windows, data from Secrets are written out in clear text onto the node's local
690-
storage (as compared to using tmpfs / in-memory filesystems on Linux). As a cluster
691-
operator, you should take both of the following additional measures:
692-
693-
1. Use file ACLs to secure the Secrets' file location.
694-
1. Apply volume-level encryption using [BitLocker](https://docs.microsoft.com/en-us/windows/security/information-protection/bitlocker/bitlocker-how-to-deploy-on-windows-server).
695-
696-
[RunAsUsername](/docs/tasks/configure-pod-container/configure-runasusername)
697-
can be specified for Windows Pods or containers to execute the container
698-
processes as a node-default user. This is roughly equivalent to
699-
[RunAsUser](/docs/concepts/policy/pod-security-policy/#users-and-groups).
700-
701-
Linux-specific pod security context privileges such as SELinux, AppArmor, Seccomp, or capabilities (POSIX capabilities), and others are not supported.
702-
703-
Privileged containers are [not supported](#compatibility-v1-pod-spec-containers-securitycontext) on Windows.
704-
705687
## Getting help and troubleshooting {#troubleshooting}
706688

707689
Your main source of help for troubleshooting your Kubernetes cluster should start

0 commit comments

Comments
 (0)