Launcher icon indicating copy to clipboard operation
Launcher copied to clipboard

Cannot add Microsoft account: XBox user authentication response could not be understood.

Open 0xC0ncord opened this issue 2 years ago • 12 comments

Operating System

Linux

Description of bug

While adding a Microsoft account and after the login process is completed, I am greeted with an error message dialog that says "XBox user authentication response could not be understood." I can log in fine with the official launcher and even the unofficial Bedrock launcher.

My account was working fine previously when I initially migrated from a Mojang account, but I have not played in some time and my session was expired. I started running into this problem while trying to refresh the account, so I ended up removing the account in an attempt to work around the issue but without success.

The relevant snippet of the MultiMC log is as follows:

    6.359 D AuthFlow: "Logging in with Microsoft account."
    6.359 D DeviceFlow::link
    6.359 D DeviceFlow::setLinked: false
    6.830 D DeviceFlow::onDeviceAuthReplyFinished
    6.830 D DeviceFlow::onDeviceAuthReplyFinished: Tokens returned:

    6.831 D "device_code" :  "AAQABAAEAAAD--DLA3VO7QrddgJg7WevrjcuTgpIDgVKGYAZ8_4L5AtkTYJuuiv6BsqYwVDRuAqiJI5RSbEO85uObbv_CZFS5MGejf0EiMcIED9rcD0eaoErbNZppit4lsc0huoXZZjdsXBOAxNQ0qIocyXVxIN-daRHbtd9u67nhjWDYgbY1fO2nlYM9Wuutrt5g774nRHwqh5_Bas_KcI_OqY2JDKn1WVssUXPL1M40As8-juLcJTOMyTjm0uB7X72yshI81BVHuVKDpp-HzatwAZd6Qhm0LuIGmA1Ys4xaQ14ussa8yHA64dk7CYyy7HXMgs5amoUiVXoAAcJvASloSXg3VEa2jkq2EruDgYnSFqUTQq1oN1Vwl5fubGEja_P-RcHLfaRksczbtFbu-0pNeUwzzIHDIAA"
    6.831 D "expires_in" :  "900"
    6.831 D "interval" :  "5"
    6.831 D "message" :  "To sign in, use a web browser to open the page https://www.microsoft.com/link and enter the code FKPEY7WK to authenticate."
    6.831 D "user_code" :  "FKPEY7WK"
    6.831 D "verification_uri" :  "https://www.microsoft.com/link"
    6.831 D DeviceFlow::onDeviceAuthReplyFinished: Device auth request response
    6.831 D DeviceFlow::startPollServer: device_ and user_code expires in 900 seconds
   12.186 D PollServer::onPollTimeout: retrying
   17.186 D PollServer::onPollTimeout: retrying
   22.186 D PollServer::onPollTimeout: retrying
   28.185 D PollServer::onPollTimeout: retrying
   28.512 D DeviceFlow::onVerificationReceived: Emitting closeBrowser()
   28.512 D DeviceFlow::onVerificationReceived: Access token returned for implicit or device flow
   28.512 D DeviceFlow::onVerificationReceived: Token expires in 3600 seconds
   28.512 D DeviceFlow::setLinked: true
   28.512 D AuthFlow: "Logging in as an Xbox user."
   28.512 D First layer of XBox auth ... commencing.
   28.837 D Parsing "UToken" :
   28.837 W User IssueInstant is not a timestamp
   28.837 W Could not parse user authentication response...
   28.837 C Task "MSAInteractive(0x5f28ab0)" failed:  "XBox user authentication response could not be understood."

Steps to reproduce

  1. Start the process to add a new Microsoft account from MultiMC.
  2. Complete the login process in a browser window using the device code given by MultiMC.
  3. Return to MultiMC and wait for it to poll.
  4. Be greeted with the error message.

Suspected cause

No response

This issue is unique

  • [X] I have searched the issue tracker and did not find an issue describing my bug.

0xC0ncord avatar Apr 08 '22 22:04 0xC0ncord

i have this problem too , somebody anwser you?

nykbocks avatar May 10 '22 17:05 nykbocks

i have this problem too , somebody anwser you?

