| Summary: | Unexpected logout with "IP address change" | ||
|---|---|---|---|
| Product: | Koha | Reporter: | Jonathan Druart <jonathan.druart> |
| Component: | Architecture, internals, and plumbing | Assignee: | Galen Charlton <gmcharlt> |
| Status: | CLOSED INVALID | QA Contact: | Testopia <testopia> |
| Severity: | normal | ||
| Priority: | P5 - low | CC: | tomascohen |
| Version: | Main | ||
| Hardware: | All | ||
| OS: | All | ||
| GIT URL: | Initiative type: | --- | |
| Sponsorship status: | --- | Comma delimited list of Sponsors: | |
| Crowdfunding goal: | 0 | Crowdfunding committed: | 0 |
| Crowdfunding contact: | Patch complexity: | --- | |
| Documentation contact: | Documentation submission: | ||
| Text to go in the release notes: | Version(s) released in: | ||
| Circulation function: | |||
Ha, you need to set SessionRestrictionByIP Before the first login you need to hit /, not the mainpage with the logout.x param It seems that it exists on 3.22.x and 3.20.x as well. Not sure if this is important, maybe dependent to my config. Hi Jonathan, can this be closed? It's from 2016 and I am not aware of any issues with logouts under Plack at the moment. I cannot longer recreate, closing. |
I get a new issue (not sure since when) under Plack: I am logged out with "IP address change" just after the first login. To reproduce: - logout - restart plack - login - click somewhere => You will be logged out I have tried to debug: diff --git a/C4/Auth.pm b/C4/Auth.pm index 985bd39..a494ddf 100644 --- a/C4/Auth.pm +++ b/C4/Auth.pm @@ -818,6 +818,9 @@ sub checkauth { $userid = $s_userid; $sessiontype = $session->param('sessiontype') || ''; } + + warn $ip; + warn $ENV{REMOTE_ADDR}; if ( ( $query->param('koha_login_context') && ( $q_userid ne $s_userid ) ) || ( $cas && $query->param('ticket') && !C4::Context->userenv->{'id'} ) || ( $shib && $shib_login && !$logout && !C4::Context->userenv->{'id'} ) I get: After the login: $ip=undef, $ENV{REMOTE_ADDR}=192.168.254.1 After the click producing the logout: $ip=192.168.254.1, $ENV{REMOTE_ADDR}=127.0.0.1 After the second login: $ip=127.0.0.1, $ENV{REMOTE_ADDR}=127.0.0.1