Refreshing web client logs user out #147
Labels
No labels
area/ci
area/desktop
area/packaging
area/protocol
area/reading
area/ui
area/web
area/writing
kind/bug
kind/feature
kind/infra
kind/request
needs/user
parked
perf
security
upstream
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
littlefox/neokom#147
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The user gets immediately logged out of the session when refreshing the web page. Instead we want the user to remain logged in.
This is the case for desktop and phone browsers and the PWA
Triage: this is how it was built on purpose, not a slip. D-032 (#53) says the browser remembers the name and server but never the password. Protocol A has no login tokens, so after a reload the page has nothing to log in with. Changing that means revising D-032 for the browser, so it's your call. Recorded as D-044.
What we could do:
sessionStorage, which a reload keeps and closing the tab or app clears. It's simple and fixes the refresh itself, but not reopening the installed app.My recommendation: 2 now, since it's the only option that fixes all three cases you listed (desktop browser, phone browser, installed app). Keep it opt-in behind "Kom ihåg mig", with the wording saying the password is kept on this device. Option 1 can follow later with #135, to make reloads instant without logging in again.
Which do you want? (Or "2, but…")
Decided (D-045): the password may be kept, but only in the browser's own password manager, never in storage NeoKOM makes itself. Working on it:
Merged in #158 (D-045). With 'Håll mig inloggad', the password goes only to the browser's own password manager:
Verified:
To try on real devices: tick 'Håll mig inloggad', log in, let the browser save the password, then reload.