Skip to content

Commit 7c24ed8

Browse files
Add blog post about system-wide policies (#3326)
* Initial plan * Add blog post about system-wide policies for enterprise deployments Co-authored-by: BornToBeRoot <16019165+BornToBeRoot@users.noreply.github.com> * Remove accidentally committed package-lock.json and add to gitignore Co-authored-by: BornToBeRoot <16019165+BornToBeRoot@users.noreply.github.com> * Revert unintended changes to yarn.lock and .gitignore Co-authored-by: BornToBeRoot <16019165+BornToBeRoot@users.noreply.github.com> * Update policy config link to system-wide-policies docs page and adjust sentence Co-authored-by: BornToBeRoot <16019165+BornToBeRoot@users.noreply.github.com> * Update blog post: align with docs, add available policies section, update date to 2026-02-19 Co-authored-by: BornToBeRoot <16019165+BornToBeRoot@users.noreply.github.com> * Fix: wrong link * Address review feedback: make policies section generic, update verification steps, add prioritize wording Co-authored-by: BornToBeRoot <16019165+BornToBeRoot@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: BornToBeRoot <16019165+BornToBeRoot@users.noreply.github.com>
1 parent 20f91a4 commit 7c24ed8

File tree

2 files changed

+95
-0
lines changed

2 files changed

+95
-0
lines changed
Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
---
2+
slug: system-wide-policies
3+
title: System-Wide Policies for Enterprise Deployments
4+
authors: [borntoberoot]
5+
tags: [policies, enterprise, settings, new feature]
6+
---
7+
8+
NETworkManager now supports system-wide policies, giving administrators centralized control over application settings across all users on a machine. This feature is available since the [pre-release version 2026.02.19.0](https://github.com/BornToBeRoot/NETworkManager/releases) and can now be tested.
9+
10+
![System-wide policy indicator](./system-wide-policy-indicator.png)
11+
12+
<!-- truncate -->
13+
14+
## What Are System-Wide Policies?
15+
16+
System-wide policies allow administrators to enforce specific settings for all users on a machine. These policies override user-specific settings and provide centralized control over application behavior in enterprise environments.
17+
18+
When a policy is active, the corresponding setting is locked in the UI and displays a shield icon along with a message indicating that the setting is managed by an administrator. Users can see the enforced value but cannot change it.
19+
20+
## How to Configure Policies
21+
22+
Policies are defined in a `config.json` file placed in the application installation directory (the same folder as `NETworkManager.exe`). When this file exists, the application loads the policies at startup and applies them with precedence over user settings. An example file (`config.json.example`) is included in the application installation directory for reference.
23+
24+
**File location:**
25+
26+
- **Installed version**: `C:\Program Files\NETworkManager\config.json` (or your custom installation path)
27+
- **Portable version**: Same directory as `NETworkManager.exe`
28+
29+
**File format:**
30+
31+
```json
32+
{
33+
"Policy_Name": true
34+
}
35+
```
36+
37+
Property names follow the pattern `Section_SettingName`. You can find the available policy names and values in the corresponding [setting's documentation](https://borntoberoot.net/NETworkManager/docs/category/settings).
38+
39+
### Example Policy
40+
41+
For example, the [`Update_CheckForUpdatesAtStartup`](https://borntoberoot.net/NETworkManager/docs/settings/update) policy controls whether the application checks for new program versions on GitHub when the application is launched.
42+
43+
**Values:**
44+
45+
- `true` — Force enable automatic update checks at startup for all users
46+
- `false` — Force disable automatic update checks at startup for all users
47+
- Omit the property — Allow users to control this setting themselves
48+
49+
**Example `config.json`:**
50+
51+
```json
52+
{
53+
"Update_CheckForUpdatesAtStartup": false
54+
}
55+
```
56+
57+
:::note
58+
59+
- The file must be named exactly `config.json`
60+
- The file must contain valid JSON syntax
61+
- Changes to the file require restarting the application to take effect
62+
- If the file doesn't exist or contains invalid JSON, it will be ignored and user settings will apply
63+
64+
:::
65+
66+
## Deploying Policies
67+
68+
1. **Create the configuration file** — Use the `config.json.example` as a template, rename it to `config.json`, and set your desired policy values.
69+
70+
2. **Deploy to installation directory** — Place the `config.json` file in the same directory as `NETworkManager.exe`. For MSI installations, this is typically `C:\Program Files\NETworkManager\`.
71+
72+
3. **Deploy methods:**
73+
- Group Policy — copy the file to the installation directory (use Group Policy preferences or a startup script)
74+
- Configuration management tools — SCCM/ConfigMgr, Microsoft Intune, Ansible, etc.
75+
- Scripts and deployment toolkits — PowerShell scripts, PSAppDeployToolkit
76+
- Manual deployment — hand-copy for small-scale rollouts
77+
78+
4. **Verification:**
79+
- Launch the application
80+
- Navigate to Settings > Update (e.g., "Check for updates at startup")
81+
- Verify the shield icon and the administrator message appear and that the control is disabled
82+
83+
:::warning
84+
85+
Ensure the `config.json` file has appropriate permissions so that regular users cannot modify it. On standard installations in `Program Files`, this is automatically enforced by Windows file permissions.
86+
87+
:::
88+
89+
## Request More Policies
90+
91+
Additional policy options will be added in future releases to provide more granular control over application behavior. If you have specific requirements for system-wide policies in your organization, please submit a feature request via the [GitHub issue tracker](https://github.com/BornToBeRoot/NETworkManager/issues/new/choose) to help us prioritize.
92+
93+
More information is available in the [official documentation](https://borntoberoot.net/NETworkManager/docs/system-wide-policies).
94+
95+
If you find any issues or have suggestions for improvement, please open an [issue on GitHub](https://github.com/BornToBeRoot/NETworkManager/issues).
28.1 KB
Loading

0 commit comments

Comments
 (0)