Random log out bug on extension

Passbolt Server 5.1.1 / Client 5.5.1

Browser:

Using the extension across a 4 hour window, the passbolt extension keeps logging me out despite me having chosen “Until I log out”. I have kept my browser (Brave) open for this duration, using the extension quite frequently.

I’ve used Passbolt for over two years, first time this has happened, so wanted to bring awareness. I’ve just turned on ‘collect errors’ under the extension settings so I’ll hopefully be able to provide some useful logs.

Xanph

1 Like

G’day Xanph.

It’s sounds like you know what to expect so I’m not adding much value in this comment but others might read this in the future and be interested :slight_smile:

Sessions are kept alive by the server and we get a few support tickets about session timeouts being too short. I’m not saying your timeout is normal, if your expected session time has changed it could be a bug and logs would be really welcome (thanks!)

Sessions

It’s an aspect of security that the server needs to have sessions kept alive so if a computer goes to sleep, then functionally that’s the same as logging out.

Session Management Timing:

  • The KeepSessionAliveService runs every 15 minutes (SESSION_CHECK_INTERNAL = 15)
  • The StartLoopAuthSessionCheckService checks authentication status every 60 seconds (CHECK_IS_AUTHENTICATED_INTERVAL_PERIOD = 60000)
  • When “Remember until signed out” is selected, the passphrase is stored with timeout = -1 (indefinite)

Laptop Sleep Mode Impact:

  • When laptops enter sleep mode, the session extension mechanism (KeepSessionAliveService) cannot run
  • The browser alarms may not fire reliably when the system is in sleep mode
  • This causes the session to expire even with “Remember until signed out” enabled

Session Validation:

  • The AuthenticationStatusService makes API calls to /is-authenticated to verify session validity
  • If the server-side session expires, the extension forces a logout via PostLogoutService.exec()

We have an open task: PB-28142 Session policies

However it requires the browser extension to move from using GPG Authentication to JWT Authentication first and that isn’t going to happen this year.

https://www.passbolt.com/docs/development/authentication

This is why we currently rely on the server timeout being extended and why it doesn’t persist through long periods where the client isn’t actively keeping the session alive.

Cheers
Gareth

1 Like

Thanks Gareth.

I’m actually still waiting on this to happen again to collect the logs - had only occurred a few times across the 6th and 7th. Sounds like your right that something interfered with the timing: I’m on Ubuntu and actually can’t sleep my desktop (until I fix that), so only lock it.

Seems like this is a precise issue to me - have been building a lot of docker images over those days which can be intense, for how I have things setup, on client and server. So during the verification stages, the requests and responses may have timed out - possibly expiring the session?

Xanph