OpenFin

Group Policy and Registry Settings

Overview

OpenFin provides Desktop Owner administrators the ability to customize the Runtime environment to manage controls around specific API features. These controls over the Runtime and RVM (v 2.5.1+) enable Application Providers to use all API features, but give their customers (on a case by case basis), the option to turn them off via Group Policy. These additional settings are an extension of the Chromium base Group Policy flags.

OpenFin supports all policies that are managed in Chromium and supported on Windows. For the list of these policies and their settings, please visit: http://dev.chromium.org/administrators/policy-list-3.

We’ve created templates for Desktop Owners to simplify the process of setting up Group Policy for users. These can be found in the following repos:

Locations

There are two main base paths where the RVM will look to read settings keys from, which can exist in both HKEY_CURRENT_USER and LOCAL_MACHINE.

  • Group Policy Registry Base Path
    • Software\Microsoft\Windows\CurrentVersion\Policies\OpenFin\RVM
  • Registry Base Path
    • Software\OpenFin\RVM

Key precedence

If the same key value (i.e. “assetsUrl”) exists in multiple locations, the key value that will actually be used is based on the following rules:
HKEY_CURRENT_USER > HKEY_LOCAL_MACHINE > Group Policy Registry > Registry > App Config

For example, if the key “assetsUrl” is set in all possible locations, below is the order in which the value would be selected:

  1. HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\OpenFin\RVM\Settings\assetsUrl
  2. LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\OpenFin\RVM\Settings\assetsUrl
  3. CURRENT_USER\Software\OpenFin\RVM\Settings\assetsUrl
  4. HKEY_LOCAL_MACHINE\Software\OpenFin\RVM\Settings\assetsUrl
  5. Application JSON “assetsUrl”
  6. OpenFin default “assetsUrl”

OpenFin Group Policy Settings


runtimeArgs

Purpose: Globally add runtime arguments to apply for all applications.
Data Type: String (REG_SZ)
Expected Value: A string containing any number of desired runtime flags, separated by spaces.
Default Value: The runtime arguments specified in the application configuration.
Key: HKEY_CURRENT_USER\Software\OpenFin\RVM\runtimeArgs
Value: –user-data-dir=”%localappdata%custom_cache_directory
Result: All applications utilizing the RVM will specify “–user-data-dir” runtime flag when they are launched. This specific runtime flag can be used to set a custom directory where the runtime will write its cache information.


cleanUnusedRuntimes

Purpose: Globally disable the RVM from cleaning up runtime and runtime cache folders that are no longer referenced by any installed applications. By default, the RVM will clean up unused runtimes.
Data Type: DWORD (REG_DWORD)
Expected Value: 0 or 1
Default Value: 1 – The RVM will clean up unused runtimes.
Usage Example:
Key: HKEY_CURRENT_USER\Software\OpenFin\RVM\Settings\cleanUnusedRuntimes
Value: 0
Result: Runtime and runtime cache folders will not get cleaned up when when no applications are referencing them.
Example


disableShortcutCreation

Purpose: Globally disable all applications installed through the RVM from creating shortcuts. Desktop owner may choose to be responsible for shortcut creation.
Data Type: DWORD (REG_DWORD)
Expected Value: 0 or 1
Default Value: 0 – Applications installed through the RVM will install their shortcuts.
Key: HKEY_CURRENT_USER\Software\OpenFin\RVM\Settings\disableShortcutCreation
Value: 1
Result: When an application is installed through the RVM, shortcuts for the application will not be created.
Example


assetsUrl

Purpose: Globally set the assets url for all applications. The RVM uses the assets url to download runtimes and RVMs, along with resolving release channels.
Data Type: String (REG_SZ)
Expected Value: A url to a server that serves up the runtimes, RVMs, and release channels.
Default Value: The assets url specified in the application configuration or the OpenFin default.
Key: HKEY_CURRENT_USER\Software\OpenFin\RVM\Settings\assetsUrl
Result: The RVM will download all assets from the specified url.
Example


IrsUrl

