-
Notifications
You must be signed in to change notification settings - Fork 429
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enforce latest OS when macOS, iOS, and iPadOS hosts automatically enroll #19674
Comments
Thanks @nonpunctual. Really helpful link to Filewave docs. We'll weight this at the next feature fest on 2024-06-20. |
Apple guide for "Managing software updates for IT" updated June 2024 per WWDC |
This would be really nice to replace some problematic lagacy policies we have to do this now. |
@lashomb added customer label to this issue. Thanks! |
@nonpunctual I converted the original issue description to user story format. Moving original here. Apple has added a feature for denying enrollment if a device is not on a specified, minimum OS version. Property from the schema documented at https://developer.apple.com/documentation/devicemanagement/machineinfo - Property:
In order for users to take advantage of this feature Fleet must be enabled to:
ProblemFleet is not currently enabled to deny MDM enrollment based on a specified minimum OS version. Potential solutions
Documentation for this feature in Filewave https://kb.filewave.com/books/apple-school-business-manager/page/minimum-os-version-for-enrolling-apple-devices-via-ade |
Hey @nonpunctual I pulled the Please check before adding requests to feature fest. Thanks! |
@roperzh when you get some time can you review this and make sure we have a good understanding of all of the steps needed to both identify and deliver this specific case? When that's done go ahead and pull this over to specified. |
edit: I was wrong, seems like it's ADE only, sorry! @marko-lisica or @nonpunctual (not sure who added this section) |
Hey team! Please add your planning poker estimate with Zenhub @dantecatalfamo @ghernandez345 @gillespi314 @jahzielv @mna @roperzh |
Hey @gillespi314, when you get the chance, does the OS update happen before Fleet sends any MDM commands? (
|
Yes, it is enforced by Apple before the device is allowed to download the enrollment profile. |
Hey @gillespi314 we just learned this from
This means that our current approach (always updating to latest no matter what) would make folks nervous (at the least) or create a poor onboarding experience (at the worst). I met with @georgekarrv and we think it makes sense to make the following change this sprint:
I updated the issue description (specs) to reflect that^ If you have questions or concerns please feel free to schedule some time w/ me! Thanks :) |
This would probably be the safest, I like that approach as well. |
QA Notes:
Tests:
This is the screen the user is presented with prior to enrollment Additional note: |
Thanks @PezHub!
Is this the same for iOS and iPadOS? Assuming yes, @georgekarrv I think we want to call out this difference in behavior in the UI so that the IT admin knows. I think this can be a quick tooltip update as designed in Figma here: https://www.figma.com/design/8anmUdAjxircEGfraBTiBu/%2319674-Enforce-latest-OS-when-macOS%2C-iOS%2C-and-iPadOS-hosts-automatically-enroll?node-id=0-1&t=9iYPY3Ej8krZCVGP-1 Do you think we can squeeze that copy update in before we ship the release? I added the above Figma wireframes to the Product section in the GitHub issue. |
From what I have seen my ios devices could only update to the latest. I may have missed this case specifically though |
Hey @georgekarrv, I forgot to follow up on this so we didn't get the testing/tooltip copy in before shipping this story. I filed a bug here for testing and tooltip copy update: #21976 I think let's address that bug as soon as we can (top priority below priority tickets) so we can close this story out. |
Hey @georgekarrv just giving you an extra ping! re this comment. |
Hey @zayhanlon and @dherder heads up that this customer/prospect request was shipped! We're leaving it open until we ship a copy change (bug) but the core functionality is ready to use. |
Pulling this out of Slack: Sarah: For OS updates post-enrollment, we’re trying to understand how to describe how DDM OS updates work. Can we accurately say that “If an already enrolled host is below the minimum version [specified in Fleet], the host is updated to exactly the minimum version [specified in Fleet].” Roberto: this document (shared a couple of times in this channel) is great. I think it answers all our questions managing-software-updates-v1-0 (2).pdf Sarah: Yep, I referenced this too. I think our current task is to confirm this documentation can be trusted and sus out edge cases as best we can. Then try to describe it all to our end users in a way that makes sense with our current UX where we offer users a free text field (where we assumed that old versions aren’t being removed) while Apple has designed this with ever-changing additions and deletions. For MDM providers like us, we need to provide UX for two paths: George: I think instead of the perfect UX or the perfect tooltip we need to just figure out how to explain this behavior for this ticket and open a feature request to improve it to get this closed in this release.
George: The problem is it is wrong because we cannot got to exactly the minimum version when it's not on gdmf anymore Noah: Got it! Then, I think let’s go w/ a simpler version of George’s copy. This link doesn’t tell me the versions available.
|
Waiting on this bug fix before we close this story: #21976 (comment) |
@noahtalerman this is now done and was merged in with this PR #22337 |
@ghernandez345 thanks! Do you think we should re-open the bug and bring it back onto the release board? So it gets QA'd. cc @georgekarrv |
UPDATE: Closing this user story. I checked to make sure that the redirect in the UI works: https://fleetdm.com/learn-more-about/available-os-update-versions |
In cloud city's glow, |
Goal
Context
Research
During MDM enrollment, the device will respond with
MachineInfo
to the server when fetching the enrollment profile. The server needs to check if the device is on specified minimum OS version, if not server sends 403 errorMore info here (Create a New Device Management Connection > step 3)
Changes
Product
Public AssetSets
). If the request to Apple fails, Fleet will try again up to 3 times. If all attempts fail, Fleet will let the end user through Setup Assistant w/o an OS update.Engineering
QA
Risk assessment
Manual testing steps
Testing notes
Confirmation
The text was updated successfully, but these errors were encountered: