-
Notifications
You must be signed in to change notification settings - Fork 843
WEPO: Orbit enrollment and MSIInstallJob #41381
Copy link
Copy link
Open
Labels
#g-power-to-pcPower to the PC working groupPower to the PC working group:releaseReady to write code. Scheduled in a release. See "Making changes" in handbook.Ready to write code. Scheduled in a release. See "Making changes" in handbook.~sub-taskA technical sub-task that is part of a story. (Not QA'd. Not estimated.)A technical sub-task that is part of a story. (Not QA'd. Not estimated.)
Milestone
Metadata
Metadata
Assignees
Labels
#g-power-to-pcPower to the PC working groupPower to the PC working group:releaseReady to write code. Scheduled in a release. See "Making changes" in handbook.Ready to write code. Scheduled in a release. See "Making changes" in handbook.~sub-taskA technical sub-task that is part of a story. (Not QA'd. Not estimated.)A technical sub-task that is part of a story. (Not QA'd. Not estimated.)
Type
Projects
Status
✔️Awaiting QA
Related user story
#40787
Task
Update the existing STSAuthToken claims in server/mdm/microsoft/wstep.go to include a new custom device_id claim which represents the MDM Windows Device ID of the enrolling device
Add code to generate an STS Auth Token(see NewSTSAuthToken for example), signed with our public key, and including device_id and the email/UPN that the Autopilot/Settings App enroll request contained. This should have a 1 hour validity just to account for network slowness on the enroll
Modify server/service/microsoft_mdm.go enqueueInstallFleetdCommand() to pass a generated STS Auth Token as EUA_TOKEN to the orbit installer
Update the orbit enrollment endpoint to accept the new eua_token value being passed from orbit(see #41379) as part of the request if it exists
If a Windows host enrolls and passes an eua_token and it would otherwise have its enrollment fail with the END_USER_AUTH_REQUIRED error:
Condition of satisfaction
EUA token is passed via Windows MDM MsiInstallJob command and if orbit uses it during enrollment, user is not prompted for end user authentication twice since they already authenticated to Azure