Skip to content
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

Soft logout: Validate that the user being logged in is the same that was logged in? (SSO) #10237

Closed
turt2live opened this issue Jul 2, 2019 · 4 comments
Assignees
Labels
A-Soft-Logout https://github.com/element-hq/element-web/issues/10224 P1 T-Enhancement X-Needs-Design X-Won't-Fix

Comments

@turt2live
Copy link
Member

SSO login could result in the logged in user being different from the one that was logged out. Should we prompt to say "hey, you're about to overwrite your session for John Doe with Jane Doe. Are you sure?"

(if yes, what copy should we use?)

@turt2live turt2live added feature P1 X-Needs-Design A-Soft-Logout https://github.com/element-hq/element-web/issues/10224 labels Jul 2, 2019
@turt2live
Copy link
Member Author

ping @nadonomy

@turt2live turt2live mentioned this issue Jul 2, 2019
@nadonomy
Copy link
Contributor

nadonomy commented Jul 3, 2019

Initially I thought this sounded like a great idea, but after chewing the fat on it more I'm not so sure:

  • We had a sync this morning and decided to only expose key related things if the user had keys which weren't backed up (server-side key backup disabled, or enabled but with outstanding key uploads)
  • If it's the same user, then they'd have had to have manually typed in an entirely different set of credentials (username and/or password), so I think it's expected to discard the previous accounts data
  • If it's a different user then I think it doesn't make sense to offer them any recourse over someone else's account

So I'm not sure the warning is actually useful. @lampholder would appreciate a second opinion.

@turt2live turt2live added phase:1 and removed phase:1 labels Jul 4, 2019
@lampholder
Copy link
Member

I've talked myself in circles on this, but I think my final opinion is: login is annoying when anything unexpected happens, esp. .

I tend to just blitz through login as fast as possible, so I will usually fall into any pit a login flow leaves for me. For users like me, therefore I think there's a strong chance that any warning or barrier we put in place to stop people accidentally trampling other sessions is precisely the sort of annoying modal they'll just blindly click through, before (surprisingly) finding themselves still not logged in.

Even if we made a very lovely modal which grabbed just enough attention for people to understand that "oh, I might be about to vape @mike:whatever.tld's session keys, maybe I should reconsider", at that point they are still not logged in to the system they are trying to use, which is annoying, and I would expect the annoyed user to vape mike's session in a heartbeat.

So tl;dr, I reckon the new user just blows away the old user.

@turt2live
Copy link
Member Author

tldr from internal discussions: We'll tweak the design to make this risk less likely, and if the user does end up in a scenario where they are logging in elsewhere then it's their fault because we held their hand as far as we could.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-Soft-Logout https://github.com/element-hq/element-web/issues/10224 P1 T-Enhancement X-Needs-Design X-Won't-Fix
Projects
None yet
Development

No branches or pull requests

4 participants