diff --git a/changes/43379-windows-mdm-end-user-experience-labels b/changes/43379-windows-mdm-end-user-experience-labels new file mode 100644 index 0000000000..67db94cc29 --- /dev/null +++ b/changes/43379-windows-mdm-end-user-experience-labels @@ -0,0 +1 @@ +- Updated Windows MDM end user experience radio button labels from Automatic/Manual to Fleet agent-driven/End user-driven to reduce confusion with MDM status terminology. diff --git a/docs/Configuration/yaml-files.md b/docs/Configuration/yaml-files.md index 550d3a4ba0..4e923f9966 100644 --- a/docs/Configuration/yaml-files.md +++ b/docs/Configuration/yaml-files.md @@ -346,7 +346,7 @@ The `controls` section allows you to configure scripts and device management (MD - `windows_enabled_and_configured` specifies whether or not to turn on Windows MDM features (default: `false`). Can only be configured for "All fleets" (`default.yml`). - `windows_entra_tenant_ids` is a list of Microsoft Entra tenant IDs to enable automatic (Autopilot) and manual enrollment by end users (**Settings** > **Accounts** > **Access work or school** on Windows). Can only be configured for "All fleets" (`default.yml`). Find your **Tenant ID**, on [**Microsoft Entra ID** > **Home**](https://entra.microsoft.com/#home). - `windows_entra_client_ids` is a list of Microsoft Entra application (client) IDs for the applications used to enroll Windows hosts via Microsoft Entra. Set this when you set up Entra enrollment: Microsoft Entra issues v2 access tokens whose audience is the application's client ID, so Fleet needs the client ID to authorize enrollment. Can only be configured for "All fleets" (`default.yml`). Find your **Application (client) ID** on [**Microsoft Entra ID** > **App registrations**](https://entra.microsoft.com/#view/Microsoft_AAD_RegisteredApps/ApplicationsListBlade) > your MDM application > **Overview**. -- `enable_turn_on_windows_mdm_manually` specifies whether or not to require end users to manually turn on MDM in **Settings > Access work or school** (default: `false`). If `false`, MDM is automatically turned on for all Windows hosts that aren't connected to any MDM solution. Can only be configured for "All fleets" (`default.yml`). +- `enable_turn_on_windows_mdm_manually` specifies whether or not to require end users to sign in using **Settings > Access work or school** (default: `false`). If `false`, MDM is automatically turned on for all Windows hosts that aren't connected to any MDM solution. Either method results in an MDM status of "On (manual)". To get a status of "On (company-owned)", use [Windows Autopilot](https://fleetdm.com/guides/windows-mdm-setup#windows-autopilot). Can only be configured for "All fleets" (`default.yml`). - `windows_migration_enabled` specifies whether or not to automatically migrate Windows hosts connected to another MDM solution. If `false`, MDM is only turned on after hosts are unenrolled from your old MDM solution. `enable_turn_on_windows_mdm_manually` must be set to `false`. (default: `false`). Can only be configured for "All fleets" (`default.yml`). - `enable_disk_encryption` specifies whether or not to enforce disk encryption on macOS, Windows, and Linux hosts (default: `false`). - `windows_require_bitlocker_pin` specifies whether or not to require end users on Windows hosts to set a BitLocker PIN. When set, this PIN is required to unlock Windows host during startup. `enable_disk_encryption` must be set to `true`. (default: `false`). diff --git a/frontend/components/forms/fields/Radio/_styles.scss b/frontend/components/forms/fields/Radio/_styles.scss index b3c42f3f06..757a7036e0 100644 --- a/frontend/components/forms/fields/Radio/_styles.scss +++ b/frontend/components/forms/fields/Radio/_styles.scss @@ -73,7 +73,6 @@ &__help-text { @include help-text; margin-top: $pad-xxsmall; - margin-left: calc(20px + #{$pad-small}); } &__disabled { diff --git a/frontend/pages/admin/IntegrationsPage/cards/MdmSettings/WindowsMdmPage/WindowsMdmPage.tests.tsx b/frontend/pages/admin/IntegrationsPage/cards/MdmSettings/WindowsMdmPage/WindowsMdmPage.tests.tsx index d2b54f0096..c80467a078 100644 --- a/frontend/pages/admin/IntegrationsPage/cards/MdmSettings/WindowsMdmPage/WindowsMdmPage.tests.tsx +++ b/frontend/pages/admin/IntegrationsPage/cards/MdmSettings/WindowsMdmPage/WindowsMdmPage.tests.tsx @@ -21,15 +21,13 @@ describe("WindowsMdmPage", () => { // switch and description only shown expect(screen.getByRole("switch")).toBeInTheDocument(); - expect( - screen.getByText( - "Turns on MDM for Windows hosts that enroll to Fleet (excluding servers)." - ) - ).toBeInTheDocument(); + expect(screen.getByText(/On \(manual\)/)).toBeInTheDocument(); // no end user experience form - expect(screen.queryByLabelText("Automatic")).not.toBeInTheDocument(); - expect(screen.queryByLabelText("Manual")).not.toBeInTheDocument(); + expect( + screen.queryByLabelText("Fleet agent-driven") + ).not.toBeInTheDocument(); + expect(screen.queryByLabelText("End user-driven")).not.toBeInTheDocument(); }); it("renders the end user experience form as disabled when MDM is off", () => { @@ -46,8 +44,8 @@ describe("WindowsMdmPage", () => { render(); - expect(screen.getByLabelText("Automatic")).toBeDisabled(); - expect(screen.getByLabelText("Manual")).toBeDisabled(); + expect(screen.getByLabelText("Fleet agent-driven")).toBeDisabled(); + expect(screen.getByLabelText("End user-driven")).toBeDisabled(); }); it("renders the automatically migrate checkbox if automatic mdm enrollment is selected", () => { @@ -67,8 +65,8 @@ describe("WindowsMdmPage", () => { render(); - // automatic is selected and the checkbox is visible - expect(screen.getByLabelText("Automatic")).toBeChecked(); + // Fleet agent-driven is selected and the checkbox is visible + expect(screen.getByLabelText("Fleet agent-driven")).toBeChecked(); expect(screen.getByRole("checkbox")).toBeVisible(); }); }); diff --git a/frontend/pages/admin/IntegrationsPage/cards/MdmSettings/WindowsMdmPage/WindowsMdmPage.tsx b/frontend/pages/admin/IntegrationsPage/cards/MdmSettings/WindowsMdmPage/WindowsMdmPage.tsx index a265267f53..60d97abe01 100644 --- a/frontend/pages/admin/IntegrationsPage/cards/MdmSettings/WindowsMdmPage/WindowsMdmPage.tsx +++ b/frontend/pages/admin/IntegrationsPage/cards/MdmSettings/WindowsMdmPage/WindowsMdmPage.tsx @@ -110,10 +110,6 @@ const WindowsMdmPage = ({ router }: IWindowsMdmPageProps) => { updateWindowsMdm(); }; - const descriptionText = mdmOn - ? "Turns on MDM for Windows hosts that enroll to Fleet (excluding servers)." - : "Hosts with MDM already turned on will not have MDM removed."; - return ( <> @@ -126,6 +122,16 @@ const WindowsMdmPage = ({ router }: IWindowsMdmPageProps) => {

Windows MDM

+

+ Hosts that turn on MDM manually will have a status of "On + (manual)". To get a status of "On (company-owned)", + use{" "} + +

{ onChange={onChangeMdmOn} disabled={gitOpsModeEnabled} /> - {!isPremiumTier &&

{descriptionText}

} {isPremiumTier && ( // NOTE: first time using fieldset and legend. if we use this more we should make // a reusable component @@ -147,7 +152,7 @@ const WindowsMdmPage = ({ router }: IWindowsMdmPageProps) => { { /> { PATHS.ADMIN_INTEGRATIONS_AUTOMATIC_ENROLLMENT_WINDOWS } />{" "} - End users have to manually turn on MDM in{" "} + End users have to sign in using{" "} Settings > Access work or school. } diff --git a/frontend/pages/admin/IntegrationsPage/cards/MdmSettings/WindowsMdmPage/__styles.scss b/frontend/pages/admin/IntegrationsPage/cards/MdmSettings/WindowsMdmPage/__styles.scss index 6dfca27f9f..9b9bb0b756 100644 --- a/frontend/pages/admin/IntegrationsPage/cards/MdmSettings/WindowsMdmPage/__styles.scss +++ b/frontend/pages/admin/IntegrationsPage/cards/MdmSettings/WindowsMdmPage/__styles.scss @@ -4,4 +4,9 @@ form { @include vertical-form-layout; } + + .form-field__label { + font-size: $small; + margin-bottom: $pad-small; + } }