Skip to content

Commit 129db9c

Browse files
Merge pull request #11233 from mendix/nc-policies
Control Center Policies
2 parents e71bfe1 + 70fc363 commit 129db9c

11 files changed

Lines changed: 208 additions & 5 deletions

File tree

content/en/docs/control-center/security/audit-logs.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: "Audit Logs"
33
url: /control-center/audit-logs/
44
description: "Describes the Audit Logs page in the Mendix Control Center."
5-
weight: 30
5+
weight: 60
66
beta: true
77
---
88

content/en/docs/control-center/security/certificate-management.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: "Certificate Management"
33
linktitle: "Certificate Management"
44
url: /control-center/certificate-management/
55
description: "Describes the Certificate Management page in Mendix Control Center."
6-
weight: 40
6+
weight: 50
77
beta: true
88
---
99

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
---
2+
title: "Policies"
3+
url: /control-center/policies/
4+
description: "Describes the Policies page in the Mendix Control Center."
5+
weight: 30
6+
---
7+
8+
## Introduction
9+
10+
Policies help ensure that your app landscape is secure, compliant, and consistent. On the **Policies** page, you can define policies that your apps need to adhere to. If they do not, violations are automatically detected and reported in Software Composition, allowing you to react accordingly. For details on how policy violations are displayed in Software Composition, refer to [Policy Status](/control-center/policy-status/).
11+
12+
The **Policies** page allows you to create new policies, lists all of your existing policies, and displays a **Help & Support** pane with useful information about creating policies.
13+
14+
## Defining Policies
15+
16+
You can define policies by either using a template or starting from scratch. The following sections describe the process for each scenario.
17+
18+
### Creating a Policy From a Template
19+
20+
You can use one of the existing templates to create your own policy.
21+
22+
1. Click **Create from Template**.
23+
24+
2. Select one of the available templates:
25+
26+
* Only allow Marketplace components that are platform-supported
27+
* Only medium or low findings are allowed
28+
* Only Mendix runtime versions >= 9.24.43 are allowed
29+
30+
3. In the **Policy Name** field, add a name for the new policy.
31+
32+
4. Select one of these actions:
33+
34+
* **Edit** – Make changes to the template, such as adjusting the Mendix runtime version.
35+
* **Save as Inactive** – Save the policy, but do not enforce it yet.
36+
* **Save & Activate** – Save the policy and enforce it.
37+
38+
### Creating a Policy From Scratch
39+
40+
You can create a policy by defining your own details.
41+
42+
1. Click **Create from Scratch**.
43+
44+
2. On the **Policy Definition** tab, fill in the following details:
45+
46+
* **Policy Name** – A relevant name for your policy, such as one indicating what the policy checks.
47+
* **Description** – A description of the goal of the policy, which covers why it needs to be adhered to, and how to fix its violations.
48+
* **Policy Conditions** – Define the conditions under which the policy is considered violated. These are the available conditions and their values:
49+
50+
* **Any finding severity is** – Choose which severity level violates the policy. You can select one or more of the following values:
51+
52+
* **LOW**
53+
* **MEDIUM**
54+
* **HIGH**
55+
* **CRITICAL**
56+
57+
For example, if you select **CRITICAL**, apps with critical findings violate this policy.
58+
59+
* **Mendix runtime version is lower than** – Indicate which Mendix version is the minimum that your apps must use.
60+
61+
* **Marketplace component license is not** – Select the licenses that are acceptable. If a Marketplace component has a license which is not one of the ones you select here, the policy is violated. These are the possible values:
62+
63+
* MIT
64+
* BSD_2_0
65+
* APACHE_V2
66+
* APACHE_1_0
67+
* MENDIX_EULA
68+
* PARTNER_LICENSES
69+
* CREATIVE_COMMONS_CC0
70+
* GNU_GENERAL_PUBLIC_LICENSE_V3
71+
* MENDIX_MARKETPLACE_CONTENT_TERMS
72+
73+
* **Marketplace component support is not** – Select the support types that are acceptable. If a Marketplace component has a support type which is not one of the ones you select here, the policy is violated. These are the possible values:
74+
75+
* PARTNER
76+
* SIEMENS
77+
* PLATFORM
78+
* COMMUNITY
79+
80+
* **Checkpoints & Action(s)** – Select the trigger which causes the policy to be checked, and the action that is taken if the policy is violated. Currently, policy violations are checked at the time of package creation, and violations generate warnings.
81+
82+
3. On the **Policy Scope** tab, select whether you want the policy to apply to all licensed apps, or only to specific apps in your environment.
83+
84+
4. Select one of these actions:
85+
86+
* **Cancel** – Discard the policy.
87+
* **Save as Inactive** – Save the policy, but do not enforce it yet.
88+
* **Save & Activate** – Save the policy and enforce it.
89+
90+
## Policy Details
91+
92+
These are the details you can see for every existing policy:
93+
94+
* **Policy Name** – The policy's name.
95+
* **ID** – The policy's unique ID, which you can copy.
96+
* **Policy Scope** – The policy's app scope.
97+
* **Last Updated By** – The unique ID of the user who most recently updated the policy.
98+
* **Last Updated Date** – The date when the policy was most recently updated.
99+
* **Status** – Whether the policy is active or not.
100+
* Actions:
101+
102+
* **Edit Policy**
103+
* **Deactivate Policy**
104+
* **Delete Policy**

