- 7 minutes to read

Prerequisites for the Nodinite Dynamics 365 Monitoring Agent

Get started with confidence! This page outlines everything you need to successfully install and run the Nodinite Dynamics 365 Monitoring Agent.

graph LR subgraph "Nodinite Instance" roNI(fal:fa-monitor-waveform Dynamics 365 Monitoring agent) end subgraph "Dynamics 365" roAzureAPI(fal:fa-cloud Microsoft API)---roLA(fal:fa-clouds Your instance) roNI --> | SDK | roAzureAPI end

Architecture overview: The Nodinite agent connects securely to your Dynamics 365 instance via the Microsoft API.

For best performance and security, install the agent close to your Nodinite Core Services. This guide covers a typical local network setup (usually on the Nodinite application server).

Verified Topic
Software Requirements
What Dynamics 365 instance Rights does the Dynamics 365 Monitoring agent require?
What Windows User Rights does the Dynamics 365 Monitoring agent require?
What Firewall settings are required for the Dynamics 365 Monitoring agent?
What SQL user rights does the Dynamics 365 Monitoring agent require?

Software requirements

The Nodinite Dynamics 365 Monitoring Agent is a Windows Service, typically installed on the Nodinite application server.

Product
Windows Server Windows 2025
Windows 2022
Windows 2019
Windows 2016
Windows 2012 R2
Windows 2012
.NET Framework .NET Framework 4.8 or later New 6.0
We recommend .NET Framework 4.8.1 or later

Versions 6.0 and later require .NET Framework 4.8 or later.
Versions 5.4 and up require .NET Framework 4.6.2 or later.
Versions before 5.4 require .NET Framework 4.5.2 or later.

Supported Versions

Cloud technologies evolve quickly, and Microsoft deprecates older APIs and SDKs regularly. Nodinite always supports the APIs and SDKs currently supported by Microsoft. Update Nodinite and the Dynamics 365 Monitoring Agent as needed to stay current.

Subscribe to our Release Notes to stay informed.

What Dynamics 365 instance Rights does the Dynamics 365 Monitoring agent require?

See the list of SDK/API calls.

To use the Audit feature, enable user audits in your Dynamics 365 instance.

What Windows User Rights does the Dynamics 365 Monitoring agent require?

Install the agent as a Windows Service (usually on the Nodinite application server; virtual machines are supported).

What Firewall settings are required for the Dynamics 365 Monitoring agent?

Where you install the Nodinite Dynamics 365 Monitoring Agent in relation to the Nodinite Monitoring Service, your Dynamics 365 instance, and the SQL Server that holds the Monitoring Database determines your firewall configuration. The diagram shows every host involved, with the agent on its own server; each arrow starts at the side that opens the connection.

graph LR subgraph "Nodinite Core Services Server" roMonitoringService(fa:fa-watch-fitness Monitoring Service) end subgraph "Nodinite Agent Server" roNI(fa:fa-monitor-waveform Dynamics 365 Monitoring agent) end subgraph "Target: Dynamics 365" roEntra(fa:fa-key Microsoft Entra ID) roD365(fa:fa-hand-holding-usd Dynamics 365 instance) end subgraph "SQL Server (Nodinite databases)" roDB(fa:fa-database Dynamics 365 Monitoring database) end subgraph "Domain Controller" roDC(fa:fa-building-shield Active Directory) end subgraph "DNS Server" roDNS(fa:fa-signs-post DNS) end roMonitoringService --> |"Agent site port (v7) / 8000 (v6)"| roNI roNI --> |"443"| roEntra roNI --> |"443"| roD365 roNI --> |"1433, 135, 49152-65535"| roDB roNI --> |"88, 389, 636"| roDC roNI --> |"53"| roDNS

Network diagram: the Monitoring Service calls the agent; the agent signs in with Microsoft Entra ID, calls the Dynamics 365 APIs over HTTPS, and stores its data in the Monitoring Database on SQL Server.

Note

When the agent runs on the Core Services Server (the typical installation), you need no firewall rule between the Monitoring Service and the agent.

Between the Monitoring Service and the Dynamics 365 Monitoring agent

The Monitoring Service opens every connection; the agent never calls it. On Windows Server, Nodinite v7 hosts the agent as its own IIS web site, on a port you set per environment in the Nodinite Portal (Servers step).

Direction Source Destination Protocol Port(s) Purpose Notes
Inbound Core Services Server Agent Server TCP (HTTPS/HTTP) Agent site port Poll the agent, send configuration, run Remote Actions v7. No fixed default; use the port set in the Portal. Only when the agent is on a remote server
Inbound Core Services Server Agent Server TCP 8000 Same, for Windows Service agents ⚠️ v6 and earlier only (legacy MSI installer on remote servers)

Between the Dynamics 365 Monitoring agent and Dynamics 365

