Linux, MacOS and Windows clients
You can download the clients here: https://download.nice-dcv.com/latest.html
Web client (browser)
The NICE DCV web browser client runs inside a web browser. You don’t need to install the web client.
Supported browsers:
- Google Chrome and Chromium (97 or later)
- Mozilla Firefox
- Microsoft Edge (97 or later)
- Apple Safari
How to access
The DCV server comes with web client support included by default. To access the service you need to open this url:
https://server_hostname_or_IP:port/#session_id
Important notes:
- The session_id is optional
- The protocol must be HTTPS
- The port, by default is 8443, but maybe you have customized that
The web client also have some limitations:
- Limit of up two screens with 1920×1080 of resolution each one. The resolution can be changed, but not the screens limit.
- It will use the web browser proxy configuration.
How to use Esc as Web client escape key?
To exit fullscreen it will be required to use F11 again. ESC key can be used to interact with the server applications, and will not trigger the exit from fullscreen mode.
How to configure the NICE DCV Web Client to work in iFrames
NICE DCV offers native DCV clients for Windows, Linux and MacOS for best performance but also the convenient HTML5 browser-based NICE DCV client.
For strongest security the DCV web client by default does not allow to be embedded inside an iFrame to avoid “clickjacking” attacks. There are scenarios where you have a controlled environment and want to embed the DCV remote desktop client into another website. This guide shows how this is possible configuring respective HTTP headers.
To configure the NICE DCV server on Windows to allow embedding as iFrame the following HTTP headers are configured in the Windows registry.
In HKEY_USERS\S-1-5-18\Software\GSettings\com\nicesoftware\dcv\connectivity
we set 2 Strings (SZ) in case we want to show the iFrame as part of a page on e.g. www.ni-sp.com as follows (usually you can skip the “web-x-frame-options” entry as it has become obsolete, please replace with your domain name):
web-x-frame-options ALLOW-FROM https://www.ni-sp.com
web-extra-http-headers [("Content-Security-Policy", "frame-ancestors https://*.ni-sp.com https://www.ni-sp.com")]
If you prefer Powershell you can set the “web-extra-http-headers” option with the following Powershell command (please replace with your domain):
New-ItemProperty -Path "Microsoft.PowerShell.Core\Registry::\HKEY_USERS\S-1-5-18\Software\GSettings\com\nicesoftware\dcv\connectivity\web-extra-http-headers" -Name parameter_name -PropertyType String -Value "[('Content-Security-Policy', 'frame-ancestors https://*.ni-sp.com https://www.ni-sp.com')]" -Force
In case of DCV on Linux you can set the HTTP headers in the dcv.conf file – here an example:
[connectivity]
web-x-frame-options="ALLOW-FROM https://www.ni-sp.com"
web-extra-http-headers=[("Content-Security-Policy", "frame-ancestors https://*.ni-sp.com https://www.ni-sp.com")]
If you want to allow any https connection you can use "frame-ancestors https:
“.
More about clickjacking:
https://www.owasp.org/index.php/Clickjacking_Defense_Cheat_Sheet#Defending_with_X-Frame-Options_Response_Headers and https://www.owasp.org/index.php/Content_Security_Policy_Cheat_Sheet#Preventing_Clickjacking
Enable Firefox hardware acceleration via DCV-GL
Firefox will not enable hardware acceleration when running a virtual session powered by DCV GL. DCV defaults to disabling hardware acceleration to avoid reaching the limit of concurrent OpenGL contexts. In order to allow GPU acceleration you first need to edit /etc/dcv/dcv-gl.conf file:
[gl]
allowlist = firefox
or run Firefox with the following environment variable set:
export DCV_GL_ALLOWLIST=firefox
Depending on Firefox and DCV-GL versions, different configurations will be needed in the Firefox’s config menu, to open this menu type in the search bar about:config and press enter.
If DCV-GL version is older than 2022.2 then you need to:
- Search for: security.sandbox.content.read_path_whitelist
- Edit the variable by adding: /var/lib/dcv-gl/backup
- Save the setting and restart Firefox
If Firefox version is greater than or equal to 94 then you need to:
- Search for: gfx.x11-egl.force-disabled and set it to true
- Save the setting and restart Firefox
If you are still seeing issues, you can tyr to use GLX over WebGL. Edit the /etc/dcv/dcv.conf:
[display/linux]
use-glx-fallback-provider = false
Finally, you need to recreate the DCV virtual session.