Skip to content

Commit 4f97ebe

Browse files
Merge pull request #11575 from mendix/kk-pmp-nist7
nist updates
2 parents 01218ba + 4b8a6b0 commit 4f97ebe

30 files changed

Lines changed: 840 additions & 87 deletions
Lines changed: 182 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,182 @@
1+
---
2+
title: "AC-06 Least Privilege"
3+
linktitle: "AC-06"
4+
url: /private-mendix-platform/nist-controls/ac-06/
5+
description: "Documents the Private Mendix Platform's compliance with the AC-06 control of the NIST 800-53 framework."
6+
weight: 20
7+
---
8+
9+
## Introduction
10+
11+
This document describes how Private Mendix Platform fulfills the AC-06 control.
12+
13+
| Control ID | AC-06 |
14+
| --- | --- |
15+
| Control category | AC - Access Control |
16+
| Requirement baseline | FEDRAMP MODERATE |
17+
| Responsibility and ownership | Mendix - Private Mendix Platform, Mendix - Operator, Mendix - Studio Pro/Runtime, Customer - Infra, Customer - Org |
18+
19+
## Control
20+
21+
The organization employs the principle of least privilege, allowing only authorized accesses for users (or processes acting on behalf of users) which are necessary to accomplish assigned tasks in accordance with organizational missions and business functions.
22+
23+
### Supplemental Guidance
24+
25+
Organizations employ least privilege for specific duties and information systems. The principle of least privilege is also applied to information system processes, ensuring that the processes operate at privilege levels no higher than necessary to accomplish required organizational missions/business functions. Organizations consider the creation of additional processes, roles, and information system accounts as necessary, to achieve least privilege. Organizations also apply least privilege to the development, implementation, and operation of organizational information systems.
26+
27+
* AC-02
28+
* [AC-03](/private-mendix-platform/nist-controls/ac-03/)
29+
* AC-05
30+
* CM-06
31+
* CM-07
32+
* PL-02
33+
34+
## Responsibility
35+
36+
### Mendix Responsibility
37+
38+
#### Private Mendix Platform Installation
39+
40+
Private Mendix Platform supports least privilege by requiring explicit configuration of infrastructure, separating operational scopes, and allowing customers to enable only the functions they need. Private Mendix Platform is deployed into customer-managed Kubernetes environments with defined namespaces, storage, database, registry, and identity settings rather than relying on broad default access. Private Mendix Platform also supports least privilege through controlled authentication and secret management. Sensitive configuration, including database, storage, and administrator credentials, can be sourced from external secret providers.
41+
42+
##### Build Agent
43+
44+
Private Mendix Platform provides a build agent to orchestrate build pods. Build agent implements a secure, ​​least-privilege access model​​ for creating Pods within the Kubernetes cluster. The core concept is to ​​decouple the external user's permissions from the internal service's capabilities​​ by leveraging Kubernetes RBAC (Role-Based Access Control).
45+
46+
##### Connected Mode Deployment
47+
48+
This supports least privilege by centralizing deployment functions in the operator and agent model and limiting the number of users who need direct cluster administration rights. Initial cluster registration and operator installation may still require elevated infrastructure permissions, but ongoing application deployment and environment management can be delegated through Private Mendix Platform without granting broad cluster privileges to all app-level users.
49+
50+
#### Private Mendix Platform Operation (Admin Access)
51+
52+
Private Mendix Platform restricts administrative access through role separation, configurable role assignment, and enterprise identity integration. Administrative duties are divided between Company admin and System admin roles. This separation limits unnecessary access to platform-wide configuration.
53+
54+
Private Mendix Platform further supports least privilege through Dynamic Role Management. Predefined roles such as Developer, Contributor, Operator, and Administrator can be assigned and customized for project, cluster, and CI/CD permissions. Roles are assigned through group membership and applied only to owned or associated resources, allowing access to align with organizational and operational boundaries.
55+
56+
#### Private Mendix Platform Application Management
57+
58+
Private Mendix Platform associates access with apps, groups, namespaces, and roles. App owners can invite users and assign roles, while inherited group roles are synchronized to owned or associated resources. This means the control plane does not require every user to have direct broad access to clusters or all applications. Instead, access is derived from resource ownership and group-based role assignment.
59+
60+
### Customer Responsibility
61+
62+
* The customer cluster admin uses the Private Mendix Platform installer to grant these permissions to the build agent component.
63+
* The customer must correctly install components related to connected mode deployment, such as Interactor, Collector, and Authenticator.
64+
* The customer's administrator must properly grant specific people access to the cluster and namespace management for connected mode deployment.
65+
* The customer must grant proper permissions to give the Private Mendix Platform `mxpc-cli` access to the destination Kubernetes cluster. After that, a piece of script must be executed with `mxpc-cli`.
66+
* Customers must configure Private Mendix Platform roles, group and app ownership, and approval workflows, so that CI/CD and deployment actions are performed only by explicitly authorized users and services
67+
* App implementers and App operators must connect to the customer's IdP of choice, use Private Mendix Platform roles, group ownership, environment separation, application-level security, and controlled approval-based deployment processes, so that users and teams receive only the minimum access required for development, operations, and production deployment.
68+
* Infrastructure implementers and operators are responsible for deploying Private Mendix Platform in a least-privilege environment by separating namespaces where required, scoping Kubernetes RBAC and service identities to only required functions, using managed identity and centralized secret management where supported, restricting access to infrastructure services and tokens, and disabling unused platform capabilities. Because Private Mendix Platform cluster integration relies on customer-created tokens and RBAC objects, customers must demonstrate that these permissions are explicitly limited and justified rather than broadly granted.
69+
70+
## Guidance
71+
72+
### Mendix Responsibility
73+
74+
#### Build Agent
75+
76+
By defining `​​ServiceAccounts`​​, ​​`Roles`​​, `​​RoleBindings​​`, and ​​security policies​​ in Helm charts, the Private Mendix Platform installer ensures that Kubernetes build agents operate under ​​the principle of least privilege​​. This reduces security risks while maintaining CI/CD functionality.
77+
78+
##### ServiceAccount
79+
80+
```yaml
81+
apiVersion: v1
82+
automountServiceAccountToken: true
83+
kind: ServiceAccount
84+
metadata:
85+
annotations:
86+
meta.helm.sh/release-name: mxplatform-kube-agent
87+
meta.helm.sh/release-namespace: build
88+
creationTimestamp: "2025-06-12T02:18:33Z"
89+
labels:
90+
app.kubernetes.io/instance: mxplatform-kube-agent
91+
app.kubernetes.io/managed-by: Helm
92+
app.kubernetes.io/name: mxplatform-kube-agent
93+
app.kubernetes.io/version: 1.16.0
94+
helm.sh/chart: mxplatform-kube-agent-0.1.0
95+
name: mxplatform-kube-agent
96+
namespace: build
97+
resourceVersion: "89036755"
98+
uid: 5a1d4e2d-5ac5-4e26-be59-8c95aabe62c9
99+
```
100+
101+
#### Role
102+
103+
```yaml
104+
apiVersion: rbac.authorization.k8s.io/v1
105+
kind: Role
106+
metadata:
107+
annotations:
108+
meta.helm.sh/release-name: mxplatform-kube-agent
109+
meta.helm.sh/release-namespace: build
110+
creationTimestamp: "2025-06-12T02:18:33Z"
111+
labels:
112+
app.kubernetes.io/managed-by: Helm
113+
name: pod-manager-role
114+
namespace: build
115+
resourceVersion: "89036756"
116+
uid: 1ce6a19d-639f-4a17-84a4-91b526970df1
117+
rules:
118+
- apiGroups:
119+
- ""
120+
resources:
121+
- pods
122+
verbs:
123+
- get
124+
- list
125+
- watch
126+
- create
127+
- delete
128+
```
129+
130+
#### RoleBinding
131+
132+
```yaml
133+
apiVersion: rbac.authorization.k8s.io/v1
134+
kind: RoleBinding
135+
metadata:
136+
annotations:
137+
meta.helm.sh/release-name: mxplatform-kube-agent
138+
meta.helm.sh/release-namespace: build
139+
creationTimestamp: "2025-06-12T02:18:33Z"
140+
labels:
141+
app.kubernetes.io/managed-by: Helm
142+
name: pod-manager-role-binding
143+
namespace: build
144+
resourceVersion: "89036757"
145+
uid: e873f68e-691c-495a-84d7-b43fbcca9609
146+
roleRef:
147+
apiGroup: rbac.authorization.k8s.io
148+
kind: Role
149+
name: pod-manager-role
150+
subjects:
151+
- kind: ServiceAccount
152+
name: mxplatform-kube-agent
153+
namespace: build
154+
```
155+
156+
### Customer Responsibility
157+
158+
#### Connected Mode Deployment
159+
160+
* Customers can use the installer to install components related to connected mode deployment.
161+
* The customer organization must employ the principle of least privilege, allowing only authorized accesses for users (or processes acting on behalf of users) which are necessary to accomplish connected mode namespace configuration.
162+
* Customers can place one valid kubeconfig file which will grant `mxpc-cli` access to the destination cluster, and then execute the command line script shown in the **Installation** tab of the cluster namespace **Details** page in connected mode.
163+
164+
## Proof and Remarks
165+
166+
Private Mendix Platform provides a new **Build Utility** option to build customer Mendix applications.
167+
168+
{{< figure src="/attachments/private-platform/nist-ac/nist-ac-06-1.png" class="no-border" >}}
169+
170+
Kubernetes privilege credentials are removed from the build configuration.
171+
172+
{{< figure src="/attachments/private-platform/nist-ac/nist-ac-06-2.png" class="no-border" >}}
173+
174+
### Connected Mode Components Installation
175+
176+
{{< figure src="/attachments/private-platform/nist-ac/nist-ac-06-3.png" class="no-border" >}}
177+
178+
{{< figure src="/attachments/private-platform/nist-ac/nist-ac-06-4.png" class="no-border" >}}
179+
180+
### Private Mendix Plaform Roles
181+
182+
{{< figure src="/attachments/private-platform/nist-ac/nist-ac-06-5.png" class="no-border" >}}
Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
---
2+
title: "CA-05 Plan of Action and Milestones"
3+
linktitle: "CA-05"
4+
url: /private-mendix-platform/nist-controls/ca-05/
5+
description: "Documents the Private Mendix Platform's compliance with the CA-07 control of the NIST 800-53 framework."
6+
weight: 20
7+
---
8+
9+
## Introduction
10+
11+
This document describes how Private Mendix Platform fulfills the CA-05 control.
12+
13+
| Control ID | CA-05 |
14+
| --- | --- |
15+
| Control category | CA - Security Assessment and Authorization |
16+
| Requirement baseline | FEDRAMP MODERATE |
17+
| Responsibility and ownership | Mendix - Private Mendix Platform, Mendix - Operator, Mendix - Studio Pro/Runtime, Customer - Infra |
18+
19+
## Control
20+
21+
The organization:
22+
23+
* Develops a plan of action and milestones for the information system to document the organization's planned remedial actions to correct weaknesses or deficiencies noted during the assessment of the security controls and to reduce or eliminate known vulnerabilities in the system.
24+
* Updates existing plan of action and milestones [Assignment: organization-defined frequency] based on the findings from security controls assessments, security impact analyses, and continuous monitoring activities.
25+
26+
### Supplemental Guidance
27+
28+
Plans of action and milestones are key documents in security authorization packages and are subject to federal reporting requirements established by OMB.
29+
30+
The following controls are related to this control:
31+
32+
* CA-02
33+
* CA-07
34+
* CM-04
35+
* PM-04
36+
37+
For more information, refer to the OMB Memorandum 02-01 and NIST Special Publication 800-37.
38+
39+
## Responsibility
40+
41+
### Customer Responsibility
42+
43+
The customer is responsible for implementing this control in an appropriate manner in their organization. This includes developing and updating plans of action and milestones (POAMs) based on vulnerabilities found in the implemented Mendix App and associated infrastructure to ensure compliance with federal requirements. The customer must ensure that POAM processes, timelines, and remediation tracking are documented, reviewed, and enforced within their environment.
44+
45+
The Infra Implementer is responsible for addressing specific infrastructure vulnerabilities as dictated by the POAM process.
46+
47+
The App Implementer is responsible for addressing specific application vulnerabilities as dictated by the POAM process.
48+
49+
The Infra Operator is responsible for ongoing remediation of infrastructure vulnerabilities identified through the POAM process.
50+
51+
The App Operator is responsible for ongoing remediation of application vulnerabilities identified through the POAM process.
52+
53+
## Guidance
54+
55+
### Customer Responsibility
56+
57+
This control is governed by NIST SP 800-37 and OMB Memorandum 02-01, which establish requirements for developing and maintaining plans of action and milestones as part of the security authorization process. Customers operating within a FedRAMP or DoD SRG environment must ensure that POAMs are developed for all identified weaknesses and updated based on ongoing security assessments and continuous monitoring activities.
58+
59+
Mendix, as a managed platform provider, maintains its own internal vulnerability remediation processes and responds to vulnerabilities in the Mendix Operator, Private Mendix Platform, Mendix Runtime, and Studio Pro through documented security advisories and timely release cycles. However, the development and maintenance of the customer's system-wide POAM remains a customer responsibility.
60+
61+
To meet these requirements, the customer must carry out the following actions:
62+
63+
1. Develop and maintain POAMs.
64+
65+
The customer must develop and update plans of action and milestones based on vulnerabilities found in the implemented Mendix App and associated infrastructure. POAMs must document planned remedial actions, responsible parties, and target completion dates in accordance with NIST SP 800-37 and OMB reporting requirements.
66+
67+
2. Assign remediation responsibilities.
68+
69+
The customer must assign specific vulnerability remediation tasks to the Infra Implementer, App Implementer, Infra Operator, and App Operator, as dictated by the POAM process. Each party must address vulnerabilities in the components they own within the regulation-required timeframes. The customer should also track Mendix security advisories and platform updates as part of the overall POAM process.
70+
71+
3. Update POAMs based on continuous monitoring.
72+
73+
The customer must update existing POAMs at organization-defined frequencies based on findings from security control assessments, security impact analyses, and continuous monitoring activities per NIST SP 800-37 and CA-07 continuous monitoring requirements.
74+
75+
## Proof and Remarks
76+
77+
### Mendix Platform Vulnerability Response Process
78+
79+
While CA-05 is fundamentally a customer responsibility (developing and maintaining the organization's POAM), the customer must track Mendix's own vulnerability remediation as a component of the broader POAM. Mendix maintains documented vulnerability response and release procedures.
80+
81+
### Mendix Security Advisories and Release Notes
82+
83+
Mendix publishes security advisories and release notes for the Mendix Operator, Private Mendix Platform, Mendix Runtime, and Studio Pro that document:
84+
85+
* Vulnerability identification (CVE IDs, severity levels, affected components)
86+
* Remediation status and timelines (when a fix will be available)
87+
* Required upgrade paths (which versions include the fix)
88+
* Technical details (to support customer impact analysis)
89+
90+
For more information, see:
91+
92+
* [Security Advisories](/releasenotes/security-advisories/)
93+
* [Private Mendix Platform Release Notes](/releasenotes/private-platform/)
94+
95+
### Integration into Customer POAMs
96+
97+
The customer must integrate Mendix security advisory information into their POAM process by:
98+
99+
* Monitoring Mendix security releases and advisories
100+
* Assessing impact to customer-developed Mendix apps and Private Mendi Platform deployments
101+
* Planning remediation (applying updates to Mendix platform components within required timeframes)
102+
* Tracking status (documenting when Mendix platform updates have been deployed and validated)
103+
104+
### Scope Clarification
105+
106+
The customer is responsible for developing, maintaining, and executing the overall POAM for the information system.
107+
108+
Mendix is responsible for publishing timely security advisories and providing patched releases for Mendix platform components.
109+
110+
Infrastructure and Application Implementers and Operators are responsible for implementing specific remedial actions within their respective domains as directed by the customer's POAM.

content/en/docs/private-platform/nist-controls/cm/pmp-nist-cm05.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,6 @@ To meet these requirements, the customer must carry out the following actions:
6161

6262
The customer must ensure that both physical and logical access controls are in place for change management, including workflow automation, role-based access to deployment pipelines, and media library restrictions. The Infra Implementer, App Implementer, Infra Operator, and App Operator must respect the customer's change control restrictions throughout the system lifecycle per NIST SP 800-128.
6363

64-
Maintain change access records and audit trails.
64+
3. Maintain change access records and audit trails.
6565

6666
The customer must maintain records of all access granted for change purposes and periodically review these records to detect unauthorized changes. This includes implementing audit logging for all configuration change activities, conducting regular reviews of change access permissions, and enforcing separation of duties as required by PE-03 physical protection requirements.

0 commit comments

Comments
 (0)