Bug 32208: Adjust Auth.pm for relogin without perms
authorMarcel de Rooy <m.de.rooy@rijksmuseum.nl>
Tue, 15 Nov 2022 13:55:18 +0000 (13:55 +0000)
committerWainui Witika-Park <wainuiwitikapark@catalyst.net.nz>
Thu, 26 Jan 2023 23:06:11 +0000 (12:06 +1300)
commit14099582fedff49c52f1723471255953949da557
tree997af2e66de29936721b24dc2c2facc61b22ce7d
parent11a853a1c194030c4f54acdd8e9574f845ab6c17
Bug 32208: Adjust Auth.pm for relogin without perms

If a second login on top of a current session fails on
permissions, we should not grant access without context.

Test plan:
[1] Run t/db../Auth.t, it should pass now.
[2] Test interface with/without this patch:
    Pick two users: A has perms, B has not.
    Put two staff login forms in two tabs.
    Login as A in tab1. Login as B in tab2.
    Without this patch, B gets in and crashes.
    With this patch, B does not get in ('no perms').
    Bonus: Go to opac if on same domain. You are still
    logged in as B.

NOTE: I added a FIXME here, since you could argue about filling
the session info or otoh deleting the session. We present an
authorization failure; people may not realize that they are
still logged in (see test plan - bonus).

Signed-off-by: Marcel de Rooy <m.de.rooy@rijksmuseum.nl>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Wainui Witika-Park <wainuiwitikapark@catalyst.net.nz>
C4/Auth.pm