content/en/docs/control-center/security/software-composition/overview.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ The app list is sorted based on the number of findings and their severity, from
4343
* **Environment** — The name of the environment.
4444
* **Runtime** — The Mendix Runtime version.
4545
* **Findings** — The number of findings of each type, color-coded according to severity level.
46+
* **Policy Status** – The number of policies that the app violates. For details on each policy, click this line item, then go to the **Policy Status** tab of the app.
4647
* **Technical Contact** — The Technical Contact of the app.
4748
* **Target Cloud** — The type of cloud where the deployment package is deployed. Currently, the following types of cloud are supported:
4849
* Mendix Free Cloud
@@ -160,3 +161,29 @@ The component usage list contains the following information:
160161
* Column customization ({{% icon name="view" %}}) – You can customize the columns of the list by clicking the {{% icon name="view" %}} icon and selecting or deselecting options.
161162

162163
To export the information corresponding to selected items in the list to an Excel file, select the checkboxes of the items in the list, then click **Selection Export** that appears at the bottom of the page.
164+
165+
## Policy Status
166+
167+
The **Policy Status** tab displays a list of the policies that the app violates, with the following information for each:
168+
169+
* **Status** – The status of the violation.
170+
* **Policy Name** – The name of the violated policy.
171+
* **View Details** – This opens the **Policy Details** pane, which displays the following details about the violated policy:
172+
173+
* **Policy ID** – The unique ID of the policy.
174+
* **Policy Name** – The name of the policy.
175+
* **Description** – A short description of the policy, which includes the reason why it is violated.
176+
* **Status** – Whether the policy is active or not.
177+
* **Scope** – The apps that the policy applies to. A breakdown of these is displayed on the **Policy Scope** tab of this pane.
178+
* **Created by** – The unique ID of the user who created the policy.
179+
* **Created on** – The date when the policy was created.
180+
* **Last modified by** – The unique ID of the user who most recently updated the policy.
181+
* **Last modified on** – The date when the policy was most recently updated.
182+
* **Failure Condition(s)** – The conditions under which the policy is considered violated.
183+
* **Checkpoints & Action(s)** – The trigger which causes the policy to be checked, and the action that is taken if the policy is violated.
184+
185+
* Column customization ({{% icon name="view" %}}) — You can customize the columns in the list by clicking the {{% icon name="view" %}} icon and selecting or deselecting options.
186+
187+
You can search a policy by its name, and export all information on this tab to an Excel file.
188+
189+
For details on defining policies, refer to [Policies](/control-center/policies/).
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
---
2+
title: "Policy Status Tab"
3+
url: /control-center/policy-status/
4+
description: "Describes the Policy Status tab on the Software Composition page of the Mendix Control Center."
5+
weight: 3
6+
---
7+
8+
## Introduction
9+
10+
The **Policy Status** tab lists the policies that apply to all apps in your landscape, along with the number of times each policy was violated. Clicking a policy name opens the list of all apps and environments which violated that specific policy, with the following details:
11+
12+
* **Status** – The type of violation.
13+
* **App Name** – The name of the app which violated the policy.
14+
* **Package Name** – The name of the package which violated the policy.
15+
* **Environment Name** – If applicable, the name of the environment where the violating app package is deployed.
16+
* **Runtime** – The runtime version of the deployment package.
17+
* **Target Cloud** — The type of cloud where the deployment package is deployed.
18+
* **Last Checked On** – The date when the policy was last checked.

content/en/docs/control-center/security/software-composition/scoring-criteria.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: "Scoring Criteria Tab"
33
linktitle: "Scoring Criteria Tab"
44
url: /control-center/scoring-criteria-tab/
55
description: "Describes the Scoring Criteria tab on the Software Composition page of the Mendix Control Center."
6-
weight: 3
6+
weight: 4
77
---
88

99
## Introduction

