Extend your Windows MDM profiles with custom CSP (Configuration Service Provider) policies using raw XML. Use this when Primo’s built-in controls don’t cover a specific Windows setting you need to enforce — such as desktop personalization, kiosk mode, or other enterprise configurations.
OS support
| macOS | Windows | Linux | iOS / iPadOS | Android |
|---|
| ✅ | | | |
On Windows
When writing an XML to apply a CSP Policy to a device, omit the first few (and last) lines of the XML file and start (and end) with either <Replace> or <Add> (respectively </Replace> and </Add>)
Allow Personalization CSP on Windows Pro
<Replace>
<!-- Allows Personalization CSPs to be deployed on non-Enterprise versions of Windows.
Setting this value to true triggers the action to configure a device as education environment.
Thorough testing is crucial to ensure it does not disrupt workflows or create compatibility issues. -->
<Item>
<Meta>
<Format xmlns="syncml:metinf">bool</Format>
</Meta>
<Target>
<LocURI>./Vendor/MSFT/SharedPC/SetEduPolicies</LocURI>
</Target>
<Data>true</Data>
</Item>
</Replace>
Set background image and lock screen
Personalization CSP is supported in Windows Enterprise and Education Editions. It works in Windows Professional only when SetEduPolicies in SharedPC CSP is set. See “Allow Personalization CSP on Windows Pro”.
<Replace>
<CmdID>1</CmdID>
<Item>
<Target>
<LocURI>
./Vendor/MSFT/Personalization/LockScreenImageUrl
</LocURI>
</Target>
<Meta>
<Format xmlns="syncml:metinf">chr</Format>
<Type>text/plain</Type>
</Meta>
<Data> … your URL here … </Data>
</Item>
</Replace>
<Replace>
<CmdID>2</CmdID>
<Item>
<Target>
<LocURI>
./Vendor/MSFT/Personalization/DesktopImageUrl
</LocURI>
</Target>
<Meta>
<Format xmlns="syncml:metinf">chr</Format>
<Type>text/plain</Type>
</Meta>
<Data> … your URL here … </Data>
</Item>
</Replace>