Skip to main content
Version: Developer

Deploy PWAs with Group Policy

Overview

Manual Progressive Web App (PWA) installation does not scale across a Windows fleet. This guide deploys one or more Kasm Workspaces PWAs centrally through a Microsoft Group Policy Object (GPO), using the Google Chrome and Microsoft Edge ADMX templates. As a result, users gain quick access to Kasm Workspaces from their desktop or Start menu, and administrators manage that access from a single policy instead of touching each device.

Prerequisites

Before you begin, confirm the following:

Solution approach

This guide progresses through the following phases:

  1. Prepare a JSON template for the Kasm PWA Group Policy Object.
  2. Install the ADMX templates for Google Chrome or Microsoft Edge.
  3. Configure a browser-specific GPO.
  4. Verify the deployment.

Detailed steps

Prepare the JSON template

The Group Policy Object for PWA deployment accepts JSON data only in a single-line, concatenated format that strips all whitespace and line breaks. Build the template first, then collect the Direct Install URL for each Workspace.

  1. Choose one of the two templates below as a starting point, then copy and paste it into a text editor. Use this concatenated JSON template to add a single PWA:

    [{"url":"https://www.contoso.com/maps","default_launch_container":"window","create_desktop_shortcut":true}]

    Use this concatenated JSON template to add multiple PWAs:

    [{"url":"https://app.contoso.edu","default_launch_container":"window","create_desktop_shortcut":true},{"url":"https://app.contoso.edu/editor","default_launch_container":"window","create_desktop_shortcut":true},{"url":"https://app.contoso.edu/sheets","default_launch_container":"window","create_desktop_shortcut":true}]
  2. Log in to Kasm Workspaces with administrative credentials.

  3. Navigate to Workspaces > Workspaces.

  4. For each Workspace you want to deploy as a PWA:

    • Click the Edit (pencil icon) for the Workspace.
    • Locate and copy the Direct Install URL.
    • Paste the value into your JSON template, replacing the example URL.
  5. Save the updated JSON template and keep it available for the GPO configuration steps.

Install the ADMX templates

Install the ADMX and ADML files for the browser you intend to manage. The ADMX file defines the policies, and the ADML file supplies the language-specific display strings.

For Google Chrome

  1. Download the Chrome Enterprise Bundle from the following URL:

    https://chromeenterprise.google/browser/download/
  2. Extract GoogleChromeEnterpriseBundle64.zip. Navigate to the extracted bundle and locate the Configuration\admx folder. It contains two key folders:

    • admx: contains the ADMX files.
    • en-US: contains the language-specific ADML files (English in this example).
  3. Copy chrome.admx to the policy definitions folder:

    %systemroot%\PolicyDefinitions
  4. Copy chrome.adml to its corresponding language-specific folder:

    %systemroot%\PolicyDefinitions\en-US

For Microsoft Edge

  1. Select and download the Edge Windows 64-bit policy. The download link is located directly below the Download button at the following URL:

    https://www.microsoft.com/edge/business/download
  2. Extract MicrosoftEdgePolicyTemplates.cab. Navigate to the extracted bundle and locate the Windows\admx folder. It contains two key folders:

    • admx: contains the ADMX files.
    • en-US: contains the language-specific ADML files (English in this example).
  3. Copy msedge.admx to the policy definitions folder:

    %systemroot%\PolicyDefinitions
  4. Copy msedge.adml to its corresponding language-specific folder:

    %systemroot%\PolicyDefinitions\en-US

Configure a browser-specific GPO

Create a new GPO and enable the force-install policy for your chosen browser. Paste the JSON template you prepared earlier into the policy.

Create a new GPO

  1. Open the Group Policy Management Console:

    gpmc.msc
  2. Right-click the desired organizational unit (OU) and select Create a GPO in this domain, and Link it here....

  3. Name the new GPO, for example "Kasm Workspaces PWA Deployment".

