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
Copy file name to clipboardExpand all lines: articles/operator-nexus/concepts-security.md
+88-7Lines changed: 88 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
---
2
2
title: "Azure Operator Nexus: Security concepts"
3
-
description: Security overview for Azure Operator Nexus
4
-
author: scottsteinbrueck
3
+
description: Security overview for Azure Operator Nexus
4
+
author: scottsteinbrueck
5
5
ms.author: ssteinbrueck
6
6
ms.service: azure-operator-nexus
7
7
ms.topic: conceptual
@@ -11,13 +11,13 @@ ms.custom: template-concept
11
11
12
12
# Azure Operator Nexus security
13
13
14
-
Azure Operator Nexus is designed and built to both detect and defend against
15
-
the latest security threats and comply with the strict requirements of government
16
-
and industry security standards. Two cornerstones form the foundation of its
14
+
Azure Operator Nexus is designed and built to both detect and defend against
15
+
the latest security threats and comply with the strict requirements of government
16
+
and industry security standards. Two cornerstones form the foundation of its
17
17
security architecture:
18
18
19
19
***Security by default** - Security resiliency is an inherent part of the platform with little to no configuration changes needed to use it securely.
20
-
***Assume breach** - The underlying assumption is that any system can be compromised, and as such the goal is to minimize the impact of a security breach if one occurs.
20
+
***Assume breach** - The underlying assumption is that any system can be compromised, and as such the goal is to minimize the impact of a security breach if one occurs.
21
21
22
22
Azure Operator Nexus realizes the above by leveraging Microsoft cloud-native security tools that give you the ability to improve your cloud security posture while allowing you to protect your operator workloads.
23
23
@@ -47,6 +47,87 @@ You have the option to enable Defender for Containers protection within Defender
47
47
48
48
## Cloud security is a shared responsibility
49
49
50
-
It is important to understand that in a cloud environment, security is a [shared responsibility](../security/fundamentals/shared-responsibility.md) between you and the cloud provider. The responsibilities vary depending on the type of cloud service your workloads run on, whether it is Software as a Service (SaaS), Platform as a Service (PaaS), or Infrastructure as a Service (IaaS), as well as where the workloads are hosted – within the cloud provider’s or your own on-premises datacenters.
50
+
It's important to understand that in a cloud environment, security is a [shared responsibility](../security/fundamentals/shared-responsibility.md) between you and the cloud provider. The responsibilities vary depending on the type of cloud service your workloads run on, whether it is Software as a Service (SaaS), Platform as a Service (PaaS), or Infrastructure as a Service (IaaS), as well as where the workloads are hosted – within the cloud provider’s or your own on-premises datacenters.
51
51
52
52
Azure Operator Nexus workloads run on servers in your datacenters, so you are in control of changes to your on-premises environment. Microsoft periodically makes new platform releases available that contain security and other updates. You must then decide when to apply these releases to your environment as appropriate for your organization’s business needs.
53
+
54
+
## Kubernetes Security Benchmark Scanning
55
+
56
+
Industry standard security benchmarking tools are used to scan the Azure Operator Nexus platform for security compliance. These tools include [OpenSCAP](https://public.cyber.mil/stigs/scap/), to evaluate compliance with Kubernetes Security Technical Implementation Guide (STIG) controls, and Aqua Security’s [Kube-Bench](https://github.com/aquasecurity/kube-bench/tree/main), to evaluate compliance with the Center for Internet Security (CIS) Kubernetes Benchmarks.
57
+
58
+
Some controls aren't technically feasible to implement in the Azure Operator Nexus environment, and these excepted controls are documented below for the applicable Nexus layers.
59
+
60
+
Environmental controls such as RBAC and Service Account tests aren't evaluated by these tools, as the outcomes may differ based on customer requirements.
61
+
62
+
**NTF = Not Technically Feasible**
63
+
64
+
### OpenSCAP STIG - V2R2
65
+
66
+
*Cluster*
67
+
68
+
:::image type="content" source="media/security/nexus-cluster-openscap.png" alt-text="Screenshot of Cluster OpenSCAP exceptions." lightbox="media/security/nexus-cluster-openscap.png":::
69
+
70
+
|STIG ID|Recommendation description|Status|Issue|
71
+
|---|---|---|---|
72
+
|V-242386|The Kubernetes API server must have the insecure port flag disabled|NTF|This check is deprecated in v1.24.0 and greater|
73
+
|V-242397|The Kubernetes kubelet staticPodPath must not enable static pods|NTF|Only enabled for control nodes, required for kubeadm|
74
+
|V-242403|Kubernetes API Server must generate audit records that identify what type of event has occurred, identify the source of the event, contain the event results, identify any users, and identify any containers associated with the event|NTF|Certain API requests and responses contain secrets and therefore aren't captured in the audit logs|
75
+
|V-242424|Kubernetes Kubelet must enable tlsPrivateKeyFile for client authentication to secure service|NTF|Kubelet SANs contains hostname only|
76
+
|V-242425|Kubernetes Kubelet must enable tlsCertFile for client authentication to secure service.|NTF|Kubelet SANs contains hostname only|
77
+
|V-242434|Kubernetes Kubelet must enable kernel protection.|NTF|Enabling kernel protection isn't feasible for kubeadm in Nexus|
|V-242386|The Kubernetes API server must have the insecure port flag disabled|NTF|This check is deprecated in v1.24.0 and greater|
87
+
|V-242397|The Kubernetes kubelet staticPodPath must not enable static pods|NTF|Only enabled for control nodes, required for kubeadm|
88
+
|V-242403|Kubernetes API Server must generate audit records that identify what type of event has occurred, identify the source of the event, contain the event results, identify any users, and identify any containers associated with the event|NTF|Certain API requests and responses contain secrets and therefore aren't captured in the audit logs|
89
+
|V-242424|Kubernetes Kubelet must enable tlsPrivateKeyFile for client authentication to secure service|NTF|Kubelet SANs contains hostname only|
90
+
|V-242425|Kubernetes Kubelet must enable tlsCertFile for client authentication to secure service.|NTF|Kubelet SANs contains hostname only|
91
+
|V-242434|Kubernetes Kubelet must enable kernel protection.|NTF|Enabling kernel protection isn't feasible for kubeadm in Nexus|
92
+
93
+
94
+
*Cluster Manager - Azure Kubernetes*
95
+
96
+
As a secure service, Azure Kubernetes Service (AKS) complies with SOC, ISO, PCI DSS, and HIPAA standards. The following image shows the OpenSCAP file permission exceptions for the Cluster Manager AKS implementation.
97
+
98
+
:::image type="content" source="media/security/nexus-cluster-manager-openscap.png" alt-text="Screenshot of Cluster Manager OpenSCAP exceptions." lightbox="media/security/nexus-cluster-manager-openscap.png":::
99
+
100
+
101
+
### Aquasec Kube-Bench - CIS 1.9
102
+
103
+
*Cluster*
104
+
105
+
:::image type="content" source="media/security/nexus-cluster-kubebench.png" alt-text="Screenshot of Cluster Kube-Bench exceptions." lightbox="media/security/nexus-cluster-kubebench.png":::
106
+
107
+
|CIS ID|Recommendation description|Status|Issue|
108
+
|---|---|---|---|
109
+
|1|Control Plane Components|||
110
+
|1.1|Control Plane Node Configuration Files|||
111
+
|1.1.12|Ensure that the etcd data directory ownership is set to `etcd:etcd`|NTF|Nexus is `root:root`, etcd user isn't configured for kubeadm|
112
+
|1.2|API Server|||
113
+
|1.1.12|Ensure that the `--kubelet-certificate-authority` argument is set as appropriate|NTF|Kubelet SANs includes hostname only|
|1.1.12|Ensure that the etcd data directory ownership is set to `etcd:etcd`|NTF|Nexus is `root:root`, etcd user isn't configured for kubeadm|
125
+
|1.2|API Server|||
126
+
|1.1.12|Ensure that the `--kubelet-certificate-authority` argument is set as appropriate|NTF|Kubelet SANs includes hostname only|
127
+
128
+
129
+
*Cluster Manager - Azure Kubernetes*
130
+
131
+
The Operator Nexus Cluster Manager is an AKS implementation. The following image shows the Kube-Bench exceptions for the Cluster Manager. A full report of CIS Benchmark control evaluation for Azure Kubernetes Service (AKS) can be found [here](/azure/aks/cis-kubernetes)
132
+
133
+
:::image type="content" source="media/security/nexus-cluster-manager-kubebench.png" alt-text="Screenshot of Cluster Manager Kube-Bench exceptions." lightbox="media/security/nexus-cluster-manager-kubebench.png":::
0 commit comments