Not yet. I was asked to make this issue to help track it after asking for help in the Discord. I'm still able to reproduce this as well.

0xC0ncord avatar May 10 '22 21:05 0xC0ncord

I encountered a similar error when prompted by MultiMC with the "expired account". In my case, after putting in the code, password and approving the link I got "Failed to get Minecraft access token: Error transferring https://api.minecraftservices.com/launcher/login - server replied: Forbidden". The FIX for me was to disconnect my PIA VPN in order to do the account refresh. Once done, reconnected the VPN and continued without issue.

WitchyWolf avatar Jun 23 '22 14:06 WitchyWolf

Yeah, VPNs if present can cause a host of issues. @0xC0ncord advise if you use any type of VPN or network traffic shaping software and we will see if we can see a common pattern.

TacoGS avatar Jul 01 '22 06:07 TacoGS

[...] advise if you use any type of VPN or network traffic shaping software and we will see if we can see a common pattern.

I do not have any VPN connection set up or traffic shaping enabled on my network. As a test though, I installed MultiMC on another machine I have (same OS and similar setup) but connected it to my mobile hotspot from my phone which is connected to a cellular network (also without a VPN configured) and got the same result.

However, I just did the same test from the same machine, though in a Windows 10 virtual machine and this time login was successful. I will do more investigating. I suspect this may actually be an issue that was already fixed and the version of MultiMC that is available in the Gentoo repository just hasn't been updated yet.

0xC0ncord avatar Jul 01 '22 18:07 0xC0ncord

I suspect this may actually be an issue that was already fixed and the version of MultiMC that is available in the Gentoo repository just hasn't been updated yet.

The problem continues with the 0.6.16-3430 Linux build from https://multimc.org while the Windows version I had success with is 0.6.16-3431 so I think that more or less disproves that theory.

0xC0ncord avatar Jul 01 '22 18:07 0xC0ncord

I encountered a similar error when prompted by MultiMC with the "expired account". In my case, after putting in the code, password and approving the link I got "Failed to get Minecraft access token: Error transferring https://api.minecraftservices.com/launcher/login - server replied: Forbidden". The FIX for me was to disconnect my PIA VPN in order to do the account refresh. Once done, reconnected the VPN and continued without issue.

same problem

Eawei avatar Jul 03 '22 01:07 Eawei

same thing happened to me yesterday, seems like the rate limiting from Microsoft is insane at times, for me it cleared up after a couple of hours

just to be very clear here, we do not have any control over this nor can we fix this in any way (besides maybe some nicer error message), if you are getting forbidden or similar that's Microsoft fault, and if it does not clear up by itself contact their support

phit avatar Jul 03 '22 07:07 phit

just to be very clear here, we do not have any control over this nor can we fix this in any way (besides maybe some nicer error message) [...]

I'm not yet certain that this is really the case as I fail to understand what other variables are in play here that could be preventing me from being able to log in using the Linux client. Is there something else that is specific to my environment that would cause this?

It seems like only the Windows client is working for me, even if I complete the Microsoft authentication in the same web browser on the same Linux machine. Even using the Windows client under Proton on the same machine will complete the login successfully.

0xC0ncord avatar Jul 03 '22 19:07 0xC0ncord

I couldn't tell you what heuristics Microsoft is using for their blocking policy, is it still just saying "XBox user authentication response could not be understood"?

phit avatar Jul 03 '22 19:07 phit

I couldn't tell you what heuristics Microsoft is using for their blocking policy, is it still just saying "XBox user authentication response could not be understood"?

Yes that is the only message that appears when login fails this way.

0xC0ncord avatar Jul 03 '22 19:07 0xC0ncord

@peterix can we maybe log the raw JSON to see if there's any hint in what's wrong with the response?

phit avatar Jul 03 '22 19:07 phit

Same with me! I'm using Windows 7 Ultimate 64-Bit and it also happens to me!

CaptainJokes avatar Dec 23 '22 19:12 CaptainJokes

this seems to have silently fixed itself on Microsoft's end, at least I haven't heard any new reports

phit avatar Feb 15 '23 16:02 phit

Experiencing this problem now, did anyone find a solution?

PythonGoblin avatar Apr 10 '23 08:04 PythonGoblin