Remote Access & Licensing
Remote Access & Licensingintermediate16 min read·Updated Aug 28, 2026

How to Publish RemoteApp and Set Up the Remote Desktop Web Client on Windows Server 2025

Publish RemoteApp programs on Windows Server 2025 and set up the Remote Desktop web client with RD Web Access, broker certificates, licensing checks, and browser-based access.

Genuine, fully-licensed Windows
Spin up a Windows Server: full admin, RDP-ready
Genuine Windows Server 2019, 2022, or 2025 with full administrator access. We handle the Microsoft licensing, billed monthly with nothing to buy upfront.

In short

To publish RemoteApp and make it available through the Remote Desktop web client on Windows Server 2025, first validate the underlying Remote Desktop Services deployment, publish the application from the target session collection, install the RDWebClientManagement PowerShell module on the RD Web Access server, import the RD Connection Broker certificate, publish the web client package, and test access from a supported browser.

This guide owns one specific workflow:

Text
Working Windows Server 2025 RDS deployment → session collection → publish RemoteApp → verify user authorization → prepare RD Web Access → install RDWebClientManagement → import RD Broker certificate → publish the web client → open the web-client URL → launch the RemoteApp as a normal user → verify licensing, certificates, redirection and sign-out

It does not replace the broader Remote Desktop Services Configuration on Windows Server 2025 guide. That page owns the base RDS deployment. This page starts when Connection Broker, RD Web Access, RD Session Host, licensing, and a session collection already exist.

Microsoft's current documentation lists Windows Server 2025 for the Remote Desktop web client and RDS collection workflows used in this guide. Because RDS architecture, certificates, licensing, and application behavior vary by environment, validate the sequence in your own deployment before production rollout.

Why use RemoteApp with the Remote Desktop web client?

RemoteApp lets an administrator publish a specific Windows application from an RD Session Host instead of giving every user a full Windows desktop. The Remote Desktop web client gives authorized users a browser-based way to reach the applications and desktops published to them.

That combination can fit teams that need centrally hosted Windows software but want a narrower user experience than a full remote desktop.

RequirementRemoteApp + web client fit
Users need one or several Windows applicationsStrong fit
Users should not receive a full server desktopStrong fit
Users connect from Windows, macOS, ChromeOS, or Linux browsersGood fit with supported browsers
Users need mobile-browser accessNot a fit; Microsoft currently says mobile devices are not supported by the web client
Users need a complete Windows desktopPublish a desktop collection instead of only RemoteApps
Users connect from the public internetPlan RD Gateway, certificates, MFA, and external access separately

Microsoft documents web-client access from modern browsers on Windows, macOS, ChromeOS, and Linux. The user still needs valid RDS authorization and the correct published resource.

Prerequisites

Do not begin with the web-client PowerShell module if the underlying RDS deployment is not already healthy.

Confirm the following first:

  • Windows Server 2025 is patched.
  • The RDS deployment has an RD Connection Broker.
  • RD Web Access is installed and operational.
  • At least one RD Session Host is part of a session collection.
  • The application you want to publish is installed on every Session Host that can serve the collection.
  • A normal Active Directory test user can access the collection.
  • RDS licensing is configured for the intended production model.
  • DNS resolves the names used by the deployment.
  • Certificates for the RDS deployment are installed and trusted as required.
  • External users have a controlled access path such as RD Gateway where the architecture requires it.
  • You have a rollback path before changing the production web client.

If the base RDS deployment is incomplete, finish Remote Desktop Services Configuration on Windows Server 2025 first.

Licensing warning before web-client rollout

RemoteApp sessions are Remote Desktop Services sessions. A browser does not remove the licensing requirement.

Microsoft's current web-client administration guidance warns that the web client should be used with a Per User RDS CAL configuration rather than Per Device because Per Device mode can result in licenses being consumed incorrectly for web-client users.

Review RDS CAL Licensing on Windows Server before production rollout. If Raff provides the RDS workload under a hosted service-provider licensing model, confirm the applicable hosted RDS entitlement separately.

Step 1 — Verify the session collection

Open Server Manager on the RDS management server.

Go to:

Text
Remote Desktop Services → Collections → select the target collection

For this example, assume the collection is named:

Text
OfficeApps

Before publishing an application, verify:

  1. the expected RD Session Host belongs to the collection;
  2. the intended user or Active Directory group is authorized;
  3. the application exists on the Session Host at the expected path;
  4. the collection is configured for the resource model you intend to publish.

