Connector for Omnissa Horizon

The Nexthink Connector for Omnissa Horizon retrieves essential information about your Horizon virtual desktop infrastructure (VDI), most notably the name of the desktop pool and related virtualization context to which virtual machines (VMs) belong. The connector enriches your Nexthink environment with Horizon-specific data that enhances visibility into VDI health, usage patterns, and configuration drift.

This installation guide is designed to help you securely deploy the connector for Horizon. We recommend your organization’s security team reviews the configuration and installation steps outlined here and adjusts them as needed to align with internal security policies and compliance requirements.

Device fields

The connector for Omnissa Horizon imports the following device virtualization fields.

Field

Description

Virtualization desktop pool name

Hardware characteristics of the associated virtual machines.

Virtualization desktop pool type

Type of the desktop pool. Possible values are:

  • shared

  • personal

  • pooled

Virtualization hostname

The physical device hosting the VM. It may be empty for those machines hosted in a cloud vendor, such as Azure.

Virtualization hypervisor name

Hardware virtualization system that is being used.

Environment name

Name of the connector instance that enriches the virtual device.

Desktop broker

Name of the desktop virtualization product used. In this case, omnissa_horizon.

Disk image

Name of the disk image used to deploy the VM.

Nexthink connector server

Nexthink recommends installing the Nexthink Connector for Omnissa Horizon on a separate server.

Prerequisites

URLs to allow through firewall/proxy for PowerShell Install-Module

Purpose
URL

PowerShell Gallery

https://www.powershellgallery.com

NuGet provider

https://www.nuget.org

NuGet API

https://api.nuget.org

CDN for packages

https://www.powershellgallery.com/api/v2/

Alternate NuGet V2 API

https://www.nuget.org/api/v2/

Certificate revocation

http://crl.microsoft.com (normally optional; sometimes necessary)

Additional Considerations

  • If SSL inspection is enabled on your proxy, ensure it doesn't break the TLS handshake.

  • If you're behind a proxy, ensure PowerShell is configured to use it by running the following command:

Test connectivity

You can test access using a PowerShell terminal by running the following command:

Networking

The Nexthink Connector for Omnissa Horizon needs to query the Omnissa Horizon REST API.

Service account for scheduled tasks

The Nexthink Connector for Omnissa Horizon will run as a scheduled task and needs to access the Omnissa Horizon APIs. To limit security concerns, Nexthink recommends using a local user account on the Nexthink connector server or a regular domain user account without any special privileges at the domain level.

The following guide uses a local account on the Nexthink connector server.

  1. Log on as an administrator to the server that will run the Nexthink Connector for Omnissa Horizon.

  2. Launch the local users and groups console by running the following command from the Start Menu:

Run the lusrmgr.msc command
  1. Right-click on the Users folder in the Local Users and Groups (Local) directory and select New user…

  2. Create a user account according to your organization's naming conventions. Make a note of the User name and Password as you will need these later when creating a scheduled task. To safeguard the functionality of the connector, select the following options:

    1. User cannot change password

    2. Password never expires

New user options
  1. Click Create.

  2. Open the local group policy editor by running the following command from the Start Menu:

  1. Navigate to Computer Configuration > Windows Settings > Security Settings> Local Policies > User Rights Assignment and locate the Log on as a batch Job policy.

  2. Open the policy and select Add User or Group to add the previously created user to the list.

Add user or group

Installing the connector

  1. Extract the zip file to a folder on your system. Nexthink recommends placing it in the following folder: C:\program files\Nexthink\Connectors\Omnissa

  2. Apply Modify permissions for the Logs folder for the user account you created earlier.

Data properties

Nexthink Enrichment API credentials

The Nexthink Connector for Omnissa Horizon needs appropriate credentials to connect to the Nexthink Enrichment API. Nexthink stores the credentials safely in the credential store of the local user account you created earlier.

  1. Refer to the API credentials documentation for step-by-step guidance. When you save the API credentials, a new window containing the Client ID and the Secret key appears. Make a note of the information as it will not be accessible once you close the window.

OAuth client credentials
  1. On the server that will be running the Nexthink Connector for Omnissa Horizon, open PowerShell under the credentials of the local user you created earlier using the runas command in the command line:

runas CLI
  1. In the newly opened PowerShell window, add the API credentials you just created in the Nexthink web interface by writing the following command:

  1. Replace the <ClientID> and <Secret key> with the values you noted down when creating the API credentials and run the command. Make a note of the TargetName you used as you will need this value for the configuration file.

PowerShell window

Updating the configuration file

For the configuration file update, you need the URL of your Nexthink Cloud API instance. The URL pattern looks like the following: instance.api.region.nexthink.cloud See the steps listed below for more details.

