fleet
fleet copied to clipboard
Retrieve and aggregate available MDM solutions for MacOS hosts
Goal
For MacOS hosts, add ability to know which host is enrolled in an undesired Mobile Device Management (MDM) solution.
Figma
https://www.figma.com/file/hdALBDsrti77QuDNSzLdkx/%F0%9F%9A%A7-Fleet-EE-(dev-ready%2C-scratchpad)?node-id=7652%3A275866
Related
- #6433 (epic)
- #6732 (backend)
Tasks
- This card is available to all user roles.
- This card is only visible if the "macOS" platform is selected.
1
- [x] Use the newly updated
GET /api/v1/fleet/macadminsendpoint to retrieve aggregate count of MDM solutions by name. - Reference backend ticket for example API specs.
- If a team is selected, continue to pass the
team_idquery param. Example:GET /api/v1/fleet/macadmins?team_id=3
2
- [x] Update homepage Mobile device management (MDM) enrollment card.
- Update title to “Mobile device management (MDM)”
- Add a new
Tabscomponent with two tabs: "Solutions" and "Enrollment". - Example
Tabsimplementation on HostDetailsPage.tsx. - Previous table goes under the "Enrollment" tab.
- Add a “Solutions” table to the Mobile device management (MDM) card.
- Table is sorted by host count ascending by default.
- Enable clickable rows on the "Solutions" table only with a "View all hosts" link that appears on hover. Example implementation on manage software page.
- If the
nameisnull, display the stringUnknown. - Client side pagination appears if there are more than 8 items.
3
- [x] Add empty state to MDM card.
4
- [ ] Update manage hosts table to filter by MDM name.
- Filter contains name and server url. Example:
Kandji https://UUID2.devices.us-1.kandji.io - Filter contains tooltip with name and server url. Example
Hosts enrolled to Kandji at https://UUID2.devices.us-1.kandji.io.If the name isnull... - only the server url is displayed in the card.
- only the server url is included in the tooltip: “Hosts enrolled at
”
5
- [x] Update MDM Enrollment table.
- Update table sort to “Status” desceding by default.
- Add a “View all hosts” button. This button appears when the user hovers over a row. This button navigates the user to the Hosts page with the MDM enrollment status.
- Tooltips appear on hover over “Enrolled (automatic)” and “”Enrollled (manual)”
Enrolled (automatic) tooltip:
Hosts automatically enrolled to an MDM solution the first time the host is used. Administrators might have a higher level of control over these hosts.Enrolled (manual) tooltip:Hosts manually enrolled to an MDM solution by a user or administrator. - Provide MDM id in API GET URL param:
/hosts/manage/?mdm_id=1
6
- [ ] Ensure manage hosts table is filtered by enrollment status.
- If “Enrolled (automatic)”, show tooltip on filter: “Hosts automatically enrolled to an MDM solution the first time the host is used. Administrators might have a higher level of control over these hosts.”
- If “Unenrolled”, show tooltip on filter: “Hosts not enrolled to an MDM solution.”
- Provide status in API GET URL param:
/hosts/manage/?mdm_enrollment_status=manual/hosts/manage/?mdm_enrollment_status=automatic/hosts/manage/?mdm_enrollment_status=unenrolled
@lukeheath : Maybe update the host details page to include solutions
Current:

- TODO: Luke create new issue to backfill dashboard E2E tests.