"Manage Account" and sign-in confirmation interact badly #4252
Comments
@mhammond had browser logs from when this happened, and was able to confirm that we send a "fxaccounts:login" webchannel message as a result of the login at step (4), which causes the browser to disconnect from sync and re-connect with the new, unverified sessionToken. |
|
There are a lot of things we could do to make this interaction better, in decreasing order of closeness-to-what-the-user-expects:
I wonder whether (3) and/or (4) are simple enough to do as a short-term fix here? |
|
The other part of this that is really bad UX from the user's POV is that Sync was working correctly, but simply clicking manage and verifying your password breaks Sync until the verification flow completes. At a stretch, the user might expect they can't use the "manage" facilities until verification, but not that the process would cause Sync to stop working. |
Also, it's not clear how Mark or the bugzilla reporter got themselves into a situation where the web content didn't have a sessionToken, but AFAWCT they did. |
|
Clearing all history is one way to reproduce this - I'm not sure which of the checkboxes is actually relevant, but selecting them all reproduces the problem. |
Hi, I'm bug 1308038 reporter. Don't know (didn't test yet) but could custom cookie settings possibly affect this? (no third party, allow for session) |
Allow for session might be the root cause, testing to see. |
|
@splewako - do you have Firefox set to clear your history on Firefox close? I'm wondering if it's the first or the second (or other) here: |
No, my settings look like on the first image. |
|
On the other hand, there was some sort of history clearing almost for sure (manual, selective, via addon) since I enabled sync for the first time. |
|
@shane-tomlinson so I understand, is the theory here that "keep until I close Firefox" causes the localStorage state to be discarded when shutting down Firefox, and hence forces you to re-log-in when accessing account settings on the web? |
Yes. |
|
from mtg: Still not sure what is going on here.... not 100%.... possible ideas:
Why do we even have logout? |
Having slept on this a little, there may be something simple we can do here that will help this flow, without getting too "interesting" from a secrets-management standpoint. Strawman:
This would not be a complete fix, but it could be a step in the right direction. I wonder if we can get any metrics on how often this is happening to users in practice... |
Perform a handshake with the browser to use the browser as the canonical source of truth when it comes to signed in accounts. issue #4252 https://bugzilla.mozilla.org/show_bug.cgi?id=1308038
Perform a handshake with the browser to use the browser as the canonical source of truth when it comes to signed in accounts. A new broker, the fx_desktop_v4 broker has been added so that we only attempt the handshake in browsers with support. fixes #4252 https://bugzilla.mozilla.org/show_bug.cgi?id=1308038
Perform a handshake with the browser to use the browser as the canonical source of truth when it comes to signed in accounts. A new broker, the fx_desktop_v4 broker has been added so that we only attempt the handshake in browsers with support. fixes #4252 https://bugzilla.mozilla.org/show_bug.cgi?id=1308038
Perform a handshake with the browser to use the browser as the canonical source of truth when it comes to signed in accounts. A new broker, the fx_desktop_v4 broker has been added so that we only attempt the handshake in browsers with support. fixes #4252 https://bugzilla.mozilla.org/show_bug.cgi?id=1308038
Perform a handshake with the browser to use the browser as the canonical source of truth when it comes to signed in accounts. A new broker, the fx_desktop_v4 broker has been added so that we only attempt the handshake in browsers with support. fixes #4252 https://bugzilla.mozilla.org/show_bug.cgi?id=1308038
|
This should be fixed with #4695 and Firefox 55, closing. |


(Making a stand-alone issue for this, is was reported in https://bugzilla.mozilla.org/show_bug.cgi?id=1308038 and also independently by @mhammond)
STR:
localStorage.clear()Expected result:
After entering my password, I am taken to the Firefox Accounts settings page, while my browser continues syncing away happily.
Actual result:
I get the sign-in confirmation screen. My browser starts using the new sessionToken I just generated by logging in, and finds it can no longer sync because the sessionToken is not verified. When I click through the email to verify the session, I am taken to the "session confirmed" success page rather than the settings page.
Video demonstration: https://rfk.id.au/static/scratch/manage_account.mov
The text was updated successfully, but these errors were encountered: