Change notes
Every release of Entra Profile Migration, newest first. Each version stays downloadable at its own address.
0.1.2
Hardening from a second, independent review of the 0.1.1 fixes.
- Security: rollback and permission copying now refuse to run if the profile folder itself has been replaced by a link, so they can never change permissions outside the profile.
- Reliability:
- A migration rolled back while another run was waiting can no longer be continued by that run.
- Two helper registrations in the same second no longer collide.
- A crash at the wrong moment can no longer leave an admin membership that rollback misses.
- File attributes and folder permissions are now set through the opened file, never by path.
0.1.1
Fixes a bug in 0.1.0 that stopped most real migrations before any change was made. Lab-verified as SYSTEM in a Windows 11 VM.
- Fix: some profile folders (for example the WinGet temp folder) carry Windows "generic" permission entries. 0.1.0 could not copy those to the Entra account, so it stopped safely at the profile-association step (exit 11) with nothing changed. They are now copied correctly.
- Lab results for this build:
- Migrate and resume reached the restart step.
- A junction planted in the user's profile was ignored, and nothing was written outside the profile.
- Rollback restored every key and credential file with its original content and owner.
- Resuming a rolled-back migration is refused.
- Not yet lab-tested: the user's first Entra sign-in with the old-password helper on this build. Earlier builds passed it.
0.1.0
Release candidate for local account to Entra ID migrations, with the fixes from a multi-model code audit. Final lab sign-off is in progress.
- Security: fixed two critical ways a local user could gain SYSTEM rights during credential staging and rollback, by planting folder junctions or hard links in their own profile. Every file the tool writes into, or reads from, a user profile is now opened link-safe, and it never uses backup privileges to write there.
- Rollback and resume:
- A rolled-back migration can no longer be resumed by mistake.
- A migration that stopped before its backup can be abandoned.
- The tool never picks between two open migrations on its own.
- Safety: the profile is only re-pointed once every file and registry hive has been made accessible to the Entra account. If the user signed in after the backup was taken, the tool refuses to continue.
- Scope: domain-joined and hybrid devices and AD source accounts are blocked in this version, so the tool never half-runs on them.
- Old-password helper: each migration registers its own run, so one user's cleanup no longer disables another user's helper.
- Exit codes:
- Bad input exits 40, a busy lock 23, a block 10.
- Every command ends with a
RESULT: <LABEL>line. - Datto's Status component reports waits, failures and rollbacks correctly.
- Datto RMM: the module is loaded only from the fixed package path, after an ownership and permission check.
- Signing: builds and the MSI are signed. The public certificate is published next to the download.