Roll out with Group Policy
The extension, the sign-in script and the desktop app through Active Directory group policy, including on RDS servers.
This article is for organisations that manage their workstations with Group Policy in Active Directory rather than Microsoft Intune, for example because many of their employees work on Remote Desktop Services (RDS) servers. You go through the same steps as in the managed rollout with Intune: identity, providing the work sign-in, installing the extension automatically, optionally the desktop app, and verifying. What differs per step is described below. If you use both, for example Group Policy on the RDS servers and Intune on laptops, follow the article for the route each group of devices uses.
What you need
- Permission to edit and link Group Policy Objects, and current Chrome and Edge ADMX templates in your central policy store.
- A verified domain and a connected identity provider in BeeSensible. This step is the same for every route and is described in Identity.
- A test OU containing the devices or RDS servers you start with.
- Outbound access to the BeeSensible hosts, as described in Network and firewall.
In the rollout console, click Change next to Deployment profile and tick the Group Policy route. If you have ticked more than one route, switch between the instructions with Instructions for. For each step the console then shows the path in Group Policy Management and offers the files you need in this article.
Central rollout in the dashboardOrganisation, Central rollout tab, Group Policy route.Install the extension automatically
The ExtensionInstallForcelist policy force-installs the extension in Chrome and Edge. It is a computer policy, so it applies to everyone who signs in on a device the Group Policy Object (GPO) applies to.
Download the .reg file or copy the values
At the Install the extension automatically step, the console offers the Download .reg (Windows, GPO) button. That file sets the policy for both browsers. If you would rather set the policy in the GPO itself, use this value for each browser:
cnlogmngeghlgbncagnoodfjkbaknnbo;https://clients2.google.com/service/update2/crxplnhmaecddjmliagaedlgagopdcahlgb;https://edge.microsoft.com/extensionwebstorebase/v1/crxThe .reg file uses the value name 1. If other force-installed extensions are already listed under that key, change the number to the next free one, because otherwise you overwrite an existing entry.
Set the policy in the GPO
Create or edit a GPO on your test OU, and in Group Policy Management open Computer Configuration → Administrative Templates → Google Chrome → Extensions and Computer Configuration → Administrative Templates → Microsoft Edge → Extensions. Open ExtensionInstallForcelist there and add the value shown above, or import the .reg file.
Link the GPO and refresh policy
Link the GPO to the OU holding your target group's devices. The policy arrives at the next refresh; to apply it straight away, run this on the device: gpupdate /force
Provide work sign-in
The sign-in script is the same script as for Intune. For every user signed in on the device at that moment, it looks up the work address and writes it as a sign-in hint (loginHint) into the Chrome and Edge browser policy and into a registry key for the desktop app. The extension uses that hint, so employees do not have to type an address when they first sign in. Because the script only sees users who are signed in when it runs, you run it at every sign-in through a scheduled task. A startup script under Computer Configuration does not work for this, because it runs before any user has signed in.
Download the sign-in script
At the Provide work sign-in step, the console offers the Download sign-in script (.ps1) button. Put the file somewhere every device can read as SYSTEM, for example your domain's NETLOGON share.
Create a scheduled task in the GPO
In the same GPO or a new one, open Computer Configuration → Preferences → Control Panel Settings → Scheduled Tasks and add a new scheduled task (at least Windows 7) with these settings:
| Setting | Value |
|---|---|
| Account | NT AUTHORITY\SYSTEM |
| Trigger | At log on, for any user |
| Action | Start a program |
Use the following command as the task action, where <domain> stands for the name of your own domain:
powershell.exe -NoProfile -ExecutionPolicy Bypass -File "\\<domain>\NETLOGON\beesensible-managed-login.ps1"
The script needs 64-bit PowerShell and stops in a 32-bit environment. On 64-bit Windows a scheduled task starts powershell.exe as a 64-bit process, so this action works as intended.
Link the GPO and refresh policy
Link the GPO to the OU holding your target group's devices and run gpupdate /force on the test device. Then sign in again as the test user, so that the task runs.
The script reads the work address from a cache in which Windows keeps track of the user's sign-in. If Windows does not know a user's work address, the script skips that user and no sign-in hint is written; the employee then enters their work address themselves once, at the first sign-in.
If the domain of the user name (UPN) differs from the domain of the email address, verify the UPN domain as well under Identity.
loginHint is missing
If loginHint is still missing after the test user signs in again, work through these causes in order:
- The task did not run or failed. Task Scheduler on the device shows the last run time and result; the script exits with code 1 when it could not write an address for any user.
- The device cannot read the script. The task runs as SYSTEM, so the computer account needs read access to the share.
- Windows does not know the user's work address. For accounts from an on-premises Active Directory, the cache the script reads from may be empty, as described above.
If you want Chrome to pass the Windows sign-in on to Microsoft, so that no Microsoft screen appears during sign-in, also set CloudAPAuthEnabled; the policy is in the same Chrome templates under Computer Configuration. The policy passes on the sign-in of devices joined to Microsoft Entra ID (including hybrid joined). On devices and RDS servers that are only joined to Active Directory, Microsoft asks the employee to confirm once.
The desktop app
The desktop app is optional as long as detection runs in the cloud, which is the default (see Detection on the device). There is no MSI package, so you cannot deploy it with Group Policy software installation. Alongside the Intune package, the console offers a standalone installer (.exe), the enterprise installer, for other deployment tools. It installs machine-wide into C:\Program Files\BeeSensible and installs silently with the /S parameter. Deploy it with the distribution tool you already use, and decide beforehand who controls the version, as described in First, choose the installer.
On RDS servers
On an RDS server several employees work at the same time, each with their own Windows profile. You therefore install the extension once per server: the policy from Install the extension automatically is a computer policy and applies to everyone who signs in on that server. If you want to start with a pilot group, give that group its own session host or collection, because a computer policy cannot be limited to particular users.
The scheduled task from Provide work sign-in runs at every sign-in, even when other users are already working on the server, and writes a separate sign-in hint for every signed-in user, as described under the source of the work address. During the pilot, check with two users signed in at the same time that the hints stay separate: run the two reg query commands from the check under Provide work sign-in in each session, and each session shows only its own work address.
When you roll out on RDS servers, also keep the following in mind, because this environment differs from a workstation with a single user:
- On RDS servers, use the extension only. The desktop app is built for Windows 10 and 11.
- Employees do not share a BeeSensible account. Every Windows user signs in with their own work account.
Verifying the rollout
Verification works as described in Verify the rollout, with one difference: instead of syncing with Intune, refresh policy on the test device with gpupdate /force, or restart the device. Run the checks with a test user without administrator rights and, on an RDS server, with two users at the same time.
Rolling back
Follow the order in Rolling back. For the parts you rolled out through Group Policy, this works as follows:
Remove the extension from the forcelist
Remove the BeeSensible entry from ExtensionInstallForcelist, or unlink the GPO, and run gpupdate /force. After that, or at the next policy refresh, the extension disappears from the browser.
Clean up the sign-in hints
First remove the scheduled task with the sign-in script, or unlink the GPO. Then create a second scheduled task as in Provide work sign-in, with the cleanup script from the console (Download cleanup script (.ps1)) as its action. Let every affected user sign in once, then remove the task and run gpupdate /force. The cleanup script only reaches users who sign in while the task exists; on an RDS server, users who did not sign in during that period keep their hint. How to clear remaining hints is described in Rolling back.