> For the complete documentation index, see [llms.txt](https://docs.nexthink.com/platform/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.nexthink.com/platform/configuring_nexthink/bringing-data-into-your-nexthink-instance/deploying-nexthink-in-non-vdi-environment/installing-collector/configuring-collector-level-anonymization.md).

# Configuring Collector-level anonymization

{% hint style="info" %}
This page applies to **Collector version 26.5 and later** connecting to **tenants using** [Device configuration profiles](/platform/user-guide/administration/system-configuration/data-management/device-configuration-profiles.md). To understand how anonymization works for Collector versions earlier than 26.5, refer to the [Configuring Collector-level anonymization (classic)](/platform/configuring_nexthink/bringing-data-into-your-nexthink-instance/deploying-nexthink-in-non-vdi-environment/installing-collector/configuring-collector-level-anonymization/configuring-collector-level-anonymization-classic.md) page.
{% endhint %}

Nexthink offers various ways to anonymize data along with granular controls for user privacy. The approaches described in this documentation complement similar features offered by the data storage layer, ensuring that data leaving the Microsoft Windows or macOS devices is anonymized.

## Anonymization options

Starting with Collector version 26.5, the system manages anonymization settings in [Device configuration profiles](/platform/user-guide/administration/system-configuration/data-management/device-configuration-profiles.md). For these settings, the system ignores values originating from classic settings, such as Remote actions, installer parameters, registry settings, and Collector configuration files.

The following table lists each anonymization option and the available settings for them.

<table data-search="false"><thead><tr><th width="128">Data</th><th width="265.666748046875">Description</th><th width="334.666748046875">Privacy options</th><th width="269.333251953125">Default privacy option</th></tr></thead><tbody><tr><td><strong>User name</strong></td><td>User logon name reported from the device.</td><td><ul><li><strong>Enabled</strong>: The system reports the user account name. The <code>user.name</code> is populated and available in Nexthink Query Language (NQL), dashboards, and Remote actions.</li><li><strong>Disabled</strong>: The system does not report the user account name. The <code>user.name</code> is empty. The system tracks users anonymously by security identifier (SID). Directory enrichment by name and name-based targeting are unavailable.</li></ul><p><strong>Note</strong>: The integration with Microsoft Active Directory using the <a href="/pages/IYceqPcwViBt57qXSZ9M">Data Enricher (classic)</a> or Microsoft Entra ID using the <a href="/pages/mfEDl1WXdP5FarQ9L1UC">Connector for Microsoft Entra ID</a> are independent from this Collector configuration. Ensure that the list of AD fields retrieved by the Data Enricher (classic) and Connector for Microsoft Entra ID is properly configured.<br><br><strong>Note</strong>: The <code>hashed</code> option has been removed from Collector version 26.5 onwards and unavailable in the UI settings. If set in an earlier Collector version, the Collector will keep reporting <code>hashed</code> until it is updated to 26.5 or later.</p></td><td>Enabled</td></tr><tr><td><strong>User Principal Name (UPN)</strong></td><td>Standardized user identifier that usually takes the form of an email address. The UPN allows the system to identify a user across systems uniquely. Nexthink also uses the UPN to enrich user objects with data from third-party services.</td><td><ul><li><strong>Enabled</strong>: The system reports the UPN. <code>user.upn</code> is populated and available in NQL. The system uses it for cross-system user identification and connector-based enrichment.</li><li><strong>Disabled</strong>: The system does not collect the UPN. <code>user.upn</code> is empty. Cross-system user identification, connector-based enrichment, Spark, AI Tools, and other UPN-dependent features are unavailable.</li></ul><p><strong>Note</strong>: The <code>hashed</code> option has been removed from Collector version 26.5 onwards and unavailable in the UI settings. If set in an earlier Collector version, the Collector will keep reporting <code>hashed</code> until it is updated to 26.5 or later.</p></td><td>Enabled</td></tr><tr><td><strong>Application focus time</strong></td><td>Reports the application focus duration while the application’s windows were in focus.</td><td><ul><li><strong>Enabled</strong>: The system populates <code>focus_time</code> on execution events and makes it available in NQL, dashboards, and software metering.</li><li><strong>Disabled</strong>: The <code>focus_time</code> is empty. Software metering and AI tool usage tracking are unavailable.</li></ul></td><td>Enabled</td></tr><tr><td><strong>User interaction time</strong></td><td>Controls the reporting of the time the user was interacting with the mouse, touchpad or keyboard.</td><td><ul><li><strong>Enabled</strong>: The system reports active usage intervals. <code>user_interaction_time</code> is populated on session events and available in NQL and dashboards.</li><li><strong>Disabled</strong>: The system does not report active usage intervals. <code>user_interaction_time</code> is empty. User availability metrics and features that depend on engagement signals are unavailable.</li></ul></td><td>Enabled</td></tr><tr><td><strong>Wi-Fi network names</strong></td><td>Manages the reporting of the identification details for both the SSID and the BSSID with Wi-Fi performance metrics.</td><td><ul><li><strong>Enabled</strong>: The system reports SSID and BSSID alongside Wi-Fi performance data.</li><li><strong>Disabled</strong>: The system does not collect SSID and BSSID. The system still reports Wi-Fi performance metrics, but network-specific identification and troubleshooting are unavailable.<br><br><strong>Note:</strong> Only supported on Windows. On Windows 11 version 24H2 and later, enable the <strong>Location services</strong> setting to allow reporting Wi-Fi data.</li></ul></td><td>Enabled</td></tr><tr><td><strong>Network connections</strong></td><td>Manages the reporting of network connection data.</td><td><ul><li><strong>Enabled with domain names</strong>: The system reports connection events, including the DNS domain name of each destination (<code>destination.domain</code>). This enables destination-level identification and filtering in NQL and Device View.</li><li><strong>Enabled</strong>: The system reports connection events without destination domain names. <code>destination.domain</code> is empty.</li><li><strong>Disabled</strong>: The system generates no connection events. Network analytics, application network visibility, and execution-level traffic metrics are unavailable.</li></ul></td><td>Enabled</td></tr><tr><td><strong>Network connections (advanced filtering)</strong></td><td>Reports network connections according to user-defined <code>ALLOW</code> / <code>BLOCK</code> rules.</td><td>Refer to the <a data-mention href="#network-connections-advanced-filtering">#network-connections-advanced-filtering</a> section for more information.</td><td>Collector reports all network connections</td></tr></tbody></table>

## Network connections (advanced filtering)

This option allows you to configure a filter for Collector, forcing it to report connections only to specific destinations.

The filter is a comma-separated list of `ALLOW` and `BLOCK` rules. Each filter rule takes the following form: `ALLOW | BLOCK [PATTERN]`

There are four options for the `[PATTERN]`:

* A domain name with an optional port number, for example: `abc.intra.nexthink.com:443`
* A domain name with a leading `*` wildcard and an optional port number, for example: `*.nexthink.com:443`
* An IP address (IPv4 or IPv6) with optional port number, for example: `192.0.2.123:443`
* A subnet mask, for example: `192.0.2.0/24`

{% hint style="info" %}
Enclose IPv6 addresses in brackets when you combine them with a port number, for example: `ALLOW [fe80::1ff:fe23:4567:890a]:8080`. Brackets are optional for IPv6-based rules without a port number.
{% endhint %}

### Domain name with wildcard <a href="#configuringcollectorlevelanonymization-domainnamewithwildcard" id="configuringcollectorlevelanonymization-domainnamewithwildcard"></a>

In domain name based patterns, use a `*` wildcard to match zero, one, or multiple sub-domains.

For example, `ALLOW *.nexthink.com` matches all these domain names:

* `nexthink.com`
* `intra.nexthink.com`
* `abc.intra.nexthink.com`

The domain name based patterns with a `*` wildcard must start with the `*` wildcard instead of a sub-domain.

Correct example:

* `ALLOW *.nexthink.com`

Incorrect examples:

* `ALLOW intra.*.nexthink.com`
* `ALLOW nexthink.*`
* `ALLOW *nexthink.com`

### Default rules <a href="#configuringcollectorlevelanonymization-defaultrules" id="configuringcollectorlevelanonymization-defaultrules"></a>

There are two default rules:

* System default rule: `BLOCK *` ("block everything else"). The system automatically adds this rule, if there is at least one user-defined rule.
* User-defined default rule: `ALLOW *` ("allow everything else").

The user-defined default rule overwrites the system default rule.

These defaults apply to the following cases:

| Case                                                                  | Default                                                                                                             |
| --------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- |
| The filter is not configured or parameter value is empty.             | The Collector reports all connections.                                                                              |
| The filter is configured and there is at least one user-defined rule. | The Collector reports connections according to the user-defined `ALLOW` / `BLOCK` rules and blocks everything else. |

{% hint style="info" %}
If you define only `BLOCK` rules, the Collector reports no connections.
{% endhint %}

### Filter rule evaluation <a href="#configuringcollectorlevelanonymization-filterruleevaluation" id="configuringcollectorlevelanonymization-filterruleevaluation"></a>

Collector evaluates rules in the order from more specific to less specific:

1. IP address with port number.
2. IP address without port number.
3. Domain name with many sub-domains before domain names with fewer sub-domains.
4. Domain name with port before domain name without port.
5. Domain name without wildcard (`*`) before domain name with a wildcard.
6. Subnet mask.
7. User-defined default rule (`ALLOW *`) before system default rule (`BLOCK *`).

### Considerations <a href="#configuringcollectorlevelanonymization-considerations" id="configuringcollectorlevelanonymization-considerations"></a>

* You can configure up to 1,000 filter rules. The system only evaluates the first 1,000 if there are more filter rules.
* Rules based on domain names do not apply to connections without a domain name.
* In case of a connection with multiple domain names and conflicting matching rules (`ALLOW` / `BLOCK`), the `ALLOW` rule overrules the `BLOCK` pattern.
* Collector does not support IPv4 addresses in IPv6 format. An IPv4 filter rule in IPv6 format does not match connections with the corresponding IPv4 address.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.nexthink.com/platform/configuring_nexthink/bringing-data-into-your-nexthink-instance/deploying-nexthink-in-non-vdi-environment/installing-collector/configuring-collector-level-anonymization.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
