OpenFin

Desktop Owner Settings

Overview

The DesktopOwnerSettings file allows Desktop Owners to set most global desktop settings in an easy-to-update, remote JSON file as opposed to setting them in the registry. The global desktop settings that can be set are:

  • Application whitelisting
  • Custom URLs (assetsUrl, lrsUrl, etc.)
  • Network settings
  • Shortcut settings
  • Other settings

When the OpenFin RVM launches, it parses the DesktopOwnerSettings file and overrides any equivalent registry settings, such as assetsUrl or lrsUrl, with the settings specified in the DesktopOwnerSettings file. RVM versions 5.3 and up will cache the settings in the RVM install directory.

Whitelist applications example

The DesktopOwnerSettings file allows the OpenFin RVM to whitelist applications listed in the “whitelist” key. An application can be whitelisted by listing its Client ID (same as the licenseKey) as well its an App UUID or App Config Domain. If listed, the application launches. If not listed, a “distributionEmail” field in the DesktopOwnerSettings file is available to specify a distribution list for end-users to reach out to when a non-whitelisted OpenFin applications fails to launch. In this case, a dialog will be displayed to the end-user notifying them to contact the designated list to grant permission to the application.

The following registry key is used to specify the DesktopOwnerSettings file:

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

Example

{

    "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"
                ],
                "appSecuritySettings": {
                    "system": {
                        "Clipboard": {
                            "readAccess": true
                        },
                        "launchExternalProcess": true
                    }
                }
            }
        ]
    }
}
Name Description
assetsUrl Globally set the assets url for all applications. The RVM uses the assets URL to download runtimes and RVMs, along with resolving release channels.
lrsUrl Globally 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.
cleanUnusedRuntimes 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.
unusedRuntimeExpirationInMinutes Controls the amount of time after which the RVM will remove a downloaded runtime and its corresponding runtime cache folder(s).
startMenuRootFolder Globally sets root folder(s) for applications start menu shortcuts.
maxAppLogFileSizeMB 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+)
disableShortcutCreation Globally disable all applications installed through the RVM from creating shortcuts. Desktop owner may choose to be responsible for shortcut creation.
runtimeCache Runtimes will write any cache data here (this is a global setting that will override any app configuration). (RVM 2.8+)
runtimeDirectory Runtime binaries will be stored here. (RVM 2.8+)
rvmInstallDirectory The RVM will copy itself and operate from this directory. (RVM 2.8+)
services OpenFin 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.

Updated 27 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.