Stefan and Claude Sonnet 5
38145a917e
Fix login accepting wrong credentials (empty user signed in anyway)
...
fis_admin_getUserAccount always inserted a result row, even when no
matching user was found, so fis_admin_authenticate never truly
returned "no result" on wrong credentials — the login handler then
signed the caller in with an empty useraccount_id. The authenticated
shell rendered (IsAuthenticated only checks the claim exists), while
every data endpoint 401'd (FuchsUserIdentity.IsAuthenticated also
checks the id is non-empty), producing an empty portal.
Also treat an empty useraccount_id in HandleLogin as a failed login
(defense in depth) and fix a column-name mismatch (auth vs
authorization) that was silently zeroing the authorization level.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
2026-09-14 14:51:44 +02:00
..
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-09-09 12:10:24 +02:00
2026-09-09 12:10:24 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-07-04 16:37:23 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-07-18 18:01:24 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-09-09 12:10:24 +02:00
2026-09-09 12:10:24 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-09-14 14:51:44 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-09-09 10:34:04 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00
2026-06-05 14:50:54 +02:00