You can inspect collections with PowerShell:

Powershell
Import-Module RemoteDesktop Get-RDSessionCollection

Then inspect the target collection:

Powershell
Get-RDSessionCollection ` -CollectionName 'OfficeApps'

Verification: Server Manager and PowerShell should both show the intended collection and Session Host.

Step 2 — Install and test the application on the Session Host

RemoteApp does not package or virtualize the application for you. The application must already run correctly on the RD Session Host.

Before publication, validate:

  • the application launches;
  • required runtimes are installed;
  • file paths work;
  • database or API connectivity works;
  • the application can save data;
  • user-specific configuration behaves correctly;
  • the application's own license permits multi-user/RDS use;
  • updates and reboots do not break the application path.

Do not publish an application to users before it works locally on the Session Host under the intended user context.

Step 3 — Publish the RemoteApp from Server Manager

Open:

Text
Server Manager → Remote Desktop Services → Collections → OfficeApps → RemoteApp Programs → Tasks → Publish RemoteApp Programs

Select the application you want to publish and complete the wizard.

After publication, the application should appear under RemoteApp Programs for that collection.

Microsoft also provides the New-RDRemoteApp cmdlet.

Example:

Powershell
Import-Module RemoteDesktop New-RDRemoteApp ` -CollectionName 'OfficeApps' ` -DisplayName 'Contoso Accounting' ` -FilePath 'C:\Program Files\Contoso\Accounting.exe' ` -ShowInWebAccess $true

Replace the example application name and path with the actual executable.

-ShowInWebAccess $true makes the RemoteApp eligible to appear through RD Web Access for authorized users.

Verify the result:

Powershell
Get-RDRemoteApp -CollectionName 'OfficeApps'

Step 4 — Restrict the RemoteApp to the correct users

Publishing the program is not the same as authorizing every user.

Use the collection's user group plus RemoteApp-specific restrictions where needed.

A practical structure is:

Text
AD user → RDS application security group → session collection authorization → RemoteApp authorization → published application

For example:

Text
CORP\RDS-Accounting-Users

New-RDRemoteApp supports -UserGroups when a RemoteApp should be scoped more narrowly.

Powershell
New-RDRemoteApp ` -CollectionName 'OfficeApps' ` -DisplayName 'Contoso Accounting' ` -FilePath 'C:\Program Files\Contoso\Accounting.exe' ` -ShowInWebAccess $true ` -UserGroups 'CORP\RDS-Accounting-Users'

Test with both an authorized and an unauthorized user. A proper security test proves that users who should not receive the application cannot see or launch it.

Step 5 — Confirm RD Web Access is working

RD Web Access is part of the Remote Desktop Services deployment and provides the resource layer used by authorized users.

Before adding the web client, verify the RD Web Access role is healthy and that the deployment certificates and DNS names are correct.

The web client is not a replacement for Connection Broker or RD Web Access. It presents published applications and desktops through the browser on top of the existing RDS deployment.

For external access, do not expose Session Hosts directly just because browser access works. Review Remote Desktop Gateway vs Direct RDP and Add MFA to Remote Desktop Services before public rollout.

Step 6 — Install the RDWebClientManagement module

On the RD Web Access server, open PowerShell as Administrator.

Install the module:

Powershell
Install-Module -Name RDWebClientManagement

If PowerShell asks whether you trust the repository, verify that you are using the expected PowerShell Gallery source before accepting.

After installation, open a fresh elevated PowerShell session and verify the module:

Powershell
Get-Module -ListAvailable RDWebClientManagement

List its commands:

Powershell
Get-Command -Module RDWebClientManagement

Step 7 — Download the latest Remote Desktop web client package

Run:

Powershell
Install-RDWebClientPackage

This downloads the current web-client package supported by Microsoft's management module.

Avoid hard-coding a package version unless you have a specific reason to pin it.

Step 8 — Export the RD Connection Broker certificate

The web client requires the RD Connection Broker certificate to be imported into the web-client configuration.

Use the certificate currently assigned to the RDS deployment's Connection Broker role. Export the public certificate as a .cer file. Do not export or expose the private key for this step.

Example path:

Text
C:\RDS\BrokerCert.cer

Verify:

  • the certificate corresponds to the Connection Broker configuration;
  • the certificate is valid and not expired;
  • the expected name is present;
  • the public certificate file is available on the RD Web Access server;
  • no private key is exposed unnecessarily.

