Table of Contents
Configuring app permissions in Google Admin console
Local network permission:
Google Admin console > Devices > Chrome > Settings > select ‘Users’ OU > Users & browsers > Local Network URLs > “Network access from websites matching these origins to local network endpoints are not subject …” > add isolated-app://q2oy25prsvhmxocjxs2badhyi3uw7vqhrupfn66iflserug4st6qaaic
Clipboard permission:
Google Admin console > Devices > Chrome > Settings > select ‘Users’ OU > Users & browsers > Clipboard > “Allow these sites to access clipboard” > add isolated-app://q2oy25prsvhmxocjxs2badhyi3uw7vqhrupfn66iflserug4st6qaaic
Advanced printer features permission:
Google Admin console > Devices > Chrome > Web capabilities > Add origin (or edit if already added) isolated-app://q2oy25prsvhmxocjxs2badhyi3uw7vqhrupfn66iflserug4st6qaaic
For the origin, set “Web printing” to Allowed
Pop-ups and redirection permission:
Google Admin console > Devices > Chrome > Settings > select ‘Users’ OU > Users & browsers > Pop-ups > add isolated-app://q2oy25prsvhmxocjxs2badhyi3uw7vqhrupfn66iflserug4st6qaaic
Window management permission:
Google Admin console > Devices > Chrome > Web capabilities > Add origin (or edit if already added) isolated-app://q2oy25prsvhmxocjxs2badhyi3uw7vqhrupfn66iflserug4st6qaaic
For the origin, set “Window management” to Allowed
Automatic full screen permission:
Google Admin console > Devices > Chrome > Web capabilities > Add origin (or edit if already added) isolated-app://q2oy25prsvhmxocjxs2badhyi3uw7vqhrupfn66iflserug4st6qaaic
For the origin, set “Automatic fullscreen” to Allowed
Azure Virtual Desktop instructions
In order for the Xtralogic RDP client app to be able to connect to Azure Virtual Desktop resources,
an AVD admin has to explicitly enable connections from the app. The AVD admin should follow these instructions:
- Login at https://portal.azure.com/ with the admin account for the AVD infrastructure.
- Go to “Microsoft Entra ID” at the top row.
- In the left pain go to “Manage > Devices”.
- In the left pain go to “Manage > Remote Connection Configuration”.
- Click on “Microsoft Remote Desktop”.
- Set “Enable Microsoft Entra ID authentication protocol to authenticate users to remote devices” to Yes.
- Click on “Client app(s) to connect to target server resource”.
- Search for “bcc38398-aaa1-4804-892f-ae132cc39742”, you should find “Xtralogic RDP Client”, select it and save.
- If the app is not found, it means no users tried to use the app yet, its service principal needs to be added first. Here is how to do that using Powershell:
Install-Module Microsoft.Graph -Scope CurrentUser # if not already installed Connect-MgGraph -Scopes "Application.ReadWrite.All" New-MgServicePrincipal -AppId "bcc38398-aaa1-4804-892f-ae132cc39742".
Copying files between Chrome OS and a remote desktop session
To support file transfer between the local Chrome OS filesystem and a remote computer, the Xtralogic RDP Client version 4.X uses Xtralogic File System Provider extension.
The extension implements a filesystem that is accessible through the Files app on the Chromebook and at the same time is redirected by Xtralogic RDP Client to the remote RDP session.
The filesystem is not persistent, copied files are only available while a remote desktop session in Xtralogic RDP Client is active or within 30 seconds of an inactivity in the Files app.
To copy a file to a remote desktop session:
- Install Xtralogic File System Provider extension.
- In the Xtralogic RDP client, on the Resources tab in the saved connection settings, select “Enable browser filesystem redirection”. It will show a link to the extension if it is not installed.
- Establish remote desktop session in Xtralogic RDP Client.
- Start the Chrome OS Files app. If the Xtralogic File System is not available in the left pain, go to Menu > Services > Xtralogic File System. The Xtralogic File System will become available in the left pane of the Files app. Usually this needs to be done only once.
- In the Chrome OS Files app, copy a file to the Xtralogic File System.
- In the remote desktop session in Xtralogic RDP Client, in Windows Explorer, open “Filesytem on Xtralogic on RDP Client” drive, or go to Network > tsclient > \\tsclient\filesystem, or, if the drive already open, do Refresh (right click > Refresh).
Configuring the app on managed devices
On managed Chrome devices Xtralogic RDP client version 4.X can be configured using a Google Admin console policy.
The configuration is done indirectly, using Xtralogic Enterprise Provider Chrome extension. The extension will get the configuration and provide it to the Xtralogic RDP client app. Install the extension in the Google Workspace admin console. Select “Force install” installation policy for the extension. The extension id is agjnbnikgbndfmjcojfmikmbimmhomlb.
The configuration policy for the extension has the same JSON format as is used for the legacy Chrome app. Download an example of the configuration policy.
A .rdp file content for an RDP connection can be copy/pasted into “dotRdpFileContent” JSON element of the configuration policy, but to comply with the JSON format, new line characters in .rdp file content have to be replaced with ‘\r\n ‘ sequence of characters. The “dotRdpFileContent” JSON element can contain any valid .rdp file configuration options, not only the ones used in the example.
The ‘defaultLanguage’ property in Settings and ‘language’ property accept only decimal numbers. The valid values for these properties can be found in the Default Input Locales table.
USB device redirection
USB redirection forwards locally attached USB devices to the remote Windows session (MS-RDPEUSB), where they appear as if plugged directly into the remote computer. It uses the browser's WebUSB API, so a device can only be redirected after the app has been granted access to it — either by an enterprise policy or by the user approving it in a device picker.
Note: Devices that are claimed by a ChromeOS system driver (e.g. keyboards, mice, mass storage) generally cannot be redirected; use the dedicated redirection features (drive, smart card, camera, printer) for such devices.
Enabling USB redirection on the remote computer
USB (Plug and Play) device redirection is not allowed by default on the Windows RDP host and must be explicitly enabled through Group Policy:
- On the remote computer, open the Local Group Policy Editor (
gpedit.msc) — or, in a domain, edit a Group Policy Object applied to the host in the Group Policy Management Console. - Navigate to Computer Configuration → Administrative Templates → Windows Components → Remote Desktop Services → Remote Desktop Session Host → Device and Resource Redirection.
- Set Do not allow supported Plug and Play device redirection to Disabled. Leaving the setting Not Configured is not sufficient — it must be explicitly set to Disabled to allow the redirection.
- Apply the change with
gpupdate /forceand restart the remote computer (or at least start a fresh remote session).
Redirected devices install on the host using standard Windows drivers; the account's session must be able to install the device's driver (in-box or pre-installed drivers are recommended).
Enabling USB redirection for a connection
Edit the connection and, on the Resources tab, tick USB redirection. All USB devices the app has been granted access to are redirected when the connection starts.
When the checkbox is ticked, the Additional devices table becomes available. Each row identifies a device model by its Vendor ID and Product ID (4-digit hexadecimal, e.g. 045e / 0779) and a mode:
- Include — if no matching device has been granted yet, the app shows a device picker when you press Connect, asking you to approve the device (one prompt per row).
- Exclude — matching devices are never redirected, even if the app has been granted access to them by policy.
Exclusion takes precedence: a device that matches both an include and an exclude row is not redirected and not prompted for.
Note: When devices are specified through the Additional devices table or a .rdp file (rather than through the WebUsbAllowDevicesForUrls policy), access is requested for only one device of each Vendor ID/Product ID combination — the one the user selects in the picker. If several identical devices are attached and all of them must be redirected, provision them through the WebUsbAllowDevicesForUrls policy, which grants access to every matching device.
Provisioning devices with the WebUsbAllowDevicesForUrls policy
For managed ChromeOS devices, grant the app permanent access to specific USB devices through the Google Admin console, so users are never prompted and devices resume automatically after being unplugged:
- Sign in to the Google Admin console.
- Go to Devices → Chrome → Settings → Users & browsers.
- On the left, select the organizational unit containing the users the setting should apply to.
- Scroll to the Hardware section (or type WebUSB in the search box) and open the WebUSB API allowed devices setting.
- In the USB device identifiers box, enter one device per line as a colon-separated vendor and product ID pair in hexadecimal, for example:
045e:0779 0403:6001To allow all devices of a vendor, enter the vendor ID followed by a colon only (e.g.
045e:). - In the URL patterns box, enter the app's origin on its own line:
isolated-app://q2oy25prsvhmxocjxs2badhyi3uw7vqhrupfn66iflserug4st6qaaic - Click Save.
The setting takes effect the next time the app is restarted on the managed device.
Automatic .rdp file configuration (usbdevicestoredirect)
When a connection is created from a .rdp file, the standard usbdevicestoredirect property is honored:
- If the property is present and non-empty, USB redirection is enabled for the connection.
USBInstanceIDentries containing aVID_xxxx&PID_xxxxpattern (e.g.USB\VID_045E&PID_0779\6&2c9a8d22&0&6) are added to Additional devices as Include rows;-USBInstanceIDentries are added as Exclude rows. Only the VID/PID portion of the instance ID is used — individual device instances cannot be distinguished.- The wildcard (
*) and Device Setup Class GUID () entries only enable the feature; they do not add rows to the Additional devices table.
JSON configuration (managed app configuration)
In the app's managed configuration (Connections policy), each connection object supports the boolean key usbRedirectionEnabled. It overrides the value derived from the usbdevicestoredirect property of the connection's dotRdpFileContent:
Unplugging and reconnecting devices
When a redirected device is unplugged (or resets itself), it is removed from the remote session and a notification is shown. When it is plugged back in, the app re-announces it to the remote session automatically if the app still has access to it:
- Devices provisioned through the WebUsbAllowDevicesForUrls policy resume automatically on reconnect.
- Devices that were manually approved in the device picker generally lose their grant when unplugged (Chrome revokes the permission for devices that do not expose a serial number). Such devices are not re-announced on physical reconnect — disconnect and reconnect the remote session to be prompted again.
For reliable operation of devices that are frequently unplugged or that re-enumerate themselves, provision them through the policy.
Kerberos Authentication
The client can authenticate to remote computers and to Remote Desktop Gateways using Kerberos, in addition to NTLM. Kerberos is negotiated automatically and is used both for Network Level Authentication (CredSSP) of direct RDP connections and for the HTTP authentication of RD Gateway connections.
Web browsers cannot reach a domain controller directly, so the client performs the Kerberos exchanges through a KDC proxy — a service that forwards Kerberos requests to a domain controller’s Key Distribution Center (KDC) over HTTPS, using the MS-KKDCP protocol. To enable Kerberos, configure one of the following in the connection settings on the Advanced tab:
- Use RD Gateway as the KDC proxy — for connections that go through a Remote Desktop Gateway, enable this option to send the Kerberos requests to the KDC proxy service of the configured gateway. No separate KDC proxy name is needed (the field is hidden while this option is enabled, and the option takes precedence). This corresponds to the
rdgiskdcproxyproperty of .rdp files. - KDC proxy name — the address of a KDC proxy, for example
kdcproxy.example.comorhttps://kdcproxy.example.com/KdcProxy. A bare host name is expanded to anhttps://URL with the default/KdcProxypath; onlyhttps://proxies are supported. This corresponds to thekdcproxynameproperty of .rdp files.
Setting up a KDC proxy
A Remote Desktop Gateway can act as the KDC proxy: the Windows KDC Proxy Service (KPSSVC) is installed together with the RD Gateway role, so an existing gateway can typically be used as-is. The service can also be set up on any domain-joined Windows Server with a TLS server certificate.
Password-based sign-in through the proxy requires password authentication to be permitted and no TLS client certificate to be demanded. On servers where the service was installed with the RD Gateway role this is normally already the case. If Kerberos sign-in fails, verify the following values under the registry key HKLM\SYSTEM\CurrentControlSet\Services\KPSSVC\Settings on the proxy server, creating them if absent, and restart the service:
DisallowUnprotectedPasswordAuth(DWORD) =0— permits Kerberos requests that use password credentials.HttpsClientAuth(DWORD) =0— does not require a TLS client certificate from the connecting device.
Notes
- When no KDC proxy is configured, or when Kerberos cannot be used, the client automatically falls back to NTLM — existing connections keep working unchanged.
- Kerberos allows signing in to environments where NTLM is disabled or restricted by security policy.
- Connect to remote computers by their fully qualified domain name (not by IP address) and sign in with domain credentials, so that the Kerberos service principal can be resolved.
How to Manage Isolated Web App (IWA) Versions in Google Workspace
Managing the exact version of your Isolated Web App (IWA) ensures compatibility and stability across your organization’s managed devices. Below are the steps to pin your IWA to a custom version for an upgrade, force a downgrade, and configure a custom update channel if your specific version requires it.
1. Pin IWA to a Custom Version (Upgrade)
-
Navigate to Apps & extensions: Log in to your Google Workspace Admin console and go to Devices > Chrome > Apps & extensions.
-
Select the deployment type: Click on Users & browsers (or Kiosks, depending on your specific deployment model).
-
Select the Organizational Unit (OU): In the left-hand panel, click on the specific OU where you want to apply the version pin.
-
Open the IWA settings: Find and click on your Isolated Web App in the central list. This will open its configuration panel on the right side of the screen.
-
Pin the target version: Scroll down to the Custom settings section. Toggle the Pin to a custom version switch and type the exact version string of the release you want to deploy, e.g. 4.15.0
-
Apply changes: Click Save in the top right corner.
Note: The upgrade will occur on user sign out/sign in
2. Pin IWA to a Custom Version (Downgrade)
Sometimes a newer version introduces unexpected issues, and you must roll back to a stable version.
🚨 CRITICAL WARNING: Forcing an app downgrade triggers a mandatory local app storage wipe on all affected client devices. All saved connections and offline data will be permanently reset and removed. This is not usually a significant problem if you use Xtralogic Enterprise Provider Chrome extension to distribute pre-configured connections and other settings. They will be restored on app restart.
-
Navigate to Apps & extensions: Log in to the Google Workspace Admin console and go to Devices > Chrome > Apps & extensions.
-
Select the deployment type: Click on Users & browsers (or Kiosks).
-
Select the Organizational Unit (OU): In the left-hand panel, select the OU that requires the app downgrade.
-
Open the IWA settings: Click your Isolated Web App in the list to open the right-hand configuration pannel.
-
Pin the target version: Scroll down to the Custom settings section. Toggle the Pin to a custom version switch and type the exact version string of the release you want to deploy, e.g. 4.15.0
-
Authorize the downgrade: Locate and enable the Allow downgrades option. (Remember: This is the step that will wipe local app data).
-
Apply changes: Click Save at the top right corner.
Note: The downgrade will occur on sign out/sign in
3. Set a Custom Update Channel (If Required)
Some custom or pre-release IWA versions require pointing the app to a specific update channel (other than the default stable channel). Usually, the Xtralogic support will tell which channel is required.
-
Open the IWA settings: While still in Devices > Chrome > Apps & extensions (and having selected your OU), click on your IWA to open the right-hand configuration panel.
-
Enter the Custom Channel: Scroll down to the Custom settings section. Toggle the Set a custom update channel and type the exact channel name, beta or dev, required by your target version.
-
Apply changes: Click Save at the top right.