The agent signs in as a System User and calls the Dynamics 365 APIs through the SDK. All traffic is outbound HTTPS; Dynamics 365 needs no inbound rule. Allow the hostnames for your region, as listed in Power Platform URLs and IP address ranges.

Direction Source Destination Protocol Port(s) Purpose Notes
Outbound Agent Server Target (Microsoft Entra ID, login.microsoftonline.com) TCP (HTTPS) 443 Authenticate the System User Always required
Outbound Agent Server Target (Dynamics 365, *.dynamics.com) TCP (HTTPS) 443 Dynamics 365 SDK API calls Your organization URL, for example contoso.crm.dynamics.com (North America) or contoso.crm4.dynamics.com (EMEA)
Inbound Target (Dynamics 365) Agent Server TCP 443 Response traffic Automatically allowed by stateful firewall inspection

Tip

Dynamics 365 Authentication: The agent uses a System User account to access Dynamics 365 APIs. Ensure the account has required privileges (e.g., prvReadLicense for license information, System User for organization retrieval). See the List of API Calls for details.

Between the Dynamics 365 Monitoring agent and SQL Server

The agent stores monitoring data in the Dynamics 365 Monitoring Database. See the SQL Server Connection Strings guide for connection string formats and security settings.

Direction Source Destination Protocol Port(s) Purpose Notes
Outbound Agent Server SQL Server (Nodinite databases) TCP 1433 SQL Server default instance Named instances use a dynamic or static port instead
Outbound Agent Server SQL Server (Nodinite databases) UDP 1434 SQL Server Browser Only for named instances without a fixed port in the connection string
Outbound Agent Server SQL Server (Nodinite databases) TCP 49152-65535 SQL Server dynamic ports, RPC High ports for named instances and MSDTC; see How to configure RPC dynamic port allocation to work with firewalls
Outbound Agent Server SQL Server (Nodinite databases) TCP/UDP 135 RPC Endpoint Mapper / MSDTC Distributed Transaction Coordinator
Inbound SQL Server (Nodinite databases) Agent Server TCP 1433, 49152-65535, 135 Response traffic Automatically allowed by stateful firewall inspection

Tip

If the agent and SQL Server are on the same machine, you need no firewall rule for SQL traffic (loopback).

Between the Dynamics 365 Monitoring agent and the Domain Controller

Required when the agent's service account uses Windows authentication to SQL Server.

Direction Source Destination Protocol Port(s) Purpose Notes
Outbound Agent Server Domain Controller TCP/UDP 88 Kerberos authentication Required for domain authentication
Outbound Agent Server Domain Controller TCP/UDP 389 LDAP Standard LDAP queries
Outbound Agent Server Domain Controller TCP 636 LDAPS (Secure LDAP) Required for LDAPS authentication or querying certificates from AD

Between the servers and DNS

Direction Source Destination Protocol Port(s) Purpose Notes
Outbound Agent Server DNS Server TCP/UDP 53 Name resolution Resolve the Dynamics 365 and Entra ID hostnames, the SQL Server, the Domain Controller, and the Core Services Server. A local hosts file can replace DNS
Outbound Core Services Server DNS Server TCP/UDP 53 Name resolution Resolve the Agent Server

Important

Stateful Firewalls: Most Windows Firewall implementations are stateful, so response traffic for established outbound connections is allowed automatically. The inbound response rules above are for reference and troubleshooting.


What SQL user rights does the Dynamics 365 Monitoring agent require?

The service account running the Dynamics 365 Monitoring Agent must have the following rights:

Nodinite Dynamics 365 Monitoring database

To improve performance, all operations initiated from the Web Client/Web API use a SQL-based Monitoring Database.

  • db_owner (required to apply DACPAC updates)

List of API Calls

API Call Privilege Purpose
RetrieveOrganizationsRequest System User account Registered users and logon history
RetrieveVersionRequest
RetrieveDeploymentLicenseTypeRequest prvReadLicense
DeviceRegistrationRequest
RetrieveLicenseInfoRequest prvReadLicense
QueryExpression - Audit.EntityLogicalName, Columns: objectid, createdon, operation, action, userid Audit
QueryExpression - Workflow.EntityLogicalName, Columns: createdon, name, description, statecode, category, workflowid, activeworkflowid Workflow
QueryExpression - Solution.EntityLogicalName, Columns: solutionid, uniquename Solution
QueryExpression - SdkMessageProcessingStep.EntityLogicalName, Columns: createdon, name, description, statecode, introducedversion, mode Processing step

Frequently asked questions

Find more solutions and answers to common problems for the Nodinite Dynamics 365 Monitoring Agent in the Troubleshooting user guide.

Next Steps

Install Dynamics 365 Monitoring Agent

Add or manage a Monitoring Agent Configuration
Monitoring
Administration