content/en/docs/deployment/general/software-composition.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ The list contains the following information:
9494
* **Runtime** — The Mendix Runtime version.
9595
* **Findings** — The number of findings of each type, color-coded according to severity level.
9696
{{% alert color="warning" %}}Findings are calculated for all software packages that are built. However, if a package is not deployed, we will stop updating its findings after 30 days. These findings will be grayed out and displayed as 0.{{% /alert %}}
97+
* **Policy Status** – The number of policies that the app violates. For details on each policy, click this line item, then go to the [Policy Status tab](#policy-status) of the app.
9798
* **Version** — The version of the deployment package on this app environment.
9899
* **Technical Contact** — The Technical Contact of the app.
99100
* **Target Cloud** — The type of cloud where the deployment package is deployed. Currently, the following types of cloud are supported:
@@ -148,6 +149,32 @@ If a finding is marked as **Vulnerable**, its corresponding component has a **Vi
148149

149150
* **Mendix Guidance** – AI-generated guidance which describes the vulnerability, outlines the reasons why it is important to fix it, and recommends solutions.
150151

152+
### Policy Status {#policy-status}
153+
154+
The **Policy Status** tab at the deployment package level displays a list of the policies that the specific package violates, with the following information for each:
155+
156+
* **Status** – The status of the violation.
157+
* **Policy Name** – The name of the violated policy.
158+
* **View Details** – This opens the **Policy Details** pane, which displays the following details about the violated policy:
159+
160+
* **Policy ID** – The unique ID of the policy.
161+
* **Policy Name** – The name of the policy.
162+
* **Description** – A short description of the policy, which includes the reason why it is violated.
163+
* **Status** – Whether the policy is active or not.
164+
* **Scope** – The apps that the policy applies to. A breakdown of these is displayed on the **Policy Scope** tab of this pane.
165+
* **Created by** – The unique ID of the user who created the policy.
166+
* **Created on** – The date when the policy was created.
167+
* **Last modified by** – The unique ID of the user who most recently updated the policy.
168+
* **Last modified on** – The date when the policy was most recently updated.
169+
* **Failure Condition(s)** – The conditions under which the policy is considered violated.
170+
* **Checkpoints & Action(s)** – The trigger which causes the policy to be checked, and the action that is taken if the policy is violated.
171+
172+
* Column customization ({{% icon name="view" %}}) — You can customize the columns in the list by clicking the {{% icon name="view" %}} icon and selecting or deselecting options.
173+
174+
You can search a policy by its name, and export all information on this tab to an Excel file.
175+
176+
For details on defining policies, refer to [Policies](/control-center/policies/).
177+
151178
## Components {#all-components}
152179

153180
The **Components** tab gives an overview of all the unique components deployed in all the combined app environments.
@@ -273,3 +300,14 @@ The component usage list contains the following information:
273300
* **Version** — The version of the impacted deployment package.
274301
* **Target Cloud** — The type of cloud where the deployment package is deployed.
275302
* Column customization ({{% icon name="view" %}}) — You can customize the columns in the list by clicking the {{% icon name="view" %}} icon and selecting or deselecting options.
303+
304+
## Policy Status
305+
306+
The **Policy Status** tab lists the policies that apply to all the deployment packages of the app, along with the number of times each policy was violated. Clicking a policy name opens the list of all app artifacts and environments which violated that specific policy, with the following details:
307+
308+
* **Status** – The type of violation.
309+
* **Package Name** – The name of the package which violated the policy.
310+
* **Environment Name** – If applicable, the name of the environment where the violating app package is deployed.
311+
* **Runtime** – The runtime version of the deployment package.
312+
* **Target Cloud** — The type of cloud where the deployment package is deployed.
313+
* **Last Checked On** – The date when the policy was last checked.

content/en/docs/releasenotes/control-center/2026.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,14 @@ weight: 1
77
numberless_headings: true
88
---
99

10+
## June 2026
11+
12+
### June 24, 2026
13+
14+
#### New Features
15+
16+
* You can now define and enforce policies to ensure your app landscape is secure, compliant, and consistent. The new **Policies** page in Control Center allows you to create policies that check for conditions like finding severity, Mendix runtime version, and Marketplace component licenses and support types. Policy violations are automatically detected and reported in Software Composition. For details, refer to [Policies](/control-center/policies/), [Policy Status](/control-center/policy-status/), and [Software Composition](/control-center/software-composition/).
17+
1018
### June 17, 2026
1119

1220
#### New Features

content/en/docs/releasenotes/deployment/_index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Follow the links in the table below to see the release notes you want:
1515

1616
| Type of Deployment | Last Updated |
1717
| --- | --- |
18-
| [Mendix Cloud](/releasenotes/developer-portal/mendix-cloud/) | June 17, 2026 |
18+
| [Mendix Cloud](/releasenotes/developer-portal/mendix-cloud/) | June 24, 2026 |
1919
| [Mendix on Kubernetes](/releasenotes/developer-portal/mendix-for-private-cloud/) | February 5, 2026 |
2020
| [Mendix on Azure](/releasenotes/developer-portal/mendix-on-azure/) | January 29, 2026 |
2121
| [SAP Business Technology Platform (SAP BTP)](/releasenotes/developer-portal/sap-cloud-platform/) | September 28, 2025 |

content/en/docs/releasenotes/deployment/mendix-cloud/_index.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,14 @@ Mendix Cloud deployments are also dependent on the latest version of the [Mendix
1414

1515
For information on the current status of deployment to Mendix Cloud and any planned releases, refer to [Mendix Status](https://status.mendix.com/).
1616

17+
## June 2026
18+
19+
### June 24, 2026
20+
21+
#### New Features
22+
23+
* You can now view and take action on policy violations, which are automatically detected and reported in Software Composition. Policies are defined in Control Center, allowing you to check for conditions like finding severity, Mendix runtime version, and Marketplace component licenses and support types. For details, refer to [Policies](/control-center/policies/), [Policy Status](/control-center/policy-status/), and [Software Composition](/developerportal/deploy/software-composition/).
24+
1725
### June 17, 2026
1826

1927
#### New Features

0 commit comments

Comments
 (0)