Configure the list of force-installed web apps for Google Chrome

  1. Right-click your newly created GPO and select Edit.

  2. Configure this setting in either of the following locations:

    • Computer Configuration > Administrative Templates > Google Chrome
    • User Configuration > Administrative Templates > Google Chrome
    note

    Choose Computer Configuration to apply PWA settings universally on a specific set of devices, regardless of who is logged in.

    Choose User Configuration if you want the PWAs to follow a specific set of users across any device.

    Both configurations can work together. If there is a conflict between them, Computer Configuration typically takes precedence. Loopback processing and policy filtering are the most common cases where User Configuration overrides or replaces Computer Configuration settings.

  3. Locate and edit the setting Configure list of force-installed Web Apps:

    • Change the State to Enabled.
    • Copy the single-line, concatenated JSON from Prepare the JSON template.
    • Paste the JSON data into the URLs for Web Apps to be silently installed field.
    • Click OK to save the changes.

Configure the list of force-installed web apps for Microsoft Edge

  1. Right-click your newly created GPO and select Edit.

  2. Configure this setting in either of the following locations:

    • Computer Configuration > Administrative Templates > Microsoft Edge
    • User Configuration > Administrative Templates > Microsoft Edge
    note

    Choose Computer Configuration to apply PWA settings universally on a specific set of devices, regardless of who is logged in.

    Choose User Configuration if you want the PWAs to follow a specific set of users across any device.

    Both configurations can work together. If there is a conflict between them, Computer Configuration typically takes precedence. Loopback processing and policy filtering are the most common cases where User Configuration overrides or replaces Computer Configuration settings.

  3. Locate and edit the setting Configure list of force-installed Web Apps:

    • Change the State to Enabled.
    • Copy the single-line, concatenated JSON from Prepare the JSON template.
    • Paste the JSON data into the URLs for Web Apps to be silently installed field.
    • Click OK to save the changes.

Verify the deployment

Update Group Policy on the client machines, then confirm that the PWAs install and launch correctly.

Update Group Policy on client machines

  1. Run the gpresult /R command to review the Resultant Set of Policy (RSoP) information and determine whether the GPO you created has been applied on a client machine.

  2. Review Applied Group Policy Objects in both the Computer Settings and User Settings sections. Your Kasm Workspaces PWA Deployment GPO appears in the location you used in Configure a browser-specific GPO:

    COMPUTER SETTINGS
    ------------------
    CN=Alpha,OU=Servers,DC=kasm,DC=local
    Last time Group Policy was applied: 10/25/2024 at 8:42:58 PM
    Group Policy was applied from: WindowsServer.kasm.local
    Group Policy slow link threshold: 500 kbps
    Domain Name: KASM
    Domain Type: Windows 2008 or later

    Applied Group Policy Objects
    -----------------------------
    Kasm Workspaces PWA Deployment


    ...


    USER SETTINGS
    ------------------
    CN=Alpha,OU=Servers,DC=kasm,DC=local
    Last time Group Policy was applied: 10/25/2024 at 8:42:58 PM
    Group Policy was applied from: WindowsServer.kasm.local
    Group Policy slow link threshold: 500 kbps
    Domain Name: KASM
    Domain Type: Windows 2008 or later

    Applied Group Policy Objects
    -----------------------------
    Kasm Workspaces PWA Deployment

  3. If your Group Policy has not been applied yet and immediate enforcement is needed, run gpupdate /force or reboot the client machines to expedite the process.

Verify PWA functionality for Google Chrome

  1. After the Group Policy is applied, open Chrome on a client machine.
  2. Confirm that the PWAs appear in the Start Menu and as desktop shortcuts if configured.
  3. Navigate to chrome://apps and verify that the Kasm Workspaces PWAs are listed.
  4. Launch each PWA.
  5. Ensure each PWA opens in its own window as expected and provides access to Kasm Workspaces.

Verify PWA functionality for Microsoft Edge

  1. After the Group Policy is applied, open Edge on a client machine.
  2. Confirm that the PWAs appear in the Start Menu and as desktop shortcuts if configured.
  3. Navigate to edge//apps and verify that the Kasm Workspaces PWAs are listed.
  4. Launch each PWA.
  5. Ensure each PWA opens in its own window as expected and provides access to Kasm Workspaces.

Common troubleshooting steps

  • PWAs are not installing. Verify the GPO link and scope. Check policy application with gpresult /r. Review Event Viewer for policy errors. Confirm that the Direct Install URLs are correct and accessible.
  • Authentication fails. Verify the SSL certificates. Check the browser SSO configuration. Confirm that the Kasm server is accessible.
  • Performance is poor. Review network connectivity. Check client system resources. Verify browser version compatibility. Monitor Kasm Workspace resource allocation.

Reference