Windows Security — security settings for Windows containers.
1apiVersion: v12kind: Pod3metadata:4 name: windows-pod5spec:6 os:7 name: windows8 nodeSelector:9 kubernetes.io/os: windows10 securityContext:11 windowsOptions:12 runAsUserName: "ContainerUser"13 gmsaCredentialSpecName: "my-gmsa"14 gmsaCredentialSpec: ""15 supplementalGroupsGroupPolicy: Merge16 containers:17 - name: app18 image: mcr.microsoft.com/dotnet/runtime:8.019 securityContext:20 windowsOptions:21 runAsUserName: "ContainerUser"22 gmsaCredentialSpecName: "my-gmsa"23---24# Windows with service account25apiVersion: v126kind: Pod27metadata:28 name: windows-sa-pod29spec:30 os:31 name: windows32 nodeSelector:33 kubernetes.io/os: windows34 serviceAccountName: myapp-sa35 securityContext:36 windowsOptions:37 runAsUserName: "ContainerUser"38 containers:39 - name: app40 image: mcr.microsoft.com/iis:windowsservercore-ltsc2022
1# Check Windows Pod security2kubectl get pod windows-pod -o jsonpath='{.spec.securityContext.windowsOptions}' | jq34# Verify Windows user5kubectl exec windows-pod -- whoami6kubectl exec windows-pod -- net user78# Check node OS9kubectl get nodes -l kubernetes.io/os=windows10kubectl get nodes -o custom-columns=NAME:.metadata.name,OS:.status.nodeInfo.operatingSystem1112# Check GMSA credential13kubectl get gmsacredentialspec my-gmsa -o yaml1415# View Windows events16kubectl logs windows-pod --previous
Windows Security Options:
Use cases: