The Ops Atlas xOps School

Security & Compliance Overlapping synonym Sources verified

EndpointOps

EndpointOps is an informal name for running user devices through their whole life: enrolment, configuration, compliance, encryption, EDR health, access decisions and retirement, where IT management and security meet. The practice is established as endpoint management plus endpoint security.

Key takeaways

  • EndpointOps is not a defined discipline. The label's most visible use is a product module (Zirozen's EndpointOps); the practice behind it is endpoint management (MDM and UEM) plus endpoint security (EDR), and this page teaches it under those names.
  • The unit of work is the managed device across its life: procure, enrol, configure, prove compliance, protect, recover, retire. Configuration sets the state; compliance checks it; a device missing from management, EDR or the identity provider is not under control.
  • Compliance protects nothing until it gates access, and defaults can undo it: Intune treats an enrolled device that no compliance policy targets as compliant unless you change one tenant setting.
  • Encryption is half a control without escrowed, retrievable recovery keys. In July 2024 a faulty EDR update turned key retrieval into a fleet-scale recovery task.
  • The management console is itself a weapon. After the March 2026 Stryker attack, CISA urged least-privilege roles, phishing-resistant MFA and multi-admin approval; an approval step is only as strong as the group of approvers.
  • Personal devices need a different contract: app-level protection, user enrolment or opt-in whole-device enrolment, with written limits on what IT can see and erase.
  • Measure by reconciling management, EDR and identity-provider records, not by one console's compliance percentage.

EndpointOps (endpoint operations) is the work of running user devices (laptops, desktops, phones and tablets) through their whole life: enrolling, configuring and hardening them, proving they are compliant, encrypting them, keeping their endpoint detection and response (EDR) agents healthy, letting only healthy devices reach company data, and retiring them safely. It sits where IT device management meets security: the console that installs an app also decides whether the device may open email. The label is rare; practitioners say endpoint management, unified endpoint management (UEM), mobile device management (MDM) and endpoint security.

In one line: every device that touches company data is known, configured, encrypted, monitored and recoverable, and access depends on it.

For beginners, endpoint and security engineers, architects, and leaders deciding how much to control devices people carry home.

Question Answer
Goal Devices that reach company data are known, compliant, encrypted with a retrievable key, watched by a healthy sensor, and erasable
Users Endpoint and desktop engineers, IT administrators, security engineers, service desk, identity architects
Scope on this page Corporate and personal (“bring your own device”, BYOD) laptops, desktops, phones and tablets from zero-touch enrolment to retirement, including the management plane; Linux desktops and ChromeOS as a boundary
Out of scope Patching → PatchOps; fix priorities → VulnerabilityOps; alert triage → SOC Ops; sign-in → IdentityOps; servers → SysOps; choosing baselines → SecOps; constrained devices → IoTOps
Prerequisites None. SysOps and basic identity concepts help
Key outputs Device standard, compliance and access policies, reconciled inventory, exception register, recovery runbooks
Term status Overlapping synonym for endpoint management plus endpoint security (see What EndpointOps is not)

NIST defines an endpoint as “Any device that is used to access a digital identity on a network, such as laptops, desktops, mobile phones, tablets, servers, Internet of Things devices, and virtual environments”.[1] This page narrows that to the devices people use. Three things go wrong when nobody owns them as a system:

  1. Unknown devices. Control 1 of the Center for Internet Security (CIS) asks organisations to “Actively manage (inventory, track, and correct) all enterprise assets”, partly to support “identifying unauthorized and unmanaged assets to remove or remediate”.[2] A laptop that reads email but was never enrolled is invisible to every control on this page.
  2. Management and security drift apart. One team owns the management console, another owns EDR, and each misses devices the other sees. CISA’s Zero Trust Maturity Model 2.0 describes, at its most mature stage, “a unified approach for device threat protection, policy enforcement, and compliance monitoring”.[3]
  3. Access ignores device state. NIST’s zero trust architecture says: “The enterprise monitors and measures the integrity and security posture of all owned and associated assets. No asset is inherently trusted.”[4]
Without a device discipline With one
“Encrypted” means someone ticked a box Encryption reported per device; recovery key escrowed first
EDR installed once, never checked Sensor health reconciled with the inventory weekly
Any device with a password reaches data Access requires a compliant device or a protected app
Any admin can wipe the fleet Scoped roles and a second approver for destructive actions
  • Not a defined discipline. No standards body or professional community defines “EndpointOps”. Its most visible use is a product: Zirozen’s Trinetri platform has a module named EndpointOps, “a unified endpoint management platform”.[5] A PowerShell toolkit for SentinelOne and CyberArk Endpoint Privilege Manager also names its module EndpointOps.[6] This page is about neither.
  • Not alert triage or incident response. EndpointOps keeps EDR deployed and healthy; alerts belong to SOC Ops, detections to DetectionOps, intrusions to ResponseOps.
  • Not patching. Rings and patch compliance belong to PatchOps, fix priorities to VulnerabilityOps. This page owns whether an out-of-date device may still reach data.
  • Not identity. Accounts, single sign-on and multi-factor authentication (MFA) belong to IdentityOps, elevation to AccessOps; this page supplies the device signal.
  • Not servers, IoT or app releases: SysOps, IoTOps and MobileOps.

Where EndpointOps comes from and where it sits

Link to section “Where EndpointOps comes from and where it sits”

Management. PCs had client management tools and smartphones MDM; enterprise mobility management (EMM) suites added app management,[7] and the combined category became unified endpoint management.[8] Operating systems built management in: Windows ships “A built-in management component” for MDM servers,[9] and Apple’s Automated Device Enrolment (ADE) manages devices “from the moment someone removes a device from its box”.[10] In March 2026 Apple announced that Apple Business, with built-in device management, would replace Apple Business Manager from 14 April 2026; Apple’s deployment guide (September 2026) now refers to Apple Business.[11][10]

Security. In July 2013 Gartner analyst Anton Chuvakin settled on “Endpoint Threat Detection & Response” as the name for tools that detect and investigate suspicious activity on hosts;[12] the shorter “EDR” stuck.

Convergence. Zero trust made device posture an input to access (NIST SP 800-207, 2020).[4] CISA’s maturity model 2.0 (April 2023) points agencies to OMB memorandum M-22-01 on EDR.[3][13] Intune’s endpoint security node gives “security admins a central location”.[14] A faulty EDR update in 2024 and a console attack in 2026 moved attention to recovery and the management plane (Use cases).

Term Meaning Why it matters
Enrolment Registering a device with a management service Unenrolled devices receive no controls
Zero-touch enrolment Vendor or reseller links the serial to your tenant; first boot enrols it No hand imaging[15][10][16]
Configuration profile Settings the service pushes to the device: desired state Configuration sets state; compliance checks it
Compliance policy Rules a device is evaluated against: compliant or noncompliant Feeds access decisions
Conditional Access Identity-provider policy that grants or blocks sign-in on conditions, including compliance Turns device state into access[17]
App protection (MAM) Mobile application management: policies on work apps and their data, not the device The usual BYOD option on phones; not offered on macOS[18]
Work profile / User Enrolment Android and Apple separation of work data on personal devices Limits what IT can see and erase[19][20]
Antivirus versus EDR Antivirus blocks mainly known threats; an EDR sensor records behaviour to catch what prevention missed Healthy antivirus is not a healthy sensor[13][21]
TPM and protectors Trusted Platform Module, the chip that releases the disk key; protectors are unlock methods (TPM-only, TPM plus PIN, recovery password) Decide what recovery needs[22]
LAPS Local Administrator Password Solution: unique, rotated local admin passwords A recovery path[23]

Mental model: four records and one loop. Each device appears in the inventory (what was bought), the management service (desired and reported state), the EDR service (behaviour) and the identity provider (sign-ins). EndpointOps keeps them in agreement and runs one loop: state → compliance → access decision → fix → state. The management plane (consoles, roles and APIs) sits above the loop and is guarded like a domain controller: whoever holds it controls every device.

Figure 1. Where EndpointOps sits among its neighbours
baselinesfix prioritiesBYOD termscompliance signalupdate rolloutEDR alertselevationSecOpsEndpointOps: the manageddeviceVulnerabilityOpsPrivacyOpsIdentityOpsPatchOpsSOC OpsAccessOps
Diagram source (Mermaid)
flowchart TB
  SE["SecOps"]:::neutral -->|baselines| E
  VU["VulnerabilityOps"]:::neutral -->|"fix priorities"| E
  PR["PrivacyOps"]:::neutral -->|"BYOD terms"| E
  E["EndpointOps: the managed device"]:::core
  E -->|"compliance signal"| ID["IdentityOps"]:::neutral
  E -->|"update rollout"| PA["PatchOps"]:::neutral
  E -->|"EDR alerts"| SOC["SOC Ops"]:::neutral
  E -->|elevation| AC["AccessOps"]:::neutral
  classDef core fill:#e8f3f2,stroke:#16756f,color:#122029
  classDef neutral fill:#f1f4f6,stroke:#5b7a87,color:#122029

Text equivalent: SecOps supplies the baselines, VulnerabilityOps the fix priorities and PrivacyOps the BYOD terms that EndpointOps applies. EndpointOps sends the device compliance signal to IdentityOps, whose access policy uses it, and hands update rollout to PatchOps, EDR alerts to SOC Ops and elevation to AccessOps.

Neighbour This page The neighbour
PatchOps Whether an outdated device may still reach data Rings, windows, rollback, patch compliance
VulnerabilityOps Applying the fix as configuration Prioritisation and due dates
SOC Ops, DetectionOps Sensor deployment, health, coverage Alert triage, detection content
IdentityOps The device compliance signal Accounts, SSO, MFA, sign-in policy
AccessOps Hardened admin workstations Elevation, approvals, sessions
SecOps Applying baselines on user devices Choosing baselines, approving exceptions
SysOps, IoTOps Laptops, desktops, phones, tablets Servers; constrained devices
PrivacyOps What the tooling can see and erase Legal basis, notices, retention

Charter (this Atlas’s proposal, not a published standard): the goal in At a glance, with access depending on it.

  1. Enrol before access. A password alone does not earn access; an enrolled device or a protected app does.
  2. Compliance must gate something, with a grace period; a report nobody acts on is decoration.
  3. Escrow before encrypt. No disk is encrypted until the service desk can retrieve its key; macOS 26.4 and later turn FileVault on in Setup Assistant by default (as of October 2026), so the management service must hold setup until the key is escrowed.[24]
  4. Installed is not healthy. Measure check-ins, not installation counts.
  5. Reconcile; do not trust one console.
  6. Audit, then enforce application control, attack-surface rules and new compliance rules.
  7. Guard the management plane: scoped roles, phishing-resistant sign-in, a second approver for destructive actions.
  8. Personal devices get a written contract: what IT can see, erase, and never touch.

Non-goals: triaging alerts, running the patch programme, owning identities, deciding legal grounds for personal data.

Building block Windows Apple (macOS, iOS, iPadOS) Android Typical failure
Zero-touch enrolment Windows Autopilot[15] Automated Device Enrolment via Apple Business[10][11] Zero-touch enrolment[16] Devices bought outside the channel
Personal-device mode Opt-in enrolment as a personal device,[25] or Edge app protection (preview)[26] Account-driven User Enrolment (iOS, iPadOS, macOS 14+)[20][27] Work profile[19] Users refuse full enrolment
Disk encryption BitLocker, key in Entra ID[28] FileVault enforced in Setup Assistant, key escrowed to the management service[24] Platform encryption; verify per model Key never escrowed
Local admin control Windows LAPS;[23] Endpoint Privilege Management (licensed add-on)[29] Standard users; Intune macOS LAPS for Macs set up by ADE after a factory reset[23] Not applicable Everyone is a local admin
Application control App Control for Business, AppLocker[30] Santa (open source) or vendor tools[31] Managed Google Play Enforced without audit
EDR Defender for Endpoint, CrowdStrike Falcon, others[32][21] Same vendors Mobile threat defence apps Silently unhealthy
Baselines Intune security baselines;[33] CIS Benchmarks[34] macOS Security Compliance Project[35] Vendor guidance Untested conflicts

Linux desktops and ChromeOS (as of October 2026). Intune enrols Ubuntu Desktop 24.04 or 26.04 LTS and Red Hat Enterprise Linux 9 or 10 through the Microsoft Intune app and evaluates compliance from settings-catalog rules: allowed distributions, dm-crypt (LUKS) disk encryption, password policy and custom compliance scripts; the compliant-device grant accepts Ubuntu.[36][26] ChromeOS devices are enrolled and managed in the Google Admin console; the Chrome Enterprise connector syncs them into Intune’s inventory and allows deprovision, restart, lost mode and wipe, nothing more.[37] Zero-touch and EDR coverage differ per platform, so the device standard must say which controls apply (Lab 1 expects EDR on Linux and none on ChromeOS).

R = responsible, A = accountable, C = consulted, I = informed.

Activity Endpoint engineering Security engineering Identity team Service desk Privacy or legal
Device standard (what “compliant” means) R A (security settings) C C C (BYOD)
Enrolment profiles and zero-touch R/A I C C I
Compliance and configuration policies R/A C I I I
Access policy using compliance C C R/A I I
EDR deployment and health R A I I I
Recovery keys and LAPS retrieval R/A (escrow, retrieval path) C C R (retrieval) I
Lost device: lock, wipe, evidence R C C R (intake) A (notification decision)
BYOD terms and what IT can see C C I I A
Management-plane roles and approvals R A C I I
Figure 2. The life of a managed device from purchase to disposal
serial linked to tenantfirst boot, user signs inpolicies evaluateda rule fails (drift)fixedgrace endssilent past validity periodfixedreported missinglock, then wipeleaver or refreshreset for reuseend of lifeProcuredRegistered for zero-touchEnrolled and configuredCompliant, in useNoncompliant, in graceBlocked from dataLost or stolenRetired or wipedSanitised and disposed
Diagram source (Mermaid)
stateDiagram-v2
  state "Procured" as Pro
  state "Registered for zero-touch" as Reg
  state "Enrolled and configured" as Enr
  state "Compliant, in use" as Ok
  state "Noncompliant, in grace" as Gr
  state "Blocked from data" as Blk
  state "Lost or stolen" as Lost
  state "Retired or wiped" as Ret
  state "Sanitised and disposed" as Disp
  [*] --> Pro
  Pro --> Reg: serial linked to tenant
  Reg --> Enr: first boot, user signs in
  Enr --> Ok: policies evaluated
  Ok --> Gr: a rule fails (drift)
  Gr --> Ok: fixed
  Gr --> Blk: grace ends
  Ok --> Blk: silent past validity period
  Blk --> Ok: fixed
  Ok --> Lost: reported missing
  Lost --> Ret: lock, then wipe
  Ok --> Ret: leaver or refresh
  Ret --> Reg: reset for reuse
  Ret --> Disp: end of life
  Disp --> [*]

Text equivalent: A procured device is registered for zero-touch enrolment when its serial is linked to the tenant; at first boot the user signs in and it is enrolled, configured and, once evaluated, compliant. A failing rule (drift) makes it noncompliant within a grace period; a fix returns it to compliant, and when grace ends it is blocked until fixed. A device silent past the validity period is blocked directly. Lost devices are locked and wiped; leavers and refreshes are retired, then reset for reuse or sanitised and disposed of.

CISA’s model says the device lifecycle “includes procuring, configuring, tracking, monitoring, updating, using, sanitizing, deprovisioning, and recovering devices”.[3]

  • Day 0: the device standard (Reference implementation), purchase channels that register serials, personal-device modes.
  • Day 1: zero-touch enrolment applies configuration, escrowed encryption, EDR and apps; Autopilot turns the preinstalled Windows into a “business-ready” state instead of reimaging.[15]
  • Day 2: compliance, drift, sensor health, reconciliation, exceptions, lost devices, OS lifecycle (Windows 10 support ended on 14 October 2025[38]).
  • Retire: wipe or retire, delete records carefully (some deletions destroy recovery keys), sanitise media: NIST SP 800-88 Rev. 2 (2025) defines sanitisation as “a process that renders access to target data on the media infeasible for a given level of effort”.[39]
Cadence Activity Output
Daily Enrolment failures, new noncompliant devices, silent sensors Tickets, or “none”
Weekly Three-source reconciliation; stale devices; configuration errors and conflicts Exceptions with owners
Monthly KPI review; one key-retrieval and one remote-lock drill; admin-role and approver-group review KPI trend; drill record
Quarterly Revise the device standard for new OS releases; review BYOD terms and expired exceptions New standard version

Policy changes are production changes. A policy reaches every device in scope within hours, so roll it out in rings (IT, pilot, broad) as PatchOps does, through ITOps change control; agent content updates are governed in SecOps.

Protect the management plane. Microsoft’s March 2026 guidance says privileged roles such as Global Administrator and Intune Administrator “should be limited and not used for daily administrative tasks”, and recommends scope tags, time-bound elevation through Privileged Identity Management (PIM), a second approver for high-impact changes, phishing-resistant sign-in and a compliant device for admin portals, and privileged admin workstations.[40]

Figure 3. Reference architecture: the device, the services that act on it, and the admin plane
policy, check-intelemetryrisk levelrecovery key, LAPScompliance flagsign-intoken or blockalertsAdmins: scoped, time-boundroles; second approverUEM service: policies,inventory, remote actionsZero-touch: Autopilot, AppleBusiness, AndroidDevice: OS, managementclient, EDR sensorEDR service: detections, risklevelDirectory: device objects,keysIdentity provider: accesspolicyCompany apps and dataSIEM and SOC
Diagram source (Mermaid)
flowchart TB
  ADM["Admins: scoped, time-bound roles; second approver"]:::risk --> UEM
  ZT["Zero-touch: Autopilot, Apple Business, Android"]:::neutral --> UEM
  UEM["UEM service: policies, inventory, remote actions"]:::core
  UEM <-->|"policy, check-in"| DEV["Device: OS, management client, EDR sensor"]:::core
  DEV -->|telemetry| EDR["EDR service: detections, risk level"]:::core
  EDR -->|"risk level"| UEM
  DEV -->|"recovery key, LAPS"| DIR["Directory: device objects, keys"]:::neutral
  UEM -->|"compliance flag"| IDP["Identity provider: access policy"]:::core
  DEV -->|"sign-in"| IDP
  IDP -->|"token or block"| APP["Company apps and data"]:::neutral
  EDR -->|alerts| SOC["SIEM and SOC"]:::neutral
  classDef core fill:#e8f3f2,stroke:#16756f,color:#122029
  classDef risk fill:#fbeceb,stroke:#b4332b,color:#122029
  classDef neutral fill:#f1f4f6,stroke:#5b7a87,color:#122029

Text equivalent: Administrators act on the UEM service through scoped, time-bound roles and a second approver; zero-touch services tell it which devices belong to the organisation. The UEM service and the device exchange policy and check-ins. The device sends telemetry to the EDR service, which returns a risk level to the UEM service and sends alerts to the security information and event management (SIEM) system and security operations centre (SOC). The device also escrows its recovery key and local admin password to the directory. The UEM service writes a compliance flag to the identity provider, whose access policy issues a token for company apps and data, or blocks.

Component Responsibility Trust boundary and trade-off
UEM service Desired state, compliance, inventory, wipe Its admins can wipe every device[41]
Management client Applies policy, reports at check-in The console lags the device
EDR sensor and service Telemetry, detection, isolation, risk Deep OS privilege; a bad update can crash the fleet[42]
Directory Device objects, recovery keys, LAPS Keys must be readable when the device is down
Identity provider Access policy using compliance Only as good as the compliance data

Alternatives: per-platform tools, or app-only management, if the Lab 1 reconciliation covers every source.

End-to-end workflow: from device state to access

Link to section “End-to-end workflow: from device state to access”
Figure 4. The compliance-to-access loop, with grace period and lost contact
yesnoyesyesnonoDevice checks in, about every8 hoursMeets every compliance rule?CompliantSign-in: access policy seescompliantAccess grantedGrace period set?In grace: user notified, accesskeptFixed in time?Noncompliant: accessblockedUser or service desk fixesNo check-in within the validityperiod
Diagram source (Mermaid)
flowchart TB
  A["Device checks in, about every 8 hours"]:::core --> B{"Meets every compliance rule?"}:::decision
  B -->|yes| C["Compliant"]:::core
  C --> D["Sign-in: access policy sees compliant"]:::core
  D --> E["Access granted"]:::core
  B -->|no| F{"Grace period set?"}:::decision
  F -->|yes| G["In grace: user notified, access kept"]:::neutral
  G --> H{"Fixed in time?"}:::decision
  H -->|yes| C
  H -->|no| I["Noncompliant: access blocked"]:::risk
  F -->|no| I
  I --> J["User or service desk fixes"]:::neutral
  J --> A
  K["No check-in within the validity period"]:::risk --> I
  classDef core fill:#e8f3f2,stroke:#16756f,color:#122029
  classDef risk fill:#fbeceb,stroke:#b4332b,color:#122029
  classDef decision fill:#fdf3e3,stroke:#c9800f,color:#122029
  classDef neutral fill:#f1f4f6,stroke:#5b7a87,color:#122029

Text equivalent: A device checks in roughly every eight hours. If it passes, it is compliant and gets access at sign-in. If it fails and a grace period is set, the user is notified and keeps access until grace ends unless it is fixed in time; with no grace period it is blocked at once. Blocked devices are fixed and check in again. A device silent past the validity period is blocked too.

Happy path (Intune and Entra, as of October 2026). Devices check in “about every 8 hours”;[43] Windows devices also request re-evaluation when key settings change (firewall, antivirus, BitLocker, Defender status, OS build, real-time protection, Secure Boot), and Intune throttles repeated re-evaluations.[44] Microsoft announced this client-driven evaluation in September 2026.[45] An access policy with “Require device to be marked as compliant” grants or blocks.[17]

Exception path. Every policy’s Mark device noncompliant action is “set to zero (0) days”; changing it creates the grace period, in 0.25-day steps. Other actions notify, lock or list devices for retirement, which still needs an administrator.[46] A device silent beyond the “Compliance status validity period” (30 days by default) is treated as noncompliant.[47]

EDR joins the loop when a Windows compliance rule requires the device “to be at or under the machine risk score” from Defender for Endpoint: an infected device loses access until cleaned.[44]

Practice Trigger Owner Output Verification
Zero-touch enrolment Purchase Endpoint engineering Serial registered First-boot test per model
Encrypt with escrow Enrolment Endpoint engineering Disk encrypted, key escrowed Monthly retrieval drill
EDR health Weekly Security engineering Active sensor, tamper protection Silent more than 7 days = ticket
Remove local admin Rollout Endpoint engineering Standard users, LAPS Local admin group report
BYOD onboarding Request Endpoint with privacy App protection or user enrolment Notice acknowledged
Lost device Report Service desk Lock, wipe, evidence Encryption state recorded

Defender for Endpoint considers a device inactive when it “isn’t sending any signals … for more than seven days”, and misconfigured when communications or sensor data are impaired.[48] Tamper protection “helps protect important security settings from being disabled or changed”.[49]

Playbook: configuration and hardening baselines

Link to section “Playbook: configuration and hardening baselines”

Here the baselines that SecOps chooses become settings on user devices.

  1. Desired state as code. Intune’s settings catalog “lists all the settings you can configure” for Windows, Apple and Android devices.[50] Export policies to version control, review changes like code, and tie each setting to a control ID. In Microsoft Graph these policies are beta APIs (as of October 2026), “subject to more frequent change”.[50]
  2. Layer, with one owner per setting. Vendor baseline, then a benchmark (CIS Benchmarks;[34] mSCP for macOS[35]), then exceptions approved by SecOps. Separate baselines “might include the same settings and use different default values”.[33] Intune shows conflicts between configuration policies and says “Manually resolve these conflicts”; for conflicting custom Apple profiles “Apple randomly applies the settings”.[43] So each setting gets one owning policy.
  3. Find drift. Review the per-policy reports for errors and conflicts weekly;[43] compliance rules catch drift in what gates access; Windows Remediations (paired detection and fix scripts; Windows Enterprise, Education or Virtual Desktop Access licences) repair the rest.[51]
  4. Roll out in rings, as for any policy change (Operating model).
Everyday control Windows (Intune) macOS Watch for
Host firewall Endpoint security firewall policy[14] Firewall policy, same node Baseline firewall defaults “might not merge” local rules with MDM rules[33]
Removable media, peripherals Defender device control; Windows device installation settings[52] Defender device control for Mac Over-broad rules (all USB, all Bluetooth) also block headsets
Browser Edge security baseline[33] Settings catalog (Edge, Safari)[50] A second, unmanaged browser
Wi-Fi and VPN certificates SCEP or PKCS certificate profiles[53] A separate profile per platform Expiring issuing certificates
Screen lock, passcode Settings catalog or baseline Declarative passcode settings[50] Duplicate settings in two policies

Application control and attack-surface reduction (ASR) rules break business software when switched on blind.

  1. Audit. Microsoft recommends audit mode for ASR rules, which does not affect users, starting with a first ring.[54] Prefer App Control for Business: customers able to use it “should do so”, while AppLocker “isn’t getting new feature improvements”.[30] On macOS, Google stopped maintaining Santa in 2025 and points to the North Pole Security fork.[31]
  2. Build rules from audit data by publisher, not path (NIST SP 800-167 covers planning).[55]
  3. Enforce in rings with a named rollback; run exceptions with expiry dates (Templates).

Why it matters: a 2023 CISA, NSA and MS-ISAC advisory described attackers running remote monitoring and management (RMM) tools as portable executables and advised that application controls “should prevent both installation and execution of portable versions of unauthorized RMM software”.[56]

NIST SP 800-124 Rev. 2 (2023) covers mobile devices across “deployment, use and disposal”;[7] SP 1800-22 (2023) is the BYOD practice guide and names the employer’s “degree of access to their personal devices” as a privacy risk;[57] SP 800-111 (2007) and SP 800-167 (2015) are the older basics of storage encryption and allow-listing.[58][55] For hardening, CIS Benchmarks and vendor baselines: Intune’s defaults are “the most restrictive” in almost all scenarios.[34][33] CISA’s zero trust maturity model, CIS Control 1, NIST SP 800-207, SP 800-88 Rev. 2 and the mSCP are cited where used. None is mandatory by itself; contracts, sector rules or regulators make them so.

Product facts as of October 2026.

Category Job Verified examples Selection criteria and risks
UEM / MDM Enrol, configure, compliance, remote actions Microsoft Intune (Android, iOS/iPadOS, Linux, macOS, tvOS, visionOS, Windows);[59] Jamf Pro (Apple);[60] Omnissa Workspace ONE;[61] Fleet (open source);[62] MDM built into Apple Business[11] Platforms, identity integration, API, approvals, exit cost
EDR / XDR (extended detection and response) Detect, isolate, report risk Microsoft Defender for Endpoint;[32] CrowdStrike Falcon[21] OS coverage, update-timing control, tamper protection
Endpoint query Ask devices questions in SQL osquery[63] Query cost, who may run queries
Privilege Remove standing local admin Windows and macOS LAPS;[23] Intune Endpoint Privilege Management (Intune Plan 2, Intune Suite or some Microsoft 365 bundles, as of October 2026)[29] Elevation rules that users understand
Telemetry Detailed host events Sysmon, which logs “system activity to the Windows event log”[64] Volume and cost; pipelines belong to SecDataOps

Lock-in. Policies and enrolment profiles do not move between vendors: keep the device standard tool-neutral and export policies as code.

Automate what is reversible and frequent: enrolment, compliance, notifications, reconciliation, key rotation after use. Keep a second approver on what is destructive: Intune’s Multi Admin Approval (MAA) covers wipe, retire and delete actions, scripts, apps, compliance and configuration policies, role changes and device categories, in the console and for app-authenticated Graph calls; nobody approves their own request.[65]

MAA is only as strong as its approver group. Three documented conditions decide whether it works at all:[65]

  1. The group is a security group: distribution lists, Microsoft 365 groups and mail-enabled security groups “silently fail to resolve approver membership”.
  2. The group is assigned as a member group to an Intune role; otherwise “approver group members are removed from the group periodically”.
  3. Approvers are direct members; nested memberships “may result in unreliable behavior”.

Then protect the membership. Intune Administrators can change the members of security groups, Groups and User Administrators of any ordinary group, and Global Administrators of every group. So use a role-assignable group, whose membership ordinary group permissions cannot change[66] (test that Intune accepts it as a role member group); alert on changes to it and on new Global Administrator assignments; and exclude no applications from device actions, since excluded apps “can modify protected resources without going through the approval workflow”.[65]

MAA does not stop an attacker who already holds Global Administrator. Intune’s daily tenant caps (500 wipes, 1,000 retires, 1,000 deletes as of October 2026; changed only through Microsoft support) are a backstop, not a control: 500 wipes is about 42% of a 1,200-laptop fleet in one day.[67]

AI agents for remediation and change review are in preview in Intune (as of October 2026);[45] treat their output as proposals and evaluate them as AIOps for Security describes.

Reference implementation: a device standard and its Intune expression

Link to section “Reference implementation: a device standard and its Intune expression”

Assumptions: about 1,200 corporate Windows and macOS laptops, Intune and Entra ID, an EDR product. The standard comes first, tool-neutral and versioned like code.

Example status: syntax-checked (YAML parsed), not executed; a template, not a tool’s file format.

# device-standard.yaml: what "compliant" means, before any tool is chosen
standard: corporate-laptops
version: "2026-10"
owner: endpoint-engineering
approvers: [security-engineering, identity-team]
scope:
  ownership: corporate
  platforms: [windows, macos]
controls:
  - id: ENR-01
    rule: Enrolled by zero-touch; user cannot remove management
    evidence: management record showing the enrolment type
  - id: ENC-01
    rule: OS volume encrypted; recovery key escrowed before encryption starts
    evidence: encryption report plus key present in the directory
    grace_hours: 72
  - id: EDR-01
    rule: EDR sensor active, tamper protection on, seen within 7 days
    evidence: weekly three-source reconciliation
  - id: OS-01
    rule: OS release still in vendor security support
    evidence: compliance minimum-version rule
    grace_hours: 336
  - id: ADM-01
    rule: User is a standard user; local admin password managed by LAPS
    evidence: local administrators report and LAPS backup time
  - id: CFG-01
    rule: Approved hardening baseline applied; each setting owned by one policy
    evidence: configuration report with no errors or conflicts
access:
  noncompliant_after_grace: block
  no_policy_assigned: noncompliant
  check_in_validity_days: 30
admin_plane:
  destructive_actions: second approver from a role-assignable group
  approver_group: security group, assigned to an Intune role, direct members only
  standing_global_admins: break-glass accounts only
exceptions:
  max_days: 90
  approver: security-engineering

The Windows part of ENC-01 and OS-01, expressed as a Microsoft Graph windows10CompliancePolicy. Property names are from the v1.0 resource;[68] Graph requires exactly one block scheduled action per policy, with ruleName fixed to PasswordRequired, and gracePeriodHours sets the delay.[68] This page assumes block is the API form of the portal’s Mark device noncompliant; confirm by reading the policy back in the admin centre.

Example status: JSON syntax-checked, not executed (requires an Intune tenant). Replace the placeholder version.

{
  "@odata.type": "#microsoft.graph.windows10CompliancePolicy",
  "displayName": "WIN-LAPTOP-STD-2026-10",
  "description": "Device standard 2026-10: ENC-01, OS-01, Secure Boot",
  "bitLockerEnabled": true,
  "secureBootEnabled": true,
  "codeIntegrityEnabled": true,
  "osMinimumVersion": "REPLACE_WITH_MINIMUM_SUPPORTED_BUILD",
  "scheduledActionsForRule": [
    {
      "ruleName": "PasswordRequired",
      "scheduledActionConfigurations": [
        { "actionType": "block", "gracePeriodHours": 72 }
      ]
    }
  ]
}

The access side, created in report-only mode first. Property values are from the Graph resources;[69] the policy is limited to Windows because report-only policies that require a compliant device “can prompt users on macOS, iOS, and Android devices” to select a certificate.[70]

Example status: JSON syntax-checked, not executed. Replace the two object IDs.

{
  "displayName": "PILOT report-only: Windows requires compliant device",
  "state": "enabledForReportingButNotEnforced",
  "conditions": {
    "clientAppTypes": ["all"],
    "applications": { "includeApplications": ["All"] },
    "users": {
      "includeGroups": ["<pilot-group-object-id>"],
      "excludeUsers": ["<break-glass-account-object-id>"]
    },
    "platforms": { "includePlatforms": ["windows"] }
  },
  "grantControls": { "operator": "OR", "builtInControls": ["compliantDevice"] }
}

Settings that complete the design: no-policy devices marked Not compliant; BitLocker keys stored in Entra ID before encryption, with recovery password rotation;[28] LAPS;[23] Multi Admin Approval with a protected approver group;[65] emergency access accounts excluded from access policies.[17]

Lab 1 (beginner): reconcile three inventories

Link to section “Lab 1 (beginner): reconcile three inventories”

Objective: find devices one system knows and another does not, and compute coverage honestly. Prerequisites: Python 3.8+; 20 minutes; optionally real UEM, EDR and identity-provider exports with a serial column. Cost and risk: none (read-only); real exports hold personal data, so keep them encrypted.

  1. Save the three sample files below as uem.csv, edr.csv and idp.csv, and the script as reconcile.py.
  2. Run python3 reconcile.py --as-of 2026-10-16.
  3. For each exception, write down an owner and a next action.
  4. Replace the samples with real exports (rename columns to match) and run without --as-of.
uem.csv
serial,device_name,owner,platform,compliance,encrypted,last_sync
PF3A1001,LT-ANA,ana@example.com,windows,compliant,true,2026-10-15
PF3A1002,LT-BEN,ben@example.com,windows,compliant,true,2026-10-16
C02X1003,MB-CHO,cho@example.com,macos,compliant,true,2026-10-14
PF3A1004,LT-DEV,dev@example.com,windows,noncompliant,false,2026-10-16
PF3A1005,LT-EVA,eva@example.com,windows,compliant,true,2026-08-30
PF3A1008,LT-HAL,hal@example.com,windows,compliant,true,2026-10-13
PF3A1009,LT-OLD,ivy@example.com,windows,compliant,true,2026-06-18
PF3A1010,LT-JON,jon@example.com,windows,compliant,true,2026-10-16
F2LX1011,PH-KAI,kai@example.com,ios,compliant,true,2026-10-16

edr.csv
serial,hostname,sensor_status,last_seen
PF3A1001,LT-ANA,active,2026-10-16
PF3A1002,LT-BEN,active,2026-10-16
C02X1003,MB-CHO,misconfigured,2026-10-16
PF3A1004,LT-DEV-OLD,inactive,2026-07-02
PF3A1004,LT-DEV,active,2026-10-16
PF3A1005,LT-EVA,active,2026-10-14
PF3A1007,CTR-LAP-07,active,2026-10-15
PF3A1009,LT-OLD,inactive,2026-06-20
 pf3a1010 ,LT-JON,active,2026-10-16

idp.csv
serial,display_name,trust_type,last_sign_in
PF3A1001,LT-ANA,joined,2026-10-09
PF3A1002,LT-BEN,joined,2026-10-02
C02X1003,MB-CHO,registered,2026-10-11
PF3A1004,LT-DEV,joined,2026-10-12
PF3A1005,LT-EVA,joined,2026-10-06
PF3A1006,HOME-PC,registered,2026-10-08
PF3A1008,LT-HAL,joined,2026-10-01
PF3A1009,LT-OLD,joined,2026-06-19
PF3A1010,LT-JON,joined,2026-10-07
F2LX1011,PH-KAI,registered,2026-10-10
,VM-TEMP,registered,2026-10-15

Example status: verified by execution (Python 3.8.10, 2026-10-17) with the sample files above, and with a reordered duplicate, an empty export and timestamped dates.

#!/usr/bin/env python3
"""Reconcile device exports from UEM, EDR and the identity provider (IdP).

Read-only: reads three CSV files and prints coverage KPIs and exceptions.
Thresholds follow the vendor defaults discussed on the EndpointOps page:
UEM check-in older than 30 days, EDR silent for more than 7 days, and
IdP activity within 30 days counted as "in use".
"""
import argparse
import csv
from datetime import date

EDR_EXPECTED = {"windows", "macos", "linux"}  # phones: mobile threat defence instead
WARNINGS = []


def norm(serial):
    return (serial or "").strip().upper()


def day(value):
    return date.fromisoformat(value.strip()[:10])  # accepts dates and timestamps


def load(path, stamp):
    """Return {serial: row}; skip blank serials, keep the newest duplicate."""
    rows = {}
    with open(path, newline="", encoding="utf-8") as fh:
        for r in csv.DictReader(fh):
            s = norm(r["serial"])
            if not s:
                WARNINGS.append(f"{path}: row without serial skipped")
                continue
            if s in rows:
                WARNINGS.append(f"{path}: duplicate {s}, newest row kept")
                if day(r[stamp]) <= day(rows[s][stamp]):
                    continue
            rows[s] = r
    return rows


def main():
    p = argparse.ArgumentParser()
    p.add_argument("--uem", default="uem.csv")
    p.add_argument("--edr", default="edr.csv")
    p.add_argument("--idp", default="idp.csv")
    p.add_argument("--as-of", default=date.today().isoformat())
    a = p.parse_args()
    as_of = date.fromisoformat(a.as_of)
    uem = load(a.uem, "last_sync")
    edr = load(a.edr, "last_seen")
    idp = load(a.idp, "last_sign_in")

    def age(row, col):
        return (as_of - day(row[col])).days

    fresh_uem = {s for s, r in uem.items() if age(r, "last_sync") <= 30}
    live_edr = {s for s, r in edr.items() if age(r, "last_seen") <= 7}
    used_idp = {s for s, r in idp.items() if age(r, "last_sign_in") <= 30}
    active = fresh_uem | live_edr | used_idp
    retired = sorted((set(uem) | set(edr) | set(idp)) - active)

    def platform(s):
        return uem[s]["platform"] if s in uem else "unknown"

    healthy_edr = {s for s in live_edr if edr[s]["sensor_status"] == "active"}
    needs_edr = {s for s in active if platform(s) in EDR_EXPECTED or s not in uem}
    managed = active & fresh_uem
    compliant = {s for s in managed if uem[s]["compliance"] == "compliant"}
    encrypted = {s for s in managed if uem[s]["encrypted"] == "true"}
    edr_ok = {s for s in active if s not in needs_edr or s in healthy_edr}
    assured = compliant & encrypted & edr_ok

    def pct(part, whole):
        if not whole:
            return "0/0 (empty set: check the export)"
        return f"{len(part)}/{len(whole)} = {100 * len(part) / len(whole):.0f}%"

    print(f"As of {as_of}: {len(active)} active devices, "
          f"{len(retired)} cleanup candidates")
    print("Management coverage (UEM check-in <= 30 d):", pct(managed, active))
    print("EDR coverage (healthy sensor, where required):",
          pct(needs_edr & healthy_edr, needs_edr))
    print("Encryption (of managed):", pct(encrypted, managed))
    print("Fully assured (managed, compliant, encrypted, EDR ok):",
          pct(assured, active))
    print("\nExceptions:")
    for s in sorted(used_idp - set(uem)):
        print(f"  {s} signing in but not managed "
              f"({idp[s]['display_name']}, {idp[s]['trust_type']})")
    for s in sorted(live_edr - set(uem)):
        print(f"  {s} EDR only, no UEM record ({edr[s]['hostname']})")
    for s in sorted(active & set(uem) - fresh_uem):
        print(f"  {s} UEM check-in stale: {age(uem[s], 'last_sync')} days")
    for s in sorted((needs_edr & managed) - healthy_edr):
        state = edr[s]["sensor_status"] if s in edr else "no sensor"
        print(f"  {s} EDR not healthy: {state}")
    for s in sorted(managed - compliant):
        print(f"  {s} noncompliant (encrypted={uem[s]['encrypted']})")
    for s in retired:
        print(f"  {s} no activity anywhere for 30+ days: review, then retire")
    if WARNINGS:
        print("\nData warnings:")
        for w in WARNINGS:
            print(f"  {w}")


if __name__ == "__main__":
    main()

Expected output (exactly as produced on 2026-10-17):

As of 2026-10-16: 10 active devices, 1 cleanup candidates
Management coverage (UEM check-in <= 30 d): 7/10 = 70%
EDR coverage (healthy sensor, where required): 6/9 = 67%
Encryption (of managed): 6/7 = 86%
Fully assured (managed, compliant, encrypted, EDR ok): 4/10 = 40%

Exceptions:
  PF3A1006 signing in but not managed (HOME-PC, registered)
  PF3A1007 EDR only, no UEM record (CTR-LAP-07)
  PF3A1005 UEM check-in stale: 47 days
  C02X1003 EDR not healthy: misconfigured
  PF3A1008 EDR not healthy: no sensor
  PF3A1004 noncompliant (encrypted=false)
  PF3A1009 no activity anywhere for 30+ days: review, then retire

Data warnings:
  edr.csv: duplicate PF3A1004, newest row kept
  idp.csv: row without serial skipped

Validation. By hand: ten serials are active somewhere, and only four (1001, 1002, 1010 and phone 1011) pass every test, while the console alone shows 8 of 9 compliant. Troubleshooting: KeyError means a column name differs. Re-enrolled devices appear twice; the script keeps the newest record and warns. If nothing matches, one tool exports hostnames: join on the directory device ID (Intune’s azureADDeviceId[71]); VMs and replaced boards can change serials. Teardown: delete real exports.

Lab 2 (intermediate): what the device says versus what the console says

Link to section “Lab 2 (intermediate): what the device says versus what the console says”

Objective: measure how far the console lags the device. Prerequisites: an enrolled test Windows device, local admin rights, optionally osquery;[63] 45 minutes. Cost and risk: read-only, except the reboot in step 4.

Example status: not executed (no test device in this environment); cmdlets and tables checked against vendor documentation and osquery’s table specifications.[72][73]

# Elevated PowerShell on a TEST device. Read-only.
manage-bde -status C:
Get-BitLockerVolume -MountPoint C: |
  Select-Object MountPoint, VolumeStatus, ProtectionStatus, KeyProtector
