Real-time evaluation is a feature of the CSE desktop app that re-checks a Trust Factor as soon as the device setting behind it changes. The app subscribes to an operating system notification for that setting. When the setting changes, the app evaluates the factor and reports the result to the Command Center only if the value changed.
Earlier versions of the app checked every factor on a 5-minute timer. A user who turned BitLocker back on waited up to 5 minutes for the device Trust Level to catch up. Most factors now update in seconds.
Requirements. Real-time evaluation needs version 4.7.0 or later of the CSE desktop app for Windows or macOS. Devices on earlier versions check every factor on the 5-minute timer. Linux devices check every factor on the 5-minute timer.
The app collects every Windows Trust Factor through a COM interface, a Win32 API, or the registry API. Version 4.7.0 removed PowerShell from collection entirely.
| Trust Factor | Evaluation | What triggers re-evaluation |
|---|---|---|
| Disk Encryption | Real time | A change to either BitLocker registry key |
| Firewall | Real time | A Windows event with ID 2002, 2003, 2082, or 2083 |
| File Check | Real time | A change to a configured file |
| Registry Key Check | Real time | A change to a configured registry key |
| Auto Update | Every 5 minutes | Nothing to subscribe to |
| Application Check | Every 5 minutes | Nothing to subscribe to |
| Trust Integrations | Every 5 minutes | Nothing to subscribe to |
ConversionStatus and ProtectionStatus for the C: drive. The watcher re-evaluates the factor when either HKLM\SYSTEM\CurrentControlSet\Control\BitLocker or HKLM\SYSTEM\CurrentControlSet\Services\BDESVC changes.INetFwPolicy2::get_FirewallEnabled and reads the EnableFirewall value under HKLM\SOFTWARE\Policies\Microsoft\WindowsFirewall, in the subkey for each profile. Each source describes a different state. The COM call reports whether the firewall is enabled locally on the device. The registry value holds the state set by Group Policy. Reading one source alone would miss either a local change or a policy change.ReadDirectoryChangesW subscription watches the directory holding each configured file. The app filters those events down to the file names you configured.RegNotifyChangeKeyValue subscription watches each configured key.IAutomaticUpdatesSettings::get_NotificationLevel. Windows publishes no notification when that level changes, so this factor stays on the timer.CreateToolhelp32Snapshot and walks the result with Process32First and Process32Next.HKLM\SYSTEM\CurrentControlSet\Services\CSAgent\Sim and converts it from binary. The SentinelOne integration is unchanged, because SentinelOne exposes its agent ID only through its own shell command.Version 4.6 and earlier ran a PowerShell command for most factors. Version 4.7.0 replaced each one:
(New-Object -com Microsoft.Update.AutoUpdate).Settings.NotificationLevel became IAutomaticUpdatesSettings::get_NotificationLevel.Get-BitlockerVolume became a Win32 API query.Get-NetFirewallProfile -PolicyStore ActiveStore became the COM call plus the registry read.tasklist /fo csv /nh became CreateToolhelp32Snapshot.reg query against the CrowdStrike Sim key became a registry API read of the same key.macOS collection commands are unchanged in 4.7.0. The app now watches the property list files it was already reading, using FSNotify, and re-evaluates the factor when one of those files changes.
| Trust Factor | Evaluation |
|---|---|
| Auto Update | Real time |
| Firewall | Real time |
| File Check | Real time |
| Property List Check | Real time |
| Disk Encryption | Every 5 minutes |
| Application Check | Every 5 minutes |
| Trust Integrations | Every 5 minutes |
/Library/Preferences/com.apple.SoftwareUpdate.plist and /var/db/ConfigurationProfiles/Settings/.profilesAreInstalled. The second file holds the data behind the /usr/bin/profiles command./Library/Preferences/com.apple.alf.plist on macOS 14 and earlier. com.apple.networkextension.plist on macOS 15 and later.Some factors cannot be watched, so they stay on the 5-minute timer. A change to one of them takes up to 5 minutes to affect the device Trust Level, plus the next sync to the Command Center.
If a device Trust Level does not update after a user changes a setting, check which factor is involved.
Real-time evaluation changes when a factor is evaluated. It does not change what the factor evaluates, or how the Trust Level is calculated.