Use the Windows artifacts supplied by your campaign and selected release.
The ADMX templates, signed unattended bootstrap, and connected Windows push
require versions that expose those artifacts. If they are not available in
your environment, deliver the registry settings below and the signed MSI
instead. macOS profiles and packages cannot configure Windows.
Before you start
- Windows 11 24H2 or later, x64, on devices supported by your management tool.
- An install campaign, with its enrollment token and cloud URL copied from the Frontegg Portal.
- Permission to deploy machine settings and install software as SYSTEM or an administrator. A user-scoped policy is not sufficient.
- Access to the release download service and your organization’s cloud URL. A bootstrap downloads the MSI at installation time; distributing an MSI directly avoids that download, but enrollment still needs cloud access.
- An IT policy that permits the signed AgenShield installer, installation script where used, and Microsoft-attested driver. Keep Secure Boot and your organization’s Windows security controls enabled.
1. Deliver the enrollment policy
Use the 64-bit machine registry view:REG_SZ):
Deliver
CampaignToken and CloudUrl together from the same policy. Incomplete
settings are not combined with a different enrollment source. Do not use
WOW6432Node, and do not target the current user’s registry hive.
Use one enrollment-policy source per device. Do not overlap different
campaigns from multiple Intune connections, or combine connected enrollment
profiles with manual Intune or Group Policy enrollment for the same device.
Different profile names do not prevent those policies from writing the same
enrollment settings. Resolve that targeting conflict before deployment.
Group Policy with ADMX
Where your selected release supplies the templates:- Download
AgenShield.admxandAgenShield.admlfrom the campaign’s Windows artifacts or that release. Verify them against the release’s checksums. - Add the ADMX to your Group Policy Central Store’s
PolicyDefinitionsdirectory and the ADML to itsen-USsubdirectory. On a local test machine, use%windir%\PolicyDefinitionsand%windir%\PolicyDefinitions\en-US. - Under Computer Configuration → Policies → Administrative Templates → AgenShield in Group Policy Management, enable Configure campaign enrollment. Enter the token and cloud URL; set the organization label and pinned version only if needed.
- Scope the policy to the same computer group as the installer and confirm successful policy application on a pilot device.
Manual Intune custom profile
The literal URIs below are manual defaults. For connected Intune, keep the generated profiles and their connection-specific URIs unchanged; do not replace them with these manual URI examples. Use two separate Windows 10 and later → Templates → Custom device configuration profiles. Each setting below has data type String:
Reuse the shared definition profile across campaign groups. Never assign
duplicate ADMX definitions at the same ingestion URI, and do not put ingestion
in each campaign’s enrollment profile. Removing a campaign enrollment profile
must not remove the shared definitions needed by another campaign.
Where available, use
AgenShield-template.oma.json for the shared definition
setting and AgenShield-enrollment.oma.json for the campaign setting. Each is a
settings export for its own profile; they are not combined profiles or Intune
app packages. The shared template export contains no campaign credential.
A minimal enrollment value is:
Org and PinnedVersion values are empty. Microsoft requires a
data element for every text field in an
ADMX-backed policy.
Use the campaign-generated AgenShield-enrollment.oma.json export where
available rather than constructing the XML yourself. If editing it,
XML-escape attribute values, including ampersands, quotes, and angle brackets.
An OMA-URI reference or settings export is not a directly importable Intune
app package.
Assign the shared definition profile, campaign enrollment profile, and installer
to the intended device group. Review both profiles’ setting results in Intune;
enrollment depends on successful shared ADMX ingestion. <disabled/> removes
the campaign’s enrollment values only. To return enrollment to Not configured,
use the management tool’s policy deletion action on the campaign setting, not
the shared ingestion setting. Remove shared definitions only when offboarding
the entire shared configuration, after every campaign setting has been removed.
Registry settings without ADMX
Group Policy Preferences, Configuration Manager, or another MDM can deliver the same four values directly. Use the campaign’sAgenShield-enrollment.reg
export where available, or define equivalent machine-scoped string settings.
CampaignEnrollment.reg is a sample reference with replacement values, not
the campaign-generated export; do not deploy it without substituting actual
campaign settings.
A one-time registry import is not a continuously managed policy. Your deployment
tool must handle scope changes and remove settings when appropriate. Avoid two
profiles or policies writing different campaigns to the same device.
2. Install the signed release
Unattended bootstrap
Where the campaign supplies the signedAgenShield-Bootstrap.ps1, package that
file as a machine-context application or script. Versioned release downloads may
include the release version in the filename; use the actual downloaded name.
Before the AllSigned example below, IT must verify the script’s signature and
release checksum, then approve its signing certificate as a trusted publisher
for the machine through your organization’s certificate policy.
An Authenticode Valid result alone is not trusted-publisher authorization;
the non-interactive example refuses any publisher prompt instead of waiting
for a user. See
PowerShell execution policies.
Run the approved script as SYSTEM:
PinnedVersion when no explicit
version overrides it. Without a pin, it resolves the selected Windows release
channel. Windows and macOS releases are published independently, so a version
available for macOS may have no Windows installer. A pin, or -Version 'YYYY.M.N',
must name a published release that includes a signed Windows installer. Pinning
a version without one fails with exit code 21, and a version whose installer
does not carry the expected signature is refused. Use -Channel beta only for
an explicitly chosen beta pilot. The bootstrap verifies both the MSI checksum
and its expected Authenticode signer; a failed check must not be bypassed.
The unattended mode does not request elevation. Run in the required machine
context; a standard-user execution is a deployment error. A 32-bit launch is
redirected to 64-bit PowerShell. If the installed version is equal to or newer
than the target, the install is a no-op, not a downgrade.
Preserve these return codes in your deployment tool. Installation logs for this
mode are under
%ProgramData%\AgenShield\logs\install; they require
administrator access. A 0 result does not establish campaign enrollment.
Direct MSI, Configuration Manager, or GPO software installation
Distribute the signed x64 MSI from the selected release and verify its checksum and Authenticode signature before deployment. With the enrollment policy already assigned, no token properties are needed:/qn install. With
/norestart, an install or upgrade that installs or updates the AgenShield
driver returns 3010: it succeeded and needs a restart. Complete the
checks below, including that restart. MSI-property enrollment remains
an alternative, but avoid it for fleets because of token exposure and because
its secure enrollment handoff needs qualification on the Windows editions you
use. See Windows install warnings.
3. Detect and verify the deployment
For releases that supply the stable install marker, use a registry existence rule, not an exact-version rule:
The marker is an installation indicator, not a health or enrollment indicator.
An existence rule avoids reinstalling a device merely because a cloud-managed
update made it newer than the initial MDM package.
On a pilot device:
-
Confirm the installer reports success. An installation or upgrade that
installs or updates the AgenShield driver returns
3010, and the new driver starts only after the device restarts. Until then AgenShield keeps enforcing with a previously loaded driver if one is running, or reports Restart required to enable kernel protection. -
After a
3010, restart the device and confirm that it restarted after the installation.agenshield doctorcannot show this: while a previously loaded driver is still running, Kernel enforcement readsdriver loaded and enforcing policy, the same as after the restart. Instead, compare the last boot time with the last time Windows Installer installed AgenShield, in an administrator PowerShell session:The boot time, printed first, must be later than the installation time. With Fast Startup turned on, shutting down and starting again is not a restart, so use Restart. -
Run
agenshield status. Confirm the device is enrolled with the expected cloud URL, the background service is running, and protection has no required action outstanding. Runagenshield doctorand confirm that Kernel enforcement readsdriver loaded and enforcing policy. - Confirm the device appears under Devices in the Frontegg Portal and receives your organization’s policy. A connected device that has not received policy is not proof of enforcement.
- Confirm the Windows tray appears for the signed-in user. Releases with machine-wide tray startup start it at user sign-in; no UI runs in session 0.
Updates and offboarding
On AgenShield 2026.10.2 or later, the Frontegg Portal can update Windows devices (Update endpoint, or automatic updates) without repackaging the MDM app. Earlier versions need a new signed installer through your MDM first. The installed signed bootstrap must be present, and the download and signature checks still apply. A restart-required result is not the same as a completed restart; schedule the restart through your IT process. The bootstrap does not downgrade a newer installation. See Update limitations. For the signed unattended bootstrap, uninstall uses the installed MSI’s current product identity rather than a fixed ProductCode:AllSigned uninstall example has the same machine trusted-publisher
prerequisite as installation. Run it in machine context. Uninstall leaves
the machine enrollment policy at
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Frontegg\AgenShield; that policy is
owned by your management tool, not the installer. Remove required-install
assignments and remove the managed enrollment policy separately during
offboarding, or the device can be reinstalled and enrolled again. Removing
enrollment policy alone does not uninstall an existing installation.