Step 9 — Import the RD Broker certificate into the web client

On the RD Web Access server, run:

Powershell
Import-RDWebClientBrokerCert 'C:\RDS\BrokerCert.cer'

Microsoft instructs administrators to run this again when the RD Broker certificate is renewed or replaced. If the broker certificate changes but the web client configuration is not updated, users can receive an unexpected server authentication certificate error.

Step 10 — Publish the Remote Desktop web client

Microsoft supports publishing a Test package first and then a Production package.

Start with the test client:

Powershell
Publish-RDWebClientPackage -Type Test -Latest

After validation, publish production:

Powershell
Publish-RDWebClientPackage -Type Production -Latest

Microsoft documents the production URL format as:

Text
https://server_FQDN/RDWeb/webclient/index.html

The hostname should match the name covered by the RD Web Access public certificate.

The corresponding test path is:

Text
https://server_FQDN/RDWeb/webclient-test/index.html

Step 11 — Sign in as a normal user

From a supported desktop browser, open the production or test URL.

Microsoft currently documents support for modern browsers including:

  • Microsoft Edge;
  • Google Chrome;
  • Apple Safari;
  • Mozilla Firefox 55 or later.

The web client can be used from Windows, macOS, ChromeOS, and Linux. Microsoft currently says mobile devices are not supported by the web client.

Sign in using the format expected by the RDS environment, commonly:

Text
DOMAIN\username

Use a normal non-administrator test account that belongs to the intended RDS application group.

The All Resources view should show only the applications and desktops assigned to that user.

Step 12 — Launch the RemoteApp from the browser

Select the published application.

The browser may ask for permission to redirect local resources such as clipboard or printer access. Choose settings that match your policy.

Test more than whether the application window opens:

CheckExpected result
AuthenticationNormal user can sign in
AuthorizationUser sees only assigned resources
Application launchRemoteApp opens successfully
Application identityCorrect application and version opens
File accessIntended server-side paths work
ClipboardWorks or is blocked according to policy
PrintingWorks or is blocked according to policy
ReconnectSession behavior matches design
Sign-outSession closes cleanly
Unauthorized userCannot see or launch the RemoteApp

If the application launches only for an administrator, fix application permissions or user-profile dependencies rather than granting administrator rights to end users.

Step 13 — Verify the URL and certificate chain externally

Test from a client that is not the RD Web Access server itself.

Verify:

  • the public hostname resolves correctly;
  • the certificate presented by the web endpoint is trusted;
  • there are no browser certificate warnings;
  • the URL hostname matches the certificate;
  • external access reaches the intended gateway/web-access path;
  • internal Session Hosts are not accidentally exposed directly to the internet;
  • the application launches from the intended user network.

For public production access, use Remote Desktop Gateway vs Direct RDP to validate the external access architecture.

RemoteApp vs full desktop publishing

Use RemoteApp when users need only one or several Windows applications rather than a complete Windows desktop.

User needBetter publication model
One accounting, ERP, or business applicationRemoteApp
Two or three focused line-of-business appsRemoteApp
Complete Windows work environmentFull Remote Desktop
Server administrationAdministrative access, not normal RemoteApp access
Browser access to a hosted Windows applicationRemoteApp + web client can fit

Do not publish a full desktop simply because it is easier if the real requirement is only one application. Narrower publication reduces the normal user's accessible surface and provides a more focused experience.

How to update the Remote Desktop web client later

When Microsoft publishes a newer client package, use:

Powershell
Install-RDWebClientPackage

Optionally publish it to the test endpoint first:

Powershell
Publish-RDWebClientPackage -Type Test -Latest

Then promote it to production:

Powershell
Publish-RDWebClientPackage -Type Production -Latest

Use a test user before promoting an update when RemoteApp is business-critical.

Certificate renewal procedure

When the RD Broker certificate is renewed or replaced:

  1. export the new public certificate as .cer;
  2. copy it to the RD Web Access server;
  3. import it again with Import-RDWebClientBrokerCert;
  4. republish the production web client;
  5. test a RemoteApp launch.

Example:

Powershell
Import-RDWebClientBrokerCert 'C:\RDS\BrokerCert-New.cer' Publish-RDWebClientPackage -Type Production -Latest

Common Remote Desktop web client problems

The RemoteApp does not appear