# Defender Antivirus state; EDR sensor health is read in the EDR console
Get-MpComputerStatus |
  Select-Object AMRunningMode, RealTimeProtectionEnabled, AntivirusSignatureAge
dsregcmd /status | Select-String 'AzureAdJoined', 'DomainJoined', 'WorkplaceJoined'
-- osqueryi: the same questions on any platform
SELECT name, version, platform FROM os_version;
SELECT hardware_serial, hardware_model FROM system_info;
-- Windows
SELECT drive_letter, protection_status, percentage_encrypted FROM bitlocker_info;
-- macOS, Linux
SELECT name, encrypted, encryption_status FROM disk_encryption;
-- Windows
SELECT antivirus, firewall, autoupdate FROM windows_security_center;
  1. Run the local checks and record the results with the time.
  2. In the admin centre, record compliance state, encryption state and last check-in.
  3. Sync from the Company Portal app (Settings > Sync)[43] and time the console update.
  4. If encryption finished recently but the device shows noncompliant, reboot: Require BitLocker is measured at boot.[44]

Expected output: local and console values agree after a sync. Validation: you can name each control’s source of truth and its lag. Troubleshooting: if AzureAdJoined and WorkplaceJoined are both NO, the device has no Entra identity and cannot satisfy a compliant-device policy;[26] an empty bitlocker_info usually means osquery is not elevated. Teardown: uninstall osquery if added.

Lab 3 (advanced): compliance to access, in report-only mode

Link to section “Lab 3 (advanced): compliance to access, in report-only mode”

Objective: connect compliance to access without blocking anyone. Prerequisites: a test tenant with Intune and Entra ID P1 (Conditional Access “requires Microsoft Entra ID P1 licenses”[74]); two test Windows devices, one unencrypted; a pilot group; an emergency access account; Microsoft Graph PowerShell; an admin holding Conditional Access Administrator (or Security Administrator) and an Intune role such as Policy and Profile Manager;[75] 2 hours. Cost and risk: trial licences; a wrong access policy can lock admins out, hence report-only, a break-glass exclusion and Windows only.

Example status: not executed (requires an Intune test tenant); endpoints and permissions checked against Microsoft Graph documentation.[75]

# TEST tenant only. Creates one compliance policy and one report-only access policy.
# -ContextScope Process: the token is not cached for later PowerShell sessions.
$scopes = @("DeviceManagementConfiguration.ReadWrite.All",
  "Policy.Read.All", "Policy.ReadWrite.ConditionalAccess")
Connect-MgGraph -ContextScope Process -Scopes $scopes
$g = "https://graph.microsoft.com/v1.0"
$cp = Invoke-MgGraphRequest -Method POST `
  -Uri "$g/deviceManagement/deviceCompliancePolicies" `
  -Body (Get-Content ./win-compliance.json -Raw) -ContentType "application/json"
$ca = Invoke-MgGraphRequest -Method POST `
  -Uri "$g/identity/conditionalAccess/policies" `
  -Body (Get-Content ./ca-report-only.json -Raw) -ContentType "application/json"
"compliance policy: $($cp.id)   access policy: $($ca.id)"   # keep both for teardown
  1. In the test tenant set Mark devices with no compliance policy assigned as to Not compliant.
  2. Save the two JSON documents from the reference implementation as win-compliance.json and ca-report-only.json; fill in the IDs and minimum build, and set gracePeriodHours to 0 for the lab (72 hours would delay the result by three days).[46]
  3. Run the PowerShell block, then assign the compliance policy to the pilot device group in the admin centre.
  4. After both devices check in, sign in from each and open the sign-in log’s Report-only tab.

Expected output: “Report-only: Success” for the encrypted device, “Report-only: Failure” for the other; nobody blocked.[70] Validation: results match compliance states. Troubleshooting: all fail → not yet evaluated (wait, or reboot after encryption); “Not applied” → wrong group or platform; HTTP 403 → missing scopes or roles; an approval-required error → a Multi Admin Approval policy covers compliance policies.[75] Teardown (then revert step 1 if the tenant is shared):

$g = "https://graph.microsoft.com/v1.0"
Invoke-MgGraphRequest -Method DELETE `
  -Uri "$g/identity/conditionalAccess/policies/<access-policy-id>"
Invoke-MgGraphRequest -Method DELETE `
  -Uri "$g/deviceManagement/deviceCompliancePolicies/<policy-id>"
Disconnect-MgGraph

In production, keep report-only for at least a business week, review, then set state to enabled for the pilot before widening.

1. Recovering encrypted laptops after a bad agent update (sourced). On 19 July 2024 a CrowdStrike content update crashed Windows machines; Microsoft estimated it “affected 8.5 million Windows devices”.[76] Microsoft warned “You may be asked to enter your BitLocker recovery key” and told users to “use your phone” to fetch it.[77] Its recovery tool offered Windows Preinstallation Environment (WinPE) media, which may need the key, or safe-mode media, which needs “an account with local administrator rights” and avoids the key only with TPM-only protectors.[22] CrowdStrike reported about 99% of Windows sensors back online by 29 July.[42] Lesson: keys and local admin passwords are recovery tools: escrowed, retrievable from a second device, audited, rotated after use. Success metric: escrowed-key share; minutes to retrieve a key.

2. The management plane as the attack path (sourced; details partly from press reports). On 11 March 2026 an attack caused “a global disruption to Stryker’s Microsoft environment”.[78] CISA’s alert of 18 March, with contributions from Microsoft and Stryker, urged organisations to “harden endpoint management system configurations”: least-privilege roles, phishing-resistant MFA, and a second administrator’s approval for “sensitive or high-impact actions (such as device wiping)”.[41] Stryker’s page does not describe the attack path.[78] BleepingComputer, citing one unnamed source, reports that the attackers used a new Global Administrator account created after an administrator’s account was compromised, and relays the wiping of devices through Intune as the attackers’ own claim;[79] a source familiar with the investigation told The Register that devices were wiped using Intune, and Microsoft declined to comment.[80] Neither Stryker nor Microsoft has confirmed these details. Lesson: wipe is a feature, not malware, so defences belong in roles, sign-in, protected approver groups and bulk-action alerts (Automation and AI). Success metric: every destructive action approved by a second administrator from a protected group.

3. A stolen laptop (illustrative scenario; legal texts sourced). A manager’s laptop is stolen. The privacy team asks: was it encrypted, when did it last report, is the key escrowed? Under the EU’s GDPR, telling affected people is not required where measures “render the personal data unintelligible to any person who is not authorised to access it, such as encryption” and “were applied to the personal data affected” (Article 34(3)(a)), which in practice means the key was not exposed; notifying the supervisory authority within 72 hours (Article 33(1)) is a separate risk test, and every breach is documented (Article 33(5)).[81] US health-care breach rules apply to “unsecured protected health information”, information not rendered “unusable, unreadable, or indecipherable” by methods in federal guidance.[82] The encryption report proves the state at the last check-in, so check-in age matters. The legal call belongs to PrivacyOps; this is not legal advice.

4. Contractors on personal phones (illustrative scenario). Forty contractors need email and chat; they refuse enrolment. App protection “doesn’t require device management” and applies policies “only in a work context”.[83] Where more is needed, Apple’s account-driven User Enrolment cannot query serial numbers or all apps and erases only managed data; no Apple method reads personal mail or messages or queries location outside Managed Lost Mode, which only ADE allows.[27] Trade-off: less device assurance, so access requires a protected app. Success metric: onboarding within a day, no privacy complaints.

KPI Formula Data source Pitfall
Management coverage Devices with a UEM check-in in 30 days ÷ active devices (seen anywhere in 30 days) Reconciliation (Lab 1) Console-only denominators omit unmanaged devices
EDR health coverage Active sensors seen in 7 days ÷ active devices that require EDR EDR, reconciliation “Installed” is not healthy
Escrowed encryption Devices encrypted and with a key escrowed ÷ managed devices Encryption report, directory Unescrowed encryption is a lock-out risk
Honest compliance rate Compliant devices with at least one policy ÷ managed devices UEM Excludes default-compliant devices
Unmanaged access share Sign-ins from devices neither managed nor app-protected ÷ all sign-ins to protected apps Identity-provider logs Needs device identity in logs
Supported-OS share Devices on a release still in security support ÷ active devices UEM plus vendor calendars Paid extended support buys a date, not a fix
Key retrieval time Minutes from request to usable key, monthly drill Service desk Untested paths fail in outages
Approved destructive actions Wipes, retires, deletes with a second approver ÷ all of them UEM audit log Review the break-glass path

Worked calculation. Lab 1’s console showed 8 of 9 compliant (89%); reconciled, only 4 of 10 (40%) were managed, compliant, encrypted and EDR-healthy, so report the 40% and the named exceptions. At fleet scale (illustrative): 1,200 laptops, 1,164 encrypted, 1,131 with an escrowed key, so escrowed encryption is 1,131 ÷ 1,200 = 94.3%, and the 33 unescrowed devices are the ones an outage turns into reimages.

  • Who can read keys. Seven built-in Entra roles can read BitLocker keys (as of October 2026): Cloud Device, Global, Helpdesk, Intune and Security Administrator, and the read-only Global Reader and Security Reader[66] (Intune’s own BitLocker page still lists only three of them; the Entra role reference is authoritative). Users can read keys for their own devices unless a tenant toggle (default: allowed) stops them; every read is audited.[28] Make these roles eligible through PIM, which needs extra licences,[84] rather than standing; alert on bulk reads. LAPS rotation needs a custom Intune role.[23]
  • Personal devices. Microsoft states that an organisation using Intune can never see “Calling and web browsing history” or “Email and text messages”, while model and serial number are visible.[85] Put the equivalent list for your tools in the BYOD notice.
  • Jurisdiction. Notice, consent, works-council and monitoring rules differ by country and sector: agree them with PrivacyOps and ComplianceOps.

Costs are licences (EPM and similar controls are paid add-ons), EDR, hardware refresh, staff, and the service-desk time that strict policies create: measure tickets per 100 devices before and after each new rule.

Worked example: staying on Windows 10 (Microsoft list prices, as of October 2026). Extended Security Updates cost $61 per device for year one, “The price doubles every consecutive year” for at most three years, year one started in November 2025, and joining in year two means paying for year one too.[86] So a device joining in year two costs $61 + $122 = $183, and 300 devices cost $54,900 for one more year of updates. Compare with upgrading or replacing hardware; carbon trade-offs are in GreenOps, cost modelling in FinOps.

Risk indicator Healthy signal Check
Unmanaged devices signing in Zero, or each one has a ticket Weekly reconciliation
Sensors silent for more than 7 days Each has an owner and a date Weekly EDR health report
Exceptions past expiry None Monthly exception review
Standing privileged admins; approver-group changes None outside break-glass accounts; none unexplained Monthly role review
Key retrieval untested One successful drill a month Drill log
Symptom Likely cause Diagnose Fix and prevent
Enrolled devices with no compliance policy pass “require compliant device” The tenant default counts them as compliant Tenant compliance settings Set to Not compliant after a report-only run[47]
Encrypted device still noncompliant Require BitLocker is measured at boot Encryption report versus last reboot Reboot; tell users in the notification[44]
Silent BitLocker never starts A baseline requires a TPM startup PIN, other encryption exists, or the 200-key limit is hit Baselines, inventory Remove conflicts; pilot first[28]
A setting does not apply as expected Two policies set it differently Policy report shows a conflict One owning policy per setting[43]
Recovery key gone after cleanup Deleting an Entra-joined device’s Intune object removes key protectors, suspending BitLocker Audit log Disable first; keep keys[28][87]
Many devices “inactive” in EDR Reimaged or renamed devices get new records EDR list by serial Reconcile by serial or directory ID[48]
Cleanup deleted a laptop in use Activity timestamp updates only about every 14 days Directory audit Under 21 days is not stale; disable before delete; keep Autopilot objects[87]
LAPS password not rotating Device disabled in the directory Device object state Re-enable or retire[23]
Figure 5. Runbook when many devices fail to boot after an update
yesnonoyesyesnoyesnoDevices fail to boot after anupdatePause rings; size the scopeDevice still boots?It pulls the fix; rebootDisk encrypted?Recovery media; apply fixKey escrowed?Key from second device ordesk; then mediaTPM-only and LAPS?Safe mode as local adminReimage, restore data
Diagram source (Mermaid)
flowchart TB
  A["Devices fail to boot after an update"]:::risk --> B["Pause rings; size the scope"]:::core
  B --> D{"Device still boots?"}:::decision
  D -->|yes| E["It pulls the fix; reboot"]:::core
  D -->|no| F{"Disk encrypted?"}:::decision
  F -->|no| G["Recovery media; apply fix"]:::core
  F -->|yes| H{"Key escrowed?"}:::decision
  H -->|yes| I["Key from second device or desk; then media"]:::core
  H -->|no| J{"TPM-only and LAPS?"}:::decision
  J -->|yes| K["Safe mode as local admin"]:::core
  J -->|no| L["Reimage, restore data"]:::risk
  classDef core fill:#e8f3f2,stroke:#16756f,color:#122029
  classDef risk fill:#fbeceb,stroke:#b4332b,color:#122029
  classDef decision fill:#fdf3e3,stroke:#c9800f,color:#122029

Text equivalent: When devices fail to boot after an update, pause the rings and size the scope. Devices that still boot pull the fix and reboot. Unencrypted disks are fixed from recovery media; encrypted disks with an escrowed key are unlocked with the key from a second device or the service desk, then repaired. Without a key, TPM-only devices with a LAPS-managed admin password are fixed in safe mode; the rest are reimaged and their data restored.

  1. Stabilise. Pause the rollout (ReleaseOps); open an incident with IncidentOps roles.
  2. Size it. Devices whose UEM and EDR last-seen times stopped together are the affected set; export it with users and sites.
  3. Unlock at scale. Publish the self-service key path;[77] staff an audited desk queue; use the TPM-only safe-mode path where LAPS manages local admin passwords.[22]
  4. Repair with recovery media; reimage only what remains.
  5. Rotate and verify. Rotate every key that was read (Intune’s BitLocker key rotation action supports Windows 10 1909 and later[28]); confirm sensors report; reconcile.
  6. Prevent: backfill escrow, add a monthly retrieval drill and ring control of agent updates.
  • Encrypt first, escrow later: unrecoverable devices appear exactly when you need them back.
  • Daily work as Global Administrator: one stolen session can wipe the fleet.[40]
  • Deleting stale records to improve the numbers: it removes evidence and sometimes recovery keys.
  • Full enrolment demanded on personal phones: people forward mail to personal accounts instead.
  • Myth: enrolling a phone lets IT read my messages. Not with Intune or Apple’s enrolment methods.[85][27]

Invest in it when devices hold or reach company data, people work remotely, regulators or customers ask for device evidence, or personal devices reach company apps. Do less when work happens only in a browser or virtual desktop with no local data, or the organisation is very small: in this Atlas’s view a five-person firm gets most of the value from built-in encryption, automatic updates and strong sign-in. Hidden responsibilities: key retrieval at scale, the admin plane, BYOD notices, OS end-of-life migrations, reconciliation.

Decision framework: how much to manage a device

Link to section “Decision framework: how much to manage a device”
Figure 6. Choosing a management mode for a device
noyesorganisationperson: Windows PCperson: other deviceyesnoyesnoyesnoTouchescompany data?Guest accessonlyWho owns it?Fully managed,zero-touch;dedicated mode ifsharedAcceptswhole-devicemanagement?Phone or tablet,mail and officeonly?Enrol aspersonal; privacynoticeBrowser or virtualdesktop; Edgeapp protection(preview)App protection,no enrolmentAccepts workseparation?Android workprofile or AppleUser EnrolmentBrowser or virtualdesktop only
Diagram source (Mermaid)
%%{init: {"flowchart": {"wrappingWidth": 120, "nodeSpacing": 16, "rankSpacing": 30, "padding": 8}}}%%
flowchart TB
  Q0{"Touches company data?"}:::decision
  Q0 -->|no| N["Guest access only"]:::neutral
  Q0 -->|yes| Q1{"Who owns it?"}:::decision
  Q1 -->|organisation| R1["Fully managed, zero-touch; dedicated mode if shared"]:::core
  Q1 -->|"person: Windows PC"| Q3{"Accepts whole-device management?"}:::decision
  Q1 -->|"person: other device"| Q4{"Phone or tablet, mail and office only?"}:::decision
  Q3 -->|yes| R2["Enrol as personal; privacy notice"]:::core
  Q3 -->|no| RW["Browser or virtual desktop; Edge app protection (preview)"]:::neutral
  Q4 -->|yes| R4["App protection, no enrolment"]:::core
  Q4 -->|no| Q5{"Accepts work separation?"}:::decision
  Q5 -->|yes| R5["Android work profile or Apple User Enrolment"]:::core
  Q5 -->|no| RX["Browser or virtual desktop only"]:::neutral
  classDef core fill:#e8f3f2,stroke:#16756f,color:#122029
  classDef decision fill:#fdf3e3,stroke:#c9800f,color:#122029
  classDef neutral fill:#f1f4f6,stroke:#5b7a87,color:#122029

Text equivalent: A device that never touches company data gets guest access only. Organisation-owned devices are fully managed through zero-touch enrolment, in dedicated mode if shared or single-purpose. A personal Windows PC has no work-profile mode: if the owner accepts whole-device management it is enrolled as a personal device, with a privacy notice;[25] if not, it gets a browser or virtual desktop, or app protection in Microsoft Edge (a preview as of October 2026).[26] A personal phone or tablet that needs only mail and office apps gets app protection without enrolment. Every other personal device, including every Mac (Intune offers no app protection on macOS[18]), depends on whether the owner accepts work separation: an Android work profile or Apple User Enrolment (macOS 14 and later[27]) if yes, browser or virtual desktop only if not.

Assumption: the identity provider can require either a compliant device or a protected app.

This Atlas’s model, not an industry standard; loosely comparable to the stages of CISA’s devices pillar.[3]

Level Observable behaviour Evidence Next step
0. Unknown Devices set up ad hoc; no single inventory None Enrol corporate devices
1. Enrolled Most devices enrolled; default policies; EDR installed UEM device list Write the device standard
2. Enforced Baseline applied; compliance gates access; escrowed encryption; app protection on personal devices Access-policy reports Reconcile and measure
3. Reconciled Weekly three-source reconciliation; KPIs; expiring exceptions; admin plane hardened KPI trend, role reviews Drill recovery
4. Resilient Monthly key-retrieval drills; rings for policy and agent changes; second approver on destructive actions Drill records Keep pace with OS releases
Window Actions Exit criteria
Days 1–30 Run Lab 1 on real exports; write the device standard; fix tenant defaults in report-only; inventory admin roles Exceptions listed with owners; standard approved
Days 31–60 Escrow keys and backfill missing ones; enforce compliance for the pilot ring; app protection for personal phones; LAPS Pilot enforced; escrowed encryption above 95%
Days 61–90 Enforce broadly; second approver from a protected group for wipes and role changes; first key-retrieval drill Drill passed; first KPI review held

New device ready for a user

  • Enrolled by zero-touch
  • Encrypted; recovery key escrowed (directory or management service)
  • Baseline applied with no configuration errors or conflicts
  • EDR sensor active, tamper protection on
  • User is a standard user; LAPS backup present (Windows, and Macs set up by ADE)
  • Compliant before the user receives it

Before a policy change

  • Report-only or audit run reviewed
  • Rings and rollback written; no setting already owned by another policy
  • Break-glass accounts excluded from access policies
  • Service desk briefed; user message ready

Admin-plane audit (monthly)

  • No standing Global or Intune Administrator outside break-glass
  • Second approver required for wipe, retire, delete, scripts and roles
  • Approver group still a security group assigned to an Intune role; members direct, not nested
  • Approver-group membership unchanged; no app exclusions on device actions
  • Admin portals require phishing-resistant sign-in
  • Bulk wipes and bulk key reads raise alerts

Lost or stolen device

  • Intake form completed (template below)
  • Encryption state and last check-in recorded before any action
  • Lock, then wipe or retire according to ownership
  • Sessions revoked; privacy team informed
LOST OR STOLEN DEVICE INTAKE
Reported by / time (UTC):      <name> / <YYYY-MM-DD hh:mm>
Device / serial / owner type:  <name> / <serial> / corporate | personal
Last check-in (UEM / EDR):     <time> / <time>
Encrypted at last check-in:    yes | no | unknown    Key escrowed: yes | no
Data likely on device:         <categories, e.g. customer, health, none known>
Actions and times:             lock <time>  wipe | retire <time>  sessions revoked <time>
Privacy decision owner:        <name>   Notification needed: <decided by privacy/legal>
DEVICE STANDARD EXCEPTION REQUEST
Control ID and rule:   <e.g. ADM-01 standard user>
Devices / users:       <list or group>
Business reason:       <why the control cannot be met now>
Compensating control:  <e.g. EPM elevation rule, extra monitoring>
Expiry (max 90 days):  <YYYY-MM-DD>     Approver (security): <name>
Review result:         renewed | closed | escalated
Mode IT controls IT cannot do Erase scope Best for
Fully managed Whole device See personal mail or messages[85] Whole device Corporate devices; personal Windows PCs whose owner accepts whole-device management[25]
Work profile or User Enrolment Work apps and data Query serial or all apps (Apple)[27] Work data Personal phones needing more than email
App protection only (iOS, Android; Edge on Windows in preview; not macOS)[18] Protected apps Anything else Work data in apps Contractors, light use
Browser or virtual desktop The session The device Nothing local Unmanaged devices

Is “EndpointOps” a job title or discipline? Neither, formally. The joined label appears as product names;[5][6] the spaced form “endpoint operations” appears in job and team titles for endpoint engineering.[88] No body defines either; search for endpoint management or endpoint security.

Does EDR replace device management? No. EDR detects and isolates; management sets encryption, OS versions and access state. They meet when EDR risk becomes a compliance rule.[44]

Do phones need EDR? Decide per platform from your threat model (platform controls, app protection, mobile threat defence) and write it into the device standard, as Lab 1 does.

Retire or wipe? Retire removes company data and management; wipe “removes all personal and organizational data”.[89] Wipe lost or reissued corporate devices; retire personal ones.

Should servers live in the same console? EDR often covers both; server configuration and patching belong to SysOps and PatchOps.

  • Declarative management. Apple’s declarative device management reports status “without constant polling”,[90] which should make compliance data fresher.
  • The management plane as a security domain. Approvals now cover API calls as well as console actions;[65] automation identities and approver groups are privileged.
  • Governing local AI agents. Intune’s What’s new announced in June 2026 a preview baseline that detects and blocks a local AI agent (OpenClaw) on Windows; the baseline itself is dated May 2026 (as of October 2026).[45][33]
Stage Do this Proof
Prerequisites OS basics; how sign-in works (IdentityOps) Explain a token and a device object
1 day Lab 1; read the compliance and access-policy docs Explain every Lab 1 exception
1 week Lab 2; an Intune or Jamf trial Console lag measured
30 days Lab 3; a device standard, a baseline with no conflicts, a BYOD notice Report-only results reviewed
Advanced Application control, audit then enforce; a key-retrieval drill Drill record and rollback plan

Portfolio idea: a device standard, reconciliation script and runbook for a fictional 500-person firm.

  • Decide: what “compliant” means (device standard); which mode each device class gets; who may wipe.
  • Do: zero-touch enrolment; escrow before encrypt; EDR health; standard users; access gated on compliance or protected apps.
  • Measure: reconciled coverage, escrowed encryption, EDR health, unmanaged access, key retrieval time.
  • Watch out for: tenant defaults; deleting records that hold keys; standing admins and unprotected approver groups; console lag.

A judgement call: should recovery-key self-service require a compliant device?

Link to section “A judgement call: should recovery-key self-service require a compliant device?”

Situation. Security wants BitLocker keys readable only from compliant devices, an option Microsoft documents by treating keys as corporate resources.[28] The service desk objects.

Option For Against
A. Keys only from compliant devices Keys are secrets; a phished password alone cannot read them The device that needs the key is the broken one; the user’s other device is often a personal phone
B. Keys from any device after phishing-resistant MFA, with alerts Works during mass outages; reads are audited A stolen authenticator plus a stolen laptop is more dangerous

Assumptions: phishing-resistant MFA is in place for all users; key reads are audited and alerted on in bulk; keys rotate after use.

Decision for most organisations: B; A only for high-risk groups with a staffed desk path. A looks safer, but in a mass outage Microsoft told users to “use your phone” to fetch the key;[77] under A most of those phones would fail the check and recovery would queue at the desk. Uncertainty: without phishing-resistant MFA, B’s risk rises sharply; fix that first.

After this page you can explain EndpointOps and why the label is informal; design a device standard and access policy; measure coverage by reconciliation; decide management modes and recovery trade-offs.

  1. Your console shows 97% compliant. Name two reasons that number may be misleading.
Show answer for question 1

Enrolled devices with no policy may count as compliant by default,[47] and never-enrolled devices are absent from the denominator. Reconcile with EDR and identity-provider records (Lab 1).

  1. A laptop finished BitLocker encryption an hour ago and still cannot reach email. What happened?
Show answer for question 2

The Windows Require BitLocker rule is measured at boot; the device must restart and check in again.[44]

  1. A cleanup script deletes device objects with no activity for 14 days. What two harms can it cause?
Show answer for question 3

The activity timestamp updates only about every 14 days, so active devices look stale (Microsoft advises not treating under 21 days as stale), and deletion can destroy recovery keys or Autopilot registrations.[87][28]

  1. Why roll out a “require compliant device” policy in report-only mode first, and what side effect should you plan for?
Show answer for question 4

To see who would be blocked without blocking them. Such report-only policies can prompt macOS, iOS and Android users for a certificate, so exclude those platforms or warn users.[70]

  1. An attacker gains an admin session in your UEM. Name three controls that limit what they can do.
Show answer for question 5

Scoped roles; a second approver for wipe, retire, delete, scripts and roles, drawn from a group Intune administrators cannot edit; time-bound elevation with phishing-resistant MFA for admin portals.[41][65] Daily tenant caps only bound the damage, and none of this stops a Global Administrator, so alert on new ones.[67][66]

  1. A contractor refuses to enrol a personal phone but needs email. What do you offer?
Show answer for question 6

App protection without enrolment, required by the access policy instead of a compliant device; only work data in protected apps is managed.[83]

“EndpointOps” is a product name and a convenient page title, not a discipline. The work behind it is old and real: knowing every device that touches your data, making its state visible and true, and letting that state decide access. The recent lessons are about recovery and power: a fleet is only as recoverable as the keys you can still read on the worst day, and a console that can wipe every device deserves the protection of a domain controller. Write the standard, configure to it, reconcile three records, gate access, drill recovery, and put a second pair of hands, from a group an attacker cannot quietly join, on every destructive action.

Claim-by-claim evidence: research/endpointops-ledger.md. Product behaviour and defaults change monthly; re-check vendor pages before relying on a setting or limit.

