Welcome to OpenFin Docs

Explore our guides, resources and references for building with OpenFin

Get Started

Desktop owner settings

Desktop owner settings are global settings that control aspects of the OpenFin environment on an individual computer or device.

The global desktop settings that can be defined include the following:

  • Allowed applications
  • Custom URLs (assetsUrl, lrsUrl, etc.)
  • Network settings
  • Shortcut settings
  • Other settings

While these settings can be defined directly in the Windows registry, doing so is inconvenient and not very scalable. A more common, convenient, and scalable approach is to define settings in a JSON file, typically residing on the customer's network, and to set only a single registry key containing the location of the desktop owner settings file. This file can therefore be easily updated; it's also possible to define multiple desktop owner settings files, depending on the category of user.

When the OpenFin RVM launches, it does the following:

  1. It reads the registry key to find the location of the desktop owner settings file.
  2. It parses the file and overrides any equivalent registry settings, such as assetsUrl or lrsUrl, with the settings specified in the file. RVM versions 5.3 and up cache the settings in the RVM installation directory.

The following registry key is used to specify the desktop owner file:

Key: HKEY_CURRENT_USER\Software\OpenFin\RVM\Settings\DesktopOwnerSettings
Type: String
Value: http://website.com/company/files/Desktop_Owner_Settings.json

Allowed applications example

One important use of the desktop owner settings file is to allow applications listed in the whitelist key. An application can be allowed by listing its Client ID (same as the licenseKey in its application manifest) as well its an App UUID or App Config Domain. If it is listed, the application launches. If it is not listed, a distributionEmail field in the desktop owner settings file is available to specify a distribution list for end-users to reach out to when a disallowed OpenFin applications fails to launch. In this case, a dialog is displayed to the end-user notifying them to contact the designated list to grant permission to the application.

{

    "desktopSettings": {
        "assetsUrl": "http://localhost:8000/",
        "lrsUrl": "http://localhost:8000/services",
        "cleanUnusedRuntimes": true,
        "unusedRuntimeExpirationInMinutes": "43200",
        "enableDesktopShortcut": true,
        "enableStartMenuShortcut": true,
        "enableStartupShortcut": true,
        "disableShortcutCreation": false,
        "startMenuRootFolder": "CompanyName",

        "network": {
            "readTimeout": 10,
            "sendTimeout": 10,
            "receiveTimeout": 10,
            "connectTimeout": 10
        },

        "deployment": {
            "runtimeCache": "C:\\custom\\runtime\\cache\\dir",
            "runtimeDirectory": "C:\\custom\runtime\\dir",
            "rvmInstallDirectory": "C:\\custom\\dir"
        },

        "applicationLogging": {
            "maxAppLogFileSizeMB": 10000,
            "maxAppLogFiles": 10
        }
    },
    "whitelist": {
        "distributionEmail": "[email protected]",
        "allowedRVMVersions": ["4.4.0.13"],
        "allowed": [{
                "name": "company_name",
                "clientId": "company_name_client_id"
            },
            {
                "name": "company_name",
                "clientId": "OpenFin_special_assigned_id",
                "appUuids": [
                    "app_1",
                    "app_2",
                    "app_3"
                ]
            },
            {
                "name": "company_name",
                "clientId": "company_name_special_assigned_id",
                "appUuids": [
                    "app_1"
                ],
                "appRuntimes": [
                    "1.2.3.4", "5.6.7.8"
                ],
                "appConfigDomains": [
                    "www.company1.com", "www.company2.com"
                ]
           }
        ]
    }
}

Selected properties defined

NameDescription
assetsUrlGlobally set the assets url for all applications. The RVM uses the assets URL to download runtimes and RVMs, along with resolving release channels.
lrsUrlGlobally set the licensing server url for all applications. The RVM will send all licensing information to the specified server instead of directly to the OpenFin default server.
cleanUnusedRuntimesGlobally 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.
unusedRuntimeExpirationInMinutesControls the amount of time after which the RVM will remove a downloaded runtime and its corresponding runtime cache folder(s).
startMenuRootFolderGlobally sets root folder(s) for applications start menu shortcuts.
maxAppLogFileSizeMBSpecifies 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+)
disableShortcutCreationGlobally disable all applications installed through the RVM from creating shortcuts. Desktop owner may choose to be responsible for shortcut creation.
runtimeCacheRuntimes will write any cache data here (this is a global setting that will override any app configuration). (RVM 2.8+)
runtimeDirectoryRuntime binaries will be stored here. (RVM 2.8+)
rvmInstallDirectoryThe RVM will copy itself and operate from this directory. (RVM 2.8+)
servicesOpenFin Desktop Services are singleton processes that provide functionality to all applications running on an OpenFin enabled desktop. Desktop Services are started and managed by the RVM.
enableRuntimeDiagnosticsGlobally enables reporting of Runtime diagnostic information to OpenFin.

Advanced properties

Use these properties only under specialized circumstances.

NameDescriptionCaveat
protocolHandlerLocationLocation where fin and fins links launch the RVM from. (RVM 6.6+)Takes precedence over rvmInstallDirectory. Use only in situations where this location needs to be explicitly set, such as when the default location in a virtual environment is periodically emptied.

Updated 19 days ago


Desktop owner settings


Suggested Edits are limited on API Reference Pages

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