Purpose: Globally set the licensing server url for all applications. The RVM will send all licensing information to the specified server insted of directly to the OpenFin default server.
Data Type: String (REG_SZ)
Expected Value: A url to a server that is running the LRS/RDM(a hosted service).
Default Value: The licensing url specified in the application configuration or the OpenFin default.
Key: HKEY_CURRENT_USER\Software\OpenFin\RVM\Settings\lrsUrl
Result: The RVM will send all licensing information to the specified url.
Example


startMenuRootFolder

Purpose: Globally sets root folder(s) for applications start menu shortcuts.
Data Type: String (REG_SZ)
Expected Value: A path of custom folders where you want start menu shortcuts to be placed.
Default Value: The standard Windows start menu shortcut folder.
Key: HKEY_CURRENT_USER\Software\OpenFin\RVM\Settings\startMenuRootFolder
Value: custom_folder_name
Result: All applications installed through the RVM that specify start menu shortcuts will have their start menu shortcuts placed within “custom_folder_name”. The custom folder will exist inside of the default Windows start menu folder.
Example


rvmInstallDirectory

Purpose: The RVM will copy itself and operate from this directory. (RVM 2.8+)
Data Type: String (REG_SZ)
Expected Value: A folder path where you want the RVM to copy itself from.
Default Value: %LOCALAPPDATA%\OpenFin
Key: HKEY_CURRENT_USER\Software\OpenFin\RVM\Settings\Deployment\rvmInstallDirectory
Value: %LOCALAPPDATA%\CustomFolder
Result: If the RVM executes from a different folder, it will copy itself to the custom folder and re-run from there.
Example


runtimeCache

Purpose: Runtimes will write any cache data here (this is a global setting that will override any app configuration). (RVM 2.8+)
Data Type: String (REG_SZ)
Expected Value: A folder path where you want the RVM to write cache data.
Default Value: %LOCALAPPDATA%\OpenFin\
Key: \Software\OpenFin\RVM\Settings\Deployment\runtimeCache
Value: %LOCALAPPDATA%\RuntimeCache
Result: The runtime will write its cache data to this folder.
Example


runtimeDirectory

Purpose: Runtime binaries will be stored here. (RVM 2.8+)
Data Type: String (REG_SZ)
Expected Value: A folder path where you want the Runtime binaries to be stored.
Default Value: %LOCALAPPDATA%\OpenFin\
Key: HKEY_CURRENT_USER\Software\OpenFin\RVM\Settings\Deployment\runtimeDirectory
Value: %LOCALAPPDATA%\CustomDir
Result: The RVM will read\write runtime binaries from\into this folder.
Example


unusedRuntimeExpirationInMinutes

Purpose: Controls the amount of time after which the RVM will remove a downloaded runtime and its corresponding runtime cache folder(s). The RVM will keep track of when the last time a downloaded runtime was launched. After “unusedRuntimeExpirationInMinutes” amount of time has elapsed since the runtime was last launched, the RVM will remove that runtime and its corresponding cache folder(s) the next time the RVM exits. The default value is 0x0000a8c0 (43,200 minutes, or 30 days). Note that this does not apply to runtimes that are not downloaded through the RVM (i.e. runtimes that are copied to the /runtime folder via MSI installers or other means). (RVM 3.5.1.0+)
Data Type: DWORD (REG_DWORD)
Expected Value: A DWORD representing a number of minutes.
Default Value: If the DesktopOwnerSettings file is not set, every app is allowed.
Key: HKEY_CURRENT_USER\Software\OpenFin\RVM\Settings\unusedRuntimeExpirationInMinutes
Value: 0x00043200
Result: The RVM will delete the downloaded runtime after the specified number of minutes after the runtime is launched.
Example


maxAppLogFileSizeMB

Purpose: Specifies the max log file size in MB for an application-specific log. Note that the RVM uses 1MB = 1048576 bytes. (RVM 4.2.0.35+)
Data Type: DWORD (REG_DWORD)
Expected Value: A DWORD representing the max app log file size in MB.
Key: HKEY_CURRENT_USER\Software\OpenFin\RVM\Settings\ApplicationLogging\maxAppLogFileSizeMB
Value: 0x00000400 (1024 MB)
Result: The RVM will not let application logs grow over this size.
Example


Check out this page for a complete list of Chromium Group Policy settings.

Have questions? Get in touch with us at support@openfin.co.

Group Policy and Registry Settings


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.