System-Wide Policies
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.
Overview
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.
Users will see a visual indicator in the Settings UI when a setting is controlled by a system-wide policy, showing them the administrator-enforced value and preventing them from changing it.

Configuration File
The config.json file uses a simple JSON structure to define policy values. An example file (config.json.example) is included in the application installation directory for reference.
File Location:
- Installed version:
C:\Program Files\NETworkManager\config.json(or your custom installation path) - Portable version: Same directory as
NETworkManager.exe
File Format:
{
"Policy_Name1": true,
"Policy_Name2": "ExampleValue"
}
Example:
{
"Update_CheckForUpdatesAtStartup": false
}
Property names generally follow the pattern Section_SettingName (see each setting's documentation). Ensure values use the correct JSON type (boolean, string, number, etc.).
- The file must be named exactly
config.json - The file must contain valid JSON syntax
- Changes to the file require restarting the application to take effect
- If the file doesn't exist or contains invalid JSON, it will be ignored and user settings will apply
Deployment
For enterprise deployments:
-
Create the configuration file:
- Use the
config.json.exampleas a template - Rename it to
config.json - Set your desired policy values (you find them in the corresponding setting's documentation)
- Use the
-
Deploy to installation directory:
- Place the
config.jsonfile in the same directory asNETworkManager.exe - For MSI installations, this is typically
C:\Program Files\NETworkManager\ - For portable installations, place it next to the executable
- Place the
-
Deploy methods:
- Group Policy — copy the
config.jsonfile to the installation directory (use Group Policy preferences or a startup script) - Configuration management tools — SCCM/ConfigMgr, Microsoft Intune, Ansible, etc.
- Scripts and deployment toolkits — PowerShell scripts, PSAppDeployToolkit (recommended for scripted MSI/App deployments)
- Manual deployment — hand-copy for small-scale rollouts
- Group Policy — copy the
-
Verification:
- Launch the application
- Navigate to Settings > Update (e.g., "Check for updates at startup")
- Verify the shield icon and the administrator message appear and that the control is disabled
- Confirm the displayed value matches the policy
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.
Troubleshooting
Policy not being applied:
- Verify the file is named exactly
config.json(notconfig.json.txt) - Check that the JSON syntax is valid (use a JSON validator)
- Confirm the file is in the correct directory (same as
NETworkManager.exe) - Restart the application after creating or modifying the file
- Check the application logs for any error messages related to policy loading
Policy values not showing in UI:
- Ensure the property name matches exactly (see the corresponding setting's documentation for the property name)
- Verify the value is a boolean (
trueorfalse), not a string ("true"or"false") - Check that there are no syntax errors in the JSON file
Future Policies
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.