Changelog. 2026-10-17, r0: first version (research, ledger, draft, six diagrams, Lab 1 executed; Blueprint v2 structure; term status overlapping-synonym, as proposed in the coverage matrix); not yet independently reviewed. 2026-10-17, r1: answered review reviews/endpointops-r1.md (5 major, 18 minor; reviews/endpointops-r1-response.md): configuration playbook; unenrolled-device mechanism; seven key-reading roles; MAA approver group; macOS 26.4 FileVault; plan limits; macOS LAPS; GDPR Article 33(1); Lab 1 robustness; Lab 3 roles; personal Windows PCs in the decision tree; repetition cut; canonical URLs. 2026-10-17, r2: answered reviews/endpointops-r2.md and the 87/100 score (reviews/endpointops-r2-response.md): Stryker attack path attributed source by source; decision tree adds opt-in enrolment of personal Windows PCs and routes personal Macs to User Enrolment; MAA approver-group preconditions; Apple Business dated to its announcement; compliance partners; Linux and ChromeOS boundary; client-driven evaluation marked preview; code blocks wrapped to 90 characters (Lab 1 re-executed); RACI and rounding fixes. 2026-10-17, post-score polish (reviews/endpointops-polish.md): figures 1 and 6 redrawn; warning callout and MAA preconditions as lists; OMB M-22-01 added; NIST SP 800-124 cited; repetition trimmed; client-driven evaluation no longer called a preview.


  1. Endpoint (glossary, from SP 800-63-4) — NIST CSRC. Checked 2026-10-16. ↩︎

  2. CIS Control 1: Inventory and Control of Enterprise Assets — Center for Internet Security, Controls v8.1. Checked 2026-10-16. ↩︎

  3. Zero Trust Maturity Model, Version 2.0 — CISA, April 2023. Checked 2026-10-16. ↩︎ ↩︎ ↩︎ ↩︎

  4. SP 800-207, Zero Trust Architecture — NIST, August 2020. Checked 2026-10-16. ↩︎ ↩︎

  5. Zirozen Endpoint (EndpointOps datasheet) — Trinetri / Zirozen, undated. Checked 2026-10-16. ↩︎ ↩︎

  6. mbart75/endpoint-ops — GitHub repository. Checked 2026-10-16. ↩︎ ↩︎

  7. SP 800-124 Rev. 2, Guidelines for Managing the Security of Mobile Devices in the Enterprise — NIST, May 2023. Checked 2026-10-16 and 2026-10-17. ↩︎ ↩︎

  8. Unified endpoint management — Wikipedia, used only for the common description of the category. Checked 2026-10-16. ↩︎

  9. Mobile Device Management overview — Microsoft Learn. Checked 2026-10-17. ↩︎

  10. Automated Device Enrollment and device management — Apple Platform Deployment. Checked 2026-10-16. ↩︎ ↩︎ ↩︎ ↩︎

  11. Introducing Apple Business — Apple Newsroom, March 2026. Checked 2026-10-17. ↩︎ ↩︎ ↩︎

  12. Named: Endpoint Threat Detection & Response — Anton Chuvakin, Gartner blog, 2013-07-26 (Internet Archive copy; the original now redirects). Checked 2026-10-17. ↩︎

  13. M-22-01, Improving Detection of Cybersecurity Vulnerabilities and Incidents on Federal Government Systems through Endpoint Detection and Response — Office of Management and Budget, 2021-10-08 (White House archive). Checked 2026-10-17. ↩︎ ↩︎

  14. Endpoint security in Microsoft Intune — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎

  15. Overview of Windows Autopilot — Microsoft Learn. Checked 2026-10-16. ↩︎ ↩︎ ↩︎

  16. Zero-touch enrollment for IT admins — Android Enterprise Help, Google. Checked 2026-10-16. ↩︎ ↩︎

  17. Require device compliance with Conditional Access — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎ ↩︎

  18. What is app management in Microsoft Intune? (capability table by platform) — Microsoft Learn, updated 2026-03-19. Checked 2026-10-17. ↩︎ ↩︎ ↩︎

  19. What is an Android Work Profile? — Android Enterprise Help, Google. Checked 2026-10-16. ↩︎ ↩︎

  20. User Enrollment and device management — Apple Platform Deployment. Checked 2026-10-16. ↩︎ ↩︎

  21. What is EDR? — CrowdStrike. Checked 2026-10-17. ↩︎ ↩︎ ↩︎

  22. New Recovery Tool to help with CrowdStrike issue impacting Windows endpoints — Intune Customer Success, Microsoft, July 2024. Checked 2026-10-16. ↩︎ ↩︎ ↩︎

  23. Overview of Windows LAPS with Microsoft Intune and macOS ADE local account configuration with LAPS — Microsoft Learn. Checked 2026-10-16 and 2026-10-17. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  24. Manage FileVault with device management — Apple Platform Deployment. Checked 2026-10-17. ↩︎ ↩︎

  25. Enable MDM automatic enrollment for Windows — Microsoft Learn, updated 2026-03-06. Checked 2026-10-17. ↩︎ ↩︎ ↩︎

  26. Conditional Access: grant controls — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  27. Enrollment methods for Apple devices — Apple Platform Deployment, published 2025-01-28. Checked 2026-10-17. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  28. Encrypt Windows devices with BitLocker using Intune — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  29. Endpoint Privilege Management with Microsoft Intune and Microsoft Intune advanced capabilities — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎

  30. App Control and AppLocker overview — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎

  31. Santa (archived Google repository) and North Pole Security fork — GitHub. Checked 2026-10-17. ↩︎ ↩︎

  32. Microsoft Defender for Endpoint — Microsoft Learn. Checked 2026-10-16. ↩︎ ↩︎

  33. Learn about Intune security baselines for Windows devices — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  34. CIS Benchmarks — Center for Internet Security. Checked 2026-10-17. ↩︎ ↩︎ ↩︎

  35. macOS Security (mSCP) — NIST CSRC. Checked 2026-10-17. ↩︎ ↩︎

  36. Linux device compliance settings in Microsoft Intune — Microsoft Learn, updated 2025-08-15; custom-compliance platforms from Device compliance policies in Microsoft Intune. Checked 2026-10-17. ↩︎

  37. Configure ChromeOS connector for Microsoft Intune and the ChromeOS tab of Device actions — Microsoft Learn. Checked 2026-10-17. ↩︎

  38. Windows 10 support has ended on October 14, 2025 — Microsoft Support. Checked 2026-10-17. ↩︎

  39. SP 800-88 Rev. 2, Guidelines for Media Sanitization — NIST, September 2025. Checked 2026-10-16. ↩︎

  40. Best practices for securing Microsoft Intune — Intune Customer Success, Microsoft, March 2026. Checked 2026-10-16. ↩︎ ↩︎

  41. CISA Urges Endpoint Management System Hardening After Cyberattack Against US Organization — CISA, 2026-03-18. Checked 2026-10-16. ↩︎ ↩︎ ↩︎

  42. External Technical Root Cause Analysis: Channel File 291 — CrowdStrike, 2024-08-06. Checked 2026-10-16. ↩︎ ↩︎

  43. Questions with policies and profiles in Microsoft Intune — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  44. Windows compliance settings in Microsoft Intune — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  45. What’s new in Microsoft Intune — Microsoft Learn, entries for April, June and September 2026. Checked 2026-10-17. ↩︎ ↩︎ ↩︎

  46. Configure compliance policies with actions for noncompliance — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎

  47. Device compliance policies in Microsoft Intune — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎ ↩︎ ↩︎

  48. Fix unhealthy sensors in Microsoft Defender for Endpoint — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎

  49. Tamper protection overview — Microsoft Learn. Checked 2026-10-17. ↩︎

  50. Use the settings catalog — Microsoft Learn; deviceManagementConfigurationPolicy — Microsoft Graph beta. Checked 2026-10-17. ↩︎ ↩︎ ↩︎ ↩︎

  51. Remediations — Microsoft Learn. Checked 2026-10-17. ↩︎

  52. Device control in Microsoft Defender for Endpoint — Microsoft Learn. Checked 2026-10-17. ↩︎

  53. Use certificates for authentication in Microsoft Intune — Microsoft Learn. Checked 2026-10-17. ↩︎

  54. Test your ASR rules deployment — Microsoft Learn. Checked 2026-10-17. ↩︎

  55. SP 800-167, Guide to Application Whitelisting — NIST, October 2015. Checked 2026-10-16. ↩︎ ↩︎

  56. Protecting Against Malicious Use of Remote Monitoring and Management Software (AA23-025A) — CISA, NSA and MS-ISAC, 2023. Checked 2026-10-17. ↩︎

  57. SP 1800-22, Mobile Device Security: Bring Your Own Device — NIST NCCoE, September 2023. Checked 2026-10-16. ↩︎

  58. SP 800-111, Guide to Storage Encryption Technologies for End User Devices — NIST, November 2007. Checked 2026-10-16. ↩︎

  59. What is Microsoft Intune? — Microsoft Learn. Checked 2026-10-17. ↩︎

  60. Jamf Pro — Jamf. Checked 2026-10-17. ↩︎

  61. Omnissa Workspace ONE UEM — Omnissa. Checked 2026-10-17. ↩︎

  62. fleetdm/fleet README — Fleet Device Management, GitHub. Checked 2026-10-17. ↩︎

  63. Welcome to osquery — osquery documentation. Checked 2026-10-17. ↩︎ ↩︎

  64. Sysmon — Microsoft Sysinternals. Checked 2026-10-17. ↩︎

  65. Use Multi Admin Approval in Intune — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  66. Microsoft Entra built-in roles and Use Microsoft Entra groups to manage role assignments — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎ ↩︎

  67. Device actions: daily tenant limits — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎

  68. windows10CompliancePolicy, deviceComplianceScheduledActionForRule and deviceComplianceActionItem resource types — Microsoft Graph v1.0. Checked 2026-10-16. ↩︎ ↩︎

  69. conditionalAccessPolicy and conditionalAccessGrantControls resource types — Microsoft Graph v1.0. Checked 2026-10-16. ↩︎

  70. Conditional Access policy insights: monitoring and evaluation — Microsoft Learn. Checked 2026-10-16. ↩︎ ↩︎ ↩︎

  71. managedDevice resource type — Microsoft Graph v1.0. Checked 2026-10-16. ↩︎

  72. manage-bde status, Get-BitLockerVolume, Get-MpComputerStatus and Troubleshoot devices by using the dsregcmd command — Microsoft Learn. Checked 2026-10-17. ↩︎

  73. osquery table specifications — osquery, GitHub (os_version, system_info, disk_encryption, bitlocker_info, windows_security_center). Checked 2026-10-17. ↩︎

  74. Microsoft Entra Conditional Access — Microsoft Learn. Checked 2026-10-17. ↩︎

  75. Create conditionalAccessPolicy, Delete conditionalAccessPolicy, Delete windows10CompliancePolicy Invoke-MgGraphRequest, Graph PowerShell authentication, Intune built-in roles and Multi Admin Approval with the Graph API — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎ ↩︎

  76. Helping our customers through the CrowdStrike outage — David Weston, Microsoft, 2024-07-20. Checked 2026-10-16. ↩︎

  77. KB5042421: CrowdStrike issue impacting Windows endpoints — Microsoft Support, 2024. Checked 2026-10-17. ↩︎ ↩︎ ↩︎

  78. Customer Updates: Stryker Network Disruption — Stryker, live page with undated updates from March 2026. Checked 2026-10-16. ↩︎ ↩︎

  79. CISA urges US orgs to secure Microsoft Intune systems after Stryker breach — BleepingComputer, 2026-03-19. Checked 2026-10-16. ↩︎

  80. Microsoft Intune: Lock it down, warn feds after Stryker — The Register, 2026-03-19. Checked 2026-10-17. ↩︎

  81. Regulation (EU) 2016/679 (GDPR), Articles 33 and 34 — EUR-Lex. Checked 2026-10-16 (EUR-Lex refused automated access on 2026-10-17; wording re-checked against the gdpr-info.eu reproduction). ↩︎

  82. 45 CFR 164.402, Definitions — eCFR. Checked 2026-10-16. ↩︎

  83. App protection policies overview — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎

  84. What is Privileged Identity Management? — Microsoft Learn. Checked 2026-10-17. ↩︎

  85. What info can your organization see when you enroll your device? — Microsoft Learn. Checked 2026-10-17. ↩︎ ↩︎ ↩︎

  86. Extended Security Updates (ESU) program for Windows 10 — Microsoft Learn. Checked 2026-10-17. ↩︎

  87. How to manage stale devices in Microsoft Entra ID — Microsoft Learn. Checked 2026-10-16. ↩︎ ↩︎ ↩︎

  88. Job postings Endpoint Operations Sr Engineer (IT) (DaVita) and Endpoint Operations Manager (AAA Club Alliance) — Built In; examples only, postings expire. Checked 2026-10-17. ↩︎

  89. Wipe devices with Microsoft Intune — Microsoft Learn, updated 2026-09-16. Checked 2026-10-17. ↩︎

  90. Intro to declarative device management and Apple devices — Apple Platform Deployment. Checked 2026-10-16. ↩︎

Related Ops

PatchOps

PatchOps is an informal name for patch management run as an operation: getting vendor fixes onto every asset through rings, maintenance windows, reboots and rollback, then proving they took effect. The established practice is enterprise patch management.

IdentityOps

IdentityOps is the day-to-day operation of workforce and machine identities: HR-driven joiner–mover–leaver, directories and identity providers, SSO, SCIM provisioning, phishing-resistant MFA and recovery, and the lifecycle of non-human identities.

VulnerabilityOps

VulnerabilityOps (usually "VulnOps") runs vulnerability management as a continuous flow: decide what must be fixed by when from exploitation evidence and asset exposure, hand dated work to owners, verify every fix, and keep remediation capacity ahead of arrivals.

SOC Ops

SOC Ops is running a security operations centre as a dependable service: turning alerts into timely, recorded decisions through tiers, playbooks, SIEM and SOAR, shift handover, metrics and sourcing choices that people can sustain around the clock.

AccessOps

AccessOps is not a standard term. Here it means running the moment of access beyond birthright, above all privileged access: how people request, receive, use and give back access, with no standing admin rights, expiry the system enforces, a tested break-glass path and reviews that can say no.

SecOps

SecOps is an ambiguous label. Here it means the working contract between security and IT operations: agreed hardening baselines, one owned remediation queue with deadlines, governed exceptions and joint metrics. Others use it for SOC work or a Google product.

SysOps

SysOps (systems operations) is the hands-on work of keeping servers healthy: services, users and privileges, logs, scheduled jobs, packages, filesystems, time and performance triage. The label is informal; the established practice is system administration.

IoTOps

IoT device operations: device provisioning and identity, MQTT/CoAP, device shadows/twins, OTA firmware updates, IoT platforms (AWS IoT Core, Azure IoT Hub), telemetry …

In preparation

Practise and get certified

From xOps School

Practise EndpointOps and get certified

The free EndpointOps track on xOps School has study notes, a 25-question practice quiz with explanations, and a verifiable certificate when you score 70% or more. Sign in with Google to start.

For teams

Instructor-led training

Live batches for your team, with completion certificates and reports for L&D/HR.

Source: master.md (the editorial source of this page) · built 2026-10-17 · diagrams rendered with @mermaid-js/mermaid-cli 11.17.0 (mermaid 11.17.2)