If you do not know your region, reach out to your Nexthink representative to obtain this information.

  1. Locate the folder where you unzipped the Nexthink Connector for Omnissa Horizon.

  2. Navigate to the Config folder and open the config.json file using a text editor.

  3. Scroll to the "NexthinkAPI" section and insert the following code:

  1. Change the following values under the "NexthinkAPI" section:

  • Replace the "HostFQDN" value with the URL of your Nexthink cloud API instance using the format <instance>.api.<region>.nexthink.cloud where <instance> and <region> are placeholders.

    • Replace <instance> with the name of the instance

    • Replace <region> with the name of one of the following regions:

      • us for the United States

      • eu for the European Union

      • pac for Asia-Pacific

      • meta for the Middle East, Turkey and Africa

    • If needed, refer to the following URL example: gwy-eu-west-3-fuji-rest.api.eu.nexthink.cloud

  • Replace the “WindowsCredentialEntry" with the TargetName of the credentials you noted down from the PowerShell window earlier, for example: "WindowsCredentialEntry": "nxt-omnissa-credentials",

Setting up a connection to the Omnissa Horizon API

Creating an administrator account

1

Create a Service Account in AD

Horizon relies on Active Directory (AD) integrated authentication. You typically:

  • Create a dedicated user in your AD, such as svc_horizon_api .

  • Give it a strong password and set Password never expires if used in automation.

  • Place it in an appropriate Organization Unit (OU) or security group for tracking and management.

Avoid using domain admin or Horizon administrator accounts for API access if not necessary. Nexthink recommends using Least Privilege.

2

Assign the User in Horizon Console as an Administrator (with Least Privilege)

  1. Log into the Horizon Admin Console.

  2. Go to Settings > Administrators.

  3. Click Add.

  4. Search for the AD user you created, such as svc_horizon_api .

  5. Assign a role:

    • For full access: use Administrator

    • For limited access: use Help Desk Administrator or custom role (you can create one)

Setting up stored credentials

  1. On the server that will be running the Nexthink Connector for Omnissa Horizon, open PowerShell under the credentials of the local user you created earlier using the runas command on the command line:

  1. In the newly opened PowerShell window, add the API credentials you just created in the Nexthink web interface by writing the following command:

Replace the <domain\username> and <password> with the values you noted down when creating a domain user account with a read-only Omnissa administrator.

Make a note of the TargetName you used as you will need this value for the configuration file.

PowerShell window

Updating the configuration file

Each Omnissa Horizon environment has its own section in the configuration file. The configuration file that comes with the connector contains an example of how to configure multiple environments. If needed, create a copy of the original config.json file for future reference.

  1. Locate the folder where you unzipped the connector.

  2. Navigate to the Config folder and open the config.json file using a text editor.

  3. Scroll to the "OmnissaEnvironments" section and remove the second item on the list. The code should look similar to the following:

Change the following values in the "OmnissaEnvironments" section:

  • Replace <environment-name-1> with the name of your environment.

  • Replace <host> with the Omnissa host.

  • Replace <omnissa-user-credentials-1> with the TargetName of the stored credentials you created earlier in PowerShell.

  • Make a note of the identifier as you will need it later.

Testing the connector

  1. On the server that will be running the Nexthink Connector for Omnissa Horizon, open PowerShell under the credentials of the local user you created earlier using the runas command on the command line:

  1. Change to the directory where you installed the connector, for example:

  1. Run the following command:

  1. Then run the following command:

Replace <omnissa-name> with the value you put as a name in the config in the following section:

After executing the command, the PowerShell window closes, and a folder with the name you chose for the connection should appear. In the folder, you will find a log file with the result of the test.

Setting up a scheduled task

Auto updater

  1. Open the task scheduler and select Create task…

Create a task
  1. Name the task and change the user to the service account that you previously created in the General tab. Select Run whether user is logged on or not. Select OK.

Citrix PROD connector properties
  1. Switch to the Triggers tab.

  2. Under Advanced settings, select Repeat tasks every 15 minutes. Select OK.

  1. Switch to the Actions tab and create a new action.

  2. Paste the full path of the Omnissa-Connector-Auto-Updater.ps1 script into the Add arguments (optional) field, including the environment name, for example: -ExecutionPolicy Bypass -File "C:\Program Files\Nexthink\Connectors\Omnissa\Omnissa-Connector-Auto-Updater.ps1" Start in the folder containing the script, for example C:\Program Files\Nexthink\Connectors\Omnissa. Select OK.

Edit action
  1. A window will prompt you to enter the password of the service account. Click OK.

Confirm credentials

Runner

  1. Open the task scheduler and select Create task…

Create a task
  1. Name the task and change the user to the service account that you previously created in the General tab. Select Run whether user is logged on or not. Click OK.

Citrix PROD connector properties
  1. Switch to the Triggers tab.

  2. Under Advanced settings, select Repeat tasks every 15 minutes. Click OK.

  1. Switch to the Actions tab and create a new action.

  2. Paste the full path of the Omnissa-Connector-Runner.ps1 script into the Add arguments (optional) field, for example -ExecutionPolicy Bypass -File "C:\Program Files\Nexthink\Connectors\Omnissa\Omnissa-Connector-Runner.ps1" -OmnissaEnvironment "omnissa-name". Start in the folder containing the script, for example C:\Program Files\Nexthink\Connectors\Omnissa. Click OK.

Edit action
  1. A window will prompt you to enter the password of the service account. Click OK.

Confirm credentials

RELATED TOPIC

Last updated

Was this helpful?