Check:

  • the program is published in the correct collection;
  • ShowInWebAccess is enabled;
  • the test user is in the collection's allowed group;
  • RemoteApp-specific user groups allow the user;
  • the user signed into the correct RDS deployment;
  • RD Web Access can reach the deployment correctly.

The web client loads but the app does not launch

Check:

  • RD Connection Broker health;
  • Session Host health;
  • RD Gateway/external access path;
  • certificates;
  • user authorization;
  • RDS licensing;
  • application executable permissions;
  • event logs on the RDS servers.

Unexpected server authentication certificate error

If the RD Broker certificate was renewed or replaced, re-import the new broker certificate:

Powershell
Import-RDWebClientBrokerCert 'C:\RDS\BrokerCert-New.cer'

Then republish the production client.

The browser shows a certificate warning

Verify the hostname used in the URL matches the RD Web Access public certificate and that the certificate chain is trusted by the client.

Per-device licensing warnings appear

Microsoft's web-client administration documentation warns about Per Device CAL mode and recommends Per User licensing for the web client. Review the licensing design rather than bypassing the warning.

Users see more applications than expected

Review both the collection authorization and each RemoteApp's user-group scope. Do not rely on hiding icons as an access-control mechanism.

Security checklist before production rollout

Before sending the URL to users, confirm:

  • RDS licensing matches the production deployment model.
  • Normal users have no unnecessary local administrator rights.
  • Only intended AD groups can access the session collection.
  • Each RemoteApp is scoped to the correct users/groups.
  • RD Web Access uses a trusted certificate.
  • The RD Broker certificate imported into the web client is current.
  • RD Gateway or another approved external-access architecture is configured where required.
  • MFA is enabled when the risk model requires it.
  • Session Hosts are not broadly exposed through public RDP.
  • Clipboard, drive, printer, and device redirection policies are intentional.
  • Windows Server and the published application are patched.
  • Backups and restore testing exist for application data.
  • A normal user has passed the complete browser launch test.
  • An unauthorized user has been tested and denied.

Where Raff fits

Raff Windows VMs can provide the Windows Server infrastructure used for RD Session Host, Connection Broker, RD Web Access, and other RDS roles in a planned deployment. The RDS architecture, Microsoft licensing, application licensing, certificates, user groups, gateway design, MFA integration, and application testing still need to be configured for the production environment.

For teams evaluating server capacity, use Windows VPS Sizing for Remote Users before moving several users onto one Session Host.

Deploy a Raff Windows VM for your Windows Server 2025 RDS environment and configure the RDS roles, licensing, certificates, and application workflow for your users.

Frequently asked questions

What is the Remote Desktop web client?

The Remote Desktop web client is Microsoft's browser-based client for accessing remote desktops and RemoteApp resources published by a Remote Desktop Services deployment. Users sign in through a supported desktop browser and receive the resources they are authorized to use.

Does the Remote Desktop web client work with Windows Server 2025?

Microsoft's current web-client documentation lists Windows Server 2025 as an applicable platform.

Do users need RDS CALs for RemoteApp through the web client?

RemoteApp is Remote Desktop Services functionality. The browser client does not remove the applicable RDS licensing requirement. Microsoft also warns that the web client should be used with Per User rather than Per Device CAL configuration.

Can I publish both RemoteApps and a full desktop from the same collection?

Design the collection around the resource type you intend to expose. Microsoft documents different collection publication states for full desktops and RemoteApps, so validate the intended model before rollout.

What URL do users open?

Microsoft documents the production web-client path as https://server_FQDN/RDWeb/webclient/index.html, using the server name that matches the RD Web Access public certificate.

Why do I need the RD Broker certificate?

The web client uses the imported RD Connection Broker certificate as part of validating the RDS connection. Microsoft instructs administrators to re-import it whenever the broker certificate is renewed or replaced.

Can users access the web client from a phone or tablet?

Microsoft currently says mobile devices are not supported by the Remote Desktop web client. Use a supported Remote Desktop client for mobile scenarios.

What's next

Sources

Was this article helpful?

Published August 28, 2026 · Updated August 28, 2026

Back to hub
Ready when you are

Your Windows Server, live in ~55 seconds

Genuine, fully-licensed Windows with full admin and RDP. We handle the Microsoft licensing, billed monthly with nothing upfront. On NVMe SSD, backed by a 14-day money-back guarantee.

Related articles