mirror of
https://github.com/BookStackApp/BookStack.git
synced 2026-02-08 03:09:39 +03:00
Support "Remember Me" functionality across mulitple devices for a single user #2439
Open
opened 2026-02-05 04:08:18 +03:00 by OVERLORD
·
19 comments
No Branch/Tag Specified
development
further_theme_development
l10n_development
release
llm_only
vectors
v25-11
docker_env
drawio_rendering
user_permissions
ldap_host_failover
svg_image
prosemirror
captcha_example
fix/video-export
v25.12.3
v25.12.2
v25.12.1
v25.12
v25.11.6
v25.11.5
v25.11.4
v24.11.4
v25.11.3
v25.11.2
v25.11.1
v25.11
v25.07.3
v25.07.2
v25.07.1
v25.07
v25.05.2
v25.05.1
v25.05
v25.02.5
v25.02.4
v25.02.3
v25.02.2
v25.02.1
v25.02
v24.12.1
v24.12
v24.10.3
v24.10.2
v24.10.1
v24.10
v24.05.4
v24.05.3
v24.05.2
v24.05.1
v24.05
v24.02.3
v24.02.2
v24.02.1
v24.02
v23.12.3
v23.12.2
v23.12.1
v23.12
v23.10.4
v23.10.3
v23.10.2
v23.10.1
v23.10
v23.08.3
v23.08.2
v23.08.1
v23.08
v23.06.2
v23.06.1
v23.06
v23.05.2
v23.05.1
v23.05
v23.02.3
v23.02.2
v23.02.1
v23.02
v23.01.1
v23.01
v22.11.1
v22.11
v22.10.2
v22.10.1
v22.10
v22.09.1
v22.09
v22.07.3
v22.07.2
v22.07.1
v22.07
v22.06.2
v22.06.1
v22.06
v22.04.2
v22.04.1
v22.04
v22.03.1
v22.03
v22.02.3
v22.02.2
v22.02.1
v22.02
v21.12.5
v21.12.4
v21.12.3
v21.12.2
v21.12.1
v21.12
v21.11.3
v21.11.2
v21.11.1
v21.11
v21.10.3
v21.10.2
v21.10.1
v21.10
v21.08.6
v21.08.5
v21.08.4
v21.08.3
v21.08.2
v21.08.1
v21.08
v21.05.4
v21.05.3
v21.05.2
v21.05.1
v21.05
v21.04.6
v21.04.5
v21.04.4
v21.04.3
v21.04.2
v21.04.1
v21.04
v0.31.8
v0.31.7
v0.31.6
v0.31.5
v0.31.4
v0.31.3
v0.31.2
v0.31.1
v0.31.0
v0.30.7
v0.30.6
v0.30.5
v0.30.4
v0.30.3
v0.30.2
v0.30.1
v0.30.0
v0.29.3
v0.29.2
v0.29.1
v0.29.0
v0.28.3
v0.28.2
v0.28.1
v0.28.0
v0.27.5
v0.27.4
v0.27.3
v0.27.2
v0.27.1
v0.27
v0.26.4
v0.26.3
v0.26.2
v0.26.1
v0.26.0
v0.25.5
v0.25.4
v0.25.3
v0.25.2
v0.25.1
v0.25.0
v0.24.3
v0.24.2
v0.24.1
v0.24.0
v0.23.2
v0.23.1
v0.23.0
v0.22.0
v0.21.0
v0.20.3
v0.20.2
v0.20.1
v0.20.0
v0.19.0
v0.18.5
v0.18.4
v0.18.3
v0.18.2
v0.18.1
v0.18.0
v0.17.4
v0.17.3
v0.17.2
v0.17.1
v0.17.0
v0.16.3
v0.16.2
v0.16.1
v0.16.0
v0.15.3
v0.15.2
v0.15.1
v0.15.0
v0.14.3
v0.14.2
v0.14.1
v0.14.0
v0.13.1
v0.13.0
v0.12.2
v0.12.1
v0.12.0
v0.11.2
v0.11.1
v0.11.0
v0.10.0
v0.9.3
v0.9.2
v0.9.1
v0.9.0
v0.8.2
v0.8.1
v0.8.0
v0.7.6
v0.7.5
v0.7.4
v0.7.3
0.7.2
v.0.7.1
v0.7.0
v0.6.3
v0.6.2
v0.6.1
v0.6.0
v0.5.0
Labels
Clear labels
🎨 Design
📖 Docs Update
🐛 Bug
🐛 Bug
:cat2:🐈 Possible duplicate
💿 Database
☕ Open to discussion
💻 Front-End
🐕 Support
🚪 Authentication
🌍 Translations
🔌 API Task
🏭 Back-End
⛲ Upstream
🔨 Feature Request
🛠️ Enhancement
🛠️ Enhancement
🛠️ Enhancement
❤️ Happy feedback
🔒 Security
🔍 Pending Validation
💆 UX
📝 WYSIWYG Editor
🌔 Out of scope
🔩 API Request
:octocat: Admin/Meta
🖌️ View Customization
❓ Question
🚀 Priority
🛡️ Blocked
🚚 Export System
♿ A11y
🔧 Maintenance
> Markdown Editor
pull-request
Mirrored from GitHub Pull Request
No Label
🔨 Feature Request
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/BookStack#2439
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
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?
Originally created by @ljlapierre on GitHub (Oct 17, 2021).
Describe the bug
When 2FA was first enabled I turned it on, but it seems to have broken the Remember Me functionality. I use Bookstack to take notes on a fairly regular basis from my phone and desktop, and decided I'd sooner have automatic login over 2FA. I disabled 2FA on my account, but Remember Me does not work.
Steps To Reproduce
Steps to reproduce the behavior:
Expected behavior
My next bookstack session should have me automatically logged in
Your Configuration (please complete the following information):
@Bolthier commented on GitHub (Oct 18, 2021):
I have the same issue after updating without ever enabling 2FA.
I wasn't sure if it was a Firefox bug or an issue with an addon, so I didn't raise an issue. But after testing for several days with different browser profiles and versions it still logs me out after some time.
Feels like between a few hours or a day, not right after closing the site and reopening it. As if I didn't check the "remember me" box.
@ssddanbrown commented on GitHub (Oct 20, 2021):
Thanks both for reporting this one, but I'm having trouble replicating it at all. Have reduced my
SESSION_LIFETIMEto 1 minute then tested via normal use and via following the steps in the original request here.If either of you could provide details of your cookies that would be ideal. Specifically, there should be a cookie with a name starting with
remember_standard_. If you could provide all details possible as shown below. Don't provide the cookie value nor the domain if you don't want that public.@Bolthier commented on GitHub (Oct 20, 2021):
Hi Dan, heres the cookie:
@ssddanbrown commented on GitHub (Oct 20, 2021):
Thanks @Bolthier. I'm assuming you're on a non-https site with a non-https
APP_URLvalue set?@Bolthier commented on GitHub (Oct 20, 2021):
It seems I never set the APP_URL attribute. I'm on an https host with redirection of http to https through apache. I'm using a subdomain for the bookstack environment.
I have now set the APP_URL to my bookstack URL. Will give feedback if this solved my issue.
@Bolthier commented on GitHub (Oct 21, 2021):
@ssddanbrown Seems like the issue still persists. After several hours I get logged out despite the cookie existing.
Any ideas what to look for on my side?
@ssddanbrown commented on GitHub (Oct 21, 2021):
@Bolthier You could try setting
SESSION_LIFETIME=1(So sessions only live for 1 minute by default) in your.envthen let me know if you remain logged in, when using the "remember me" option, after 2 minutes of inactivity on the homepage.@Bolthier commented on GitHub (Oct 21, 2021):
I tried that and it seems I have located the issue.
I tested this with session 1 in Firefox and session 2 in private mode, mobile and nightly with the same result.
It seems to me that only one session can be remembered on the server side. I'm using Bookstack on both mobile and desktop.
@ljlapierre commented on GitHub (Oct 21, 2021):
I have yet to verify the cookie, but this behavior is consistent with what I'm seeing. I log in from my home machine, work machine, and from my phone quite frequently.
@ssddanbrown commented on GitHub (Oct 21, 2021):
Yeah, That's what I'd expect, Since the token is joined up with the user via a single DB column. This should have always been the case though, from the first version of BookStack so nothing new.
@ljlapierre commented on GitHub (Oct 21, 2021):
That's strange.. it always worked for me.
Getting out of bugfix territory and into feature request - could a table be created to link token keys to users instead of a single column?
I can create multiple "me" users as a workaround, one per device, but it's not the most elegant solution
@Bolthier commented on GitHub (Oct 21, 2021):
I'm pretty sure it was possible to stay logged in on both mobile and desktop before, but I could be wrong. Any chance to get this function implemented?
@ssddanbrown commented on GitHub (Oct 21, 2021):
Yeah, can definitely likely be done. Plan to update the framework soon, which remember-me functionality ties into, so maybe after then it could be added.
I'll update the title and mark this as a feature request.
Note: If it's just you (Or trusted set of users) using the system you could instead just increase the
SESSION_LIFETIME.env option massively. Is defined in minutes, defaults to120(2 hours).@ssddanbrown commented on GitHub (Oct 21, 2021):
Thinking a bit further, It does raise a question of invalidating other sessions if desired. It would massively increase the scope to actually track sessions and provide a listing with "revoke session" option (Since that would be desired outside of just "remember me" usage). Maybe it'd be a case of a manual logout (Via header option click) revoking all existing "remember me" sessions?
@Bolthier commented on GitHub (Oct 21, 2021):
Yeah, that would be the ideal solution. Maybe even give the user some info like browser and ip of all active sessions.
@ssddanbrown commented on GitHub (Oct 21, 2021):
Yeah, Ties into the request of #2828.
@ljlapierre commented on GitHub (Oct 21, 2021):
The features could be staged, start with a "toast all sessions" button for basic functionality that could be expanded upon easily enough
@Cave-Johnson commented on GitHub (Oct 26, 2021):
Adding my thought here from a security perspective, if you do go the route of allowing multiple devices to be logged in with the same account at the same time, it would be great to additionally provide an option to only allow a single active session as well.
@wouterVE commented on GitHub (Nov 30, 2021):
I'm having the same behavior as @Bolthier describes. Logging in another device does invalidate my other Bookstack sessions after the
bookstack_sessioncookie has expired. In the past (I think until the version of May?) I did not have this issue.For now I've 'solved' it by increasing the value of
SESSION_LIFETIMEin the.envfile.