Leo Vasanko
|
2a318adab4
|
Add back missing ResetToken.delete() lost on earlier refactoring.
|
2026-02-16 20:53:07 +00:00 |
|
Leo Vasanko
|
b73b2d6fe9
|
Renamed OIDC permissions claim to more commonly used groups. Move jwtk to a more convenient location. Draft admin app OIDC client configuratioon.
|
2026-02-16 16:54:53 +00:00 |
|
Leo Vasanko
|
e59852b44c
|
Session keys hardened (namespaced hashes of tokens). Various cleanup.
|
2026-02-15 20:14:48 +00:00 |
|
Leo Vasanko
|
18722f0e01
|
Implement stateful OIDC as Session objects. Add refresh tokens and backchannel logout.
|
2026-02-15 03:48:10 +00:00 |
|
Leo Vasanko
|
b5a5f2707a
|
Draft OpenID Connect support.
|
2026-02-14 23:01:13 +00:00 |
|
Leo Vasanko
|
b1731e5abf
|
Inline get_config, rewrite update_config, DB init Config and rp_id defaults changed.
|
2026-02-10 23:17:28 +00:00 |
|
Leo Vasanko
|
9332eb63ab
|
ResetToken.hash(phrase) added avoiding code duplication.
|
2026-02-10 22:56:49 +00:00 |
|
Leo Vasanko
|
310a4e9a87
|
Remove remaining DB getter functions, inline at call site and add ResetToken.by_passphrase().
|
2026-02-10 22:48:31 +00:00 |
|
Leo Vasanko
|
2f2934db6b
|
CRUD store and delete on the DB classes directly.
|
2026-02-10 22:19:02 +00:00 |
|
Leo Vasanko
|
12715ee405
|
Use strictly same now timestamp over a transaction, even for UUIDv7s generated.
|
2026-02-10 21:45:09 +00:00 |
|
Leo Vasanko
|
2105040661
|
Calculate session expiry times in operations, using a common now timestamp for everything.
|
2026-02-10 21:35:56 +00:00 |
|
Leo Vasanko
|
4fcfee78c7
|
Set last seen and increment visits during registration, not only on authentication.
|
2026-02-10 21:25:20 +00:00 |
|
Leo Vasanko
|
5962f394b5
|
Minor fixes to config handling.
|
2026-02-09 17:37:10 +00:00 |
|
Leo Vasanko
|
b92cc183dd
|
Storing config on database to simplify reloads by CLI.
|
2026-02-09 17:00:40 +00:00 |
|
Leo Vasanko
|
8ba5356d11
|
ruff check
|
2026-02-05 19:21:03 +00:00 |
|
Leo Vasanko
|
3e533d4414
|
Change host normalization to remove port numbers - sessions are per host, cookies don't respect port numbers.
|
2026-02-05 19:04:40 +00:00 |
|
Leo Vasanko
|
f39986412a
|
API/DB cleanup for flat URLs that don't include org where users etc. are referred to. Implement user deletion in admin app and API, UI improvement. Reset token DB factory function revised to create passphrase and key internally. Removed unneeded functions and args, using update_user_role instead of a separate deleted _in_organization function.
|
2026-02-05 14:05:31 +00:00 |
|
Leo Vasanko
|
cc439aaf12
|
Light/dark selection in user profile, if set this is preferred on the whole system, together with app overrides (the first one on the URL wins).
|
2026-01-30 23:31:06 +00:00 |
|
Leo Vasanko
|
89d0a12a6f
|
Implement versioning in metadata, outside of the DB itself. Cleanup to migration handling and changes. Implement new migration step using msgspec normalization.
|
2026-01-28 20:23:00 +00:00 |
|
Leo Vasanko
|
93fd496254
|
Cleanup
|
2026-01-28 19:17:24 +00:00 |
|
Leo Vasanko
|
7614d0e8d9
|
API to use msgspec structs as well.
|
2026-01-28 18:31:45 +00:00 |
|
Leo Vasanko
|
b79f367495
|
Implement full ORM. Various other cleanup.
|
2026-01-28 17:19:56 +00:00 |
|
Leo Vasanko
|
dcc89181b7
|
Move get_session_context to DB.session_ctx().
|
2026-01-28 14:52:18 +00:00 |
|
Leo Vasanko
|
9983245652
|
Remove get_session_context setting of host (now read only op as expected). Make session host, ip and user_agent always set (the ua potentially empty string).
|
2026-01-28 02:14:34 +00:00 |
|
Leo Vasanko
|
c6a7429f11
|
Remove Org.created_at to maintain compatibility with old versions (the field was not being used).
|
2026-01-28 01:31:35 +00:00 |
|
Leo Vasanko
|
e3ff1f9db1
|
Hardened PATCH handling (only allow updating select fields). Hardened DB transactions, rollback.
|
2026-01-28 01:13:05 +00:00 |
|
Leo Vasanko
|
43ffb31414
|
Cleaner typing to avoid some checking errors.
|
2026-01-27 22:04:14 +00:00 |
|
Leo Vasanko
|
a54819aba8
|
Remove most remaining DB getters. Add ws auth chat helper function to avoid repetition, along with the existing register chat in wschat.py.
|
2026-01-27 20:01:17 +00:00 |
|
Leo Vasanko
|
1c4fda6aa2
|
DB cleanup continued: Made the working copy data public in DB class.
|
2026-01-27 18:02:16 +00:00 |
|
Leo Vasanko
|
462c21f7fa
|
Database cleanup continues, build functions replaced by post init. Simplified some APIs.
|
2026-01-27 16:53:13 +00:00 |
|
Leo Vasanko
|
637b1b95a8
|
Finalize database API class merge.
|
2026-01-27 03:00:18 +00:00 |
|
Leo Vasanko
|
73e4d41f04
|
Refactor API to match database, no _uuid postfixes.
|
2026-01-27 02:32:46 +00:00 |
|
Leo Vasanko
|
db104d762b
|
Finish the database key-in-object refactoring.
|
2026-01-27 02:11:09 +00:00 |
|
Leo Vasanko
|
ece0ac9a16
|
Database cleanup, better UUID passing and construction (User model).
|
2026-01-27 01:25:52 +00:00 |
|
Leo Vasanko
|
f6e995184f
|
Refactor validate endpoint to return session context, leaving user-info only for extra profile data. Completely separate token-info for reset tokens. Simplified by reusing same data structures in various places and mandating fields to have values not needing fallbacks. Implemented consistent AccessDenied view in profile and admin apps.
|
2026-01-26 19:40:48 +00:00 |
|
Leo Vasanko
|
f7f529d8b9
|
Fix errors where permission scopes were still expected for indexing.
|
2026-01-24 00:58:18 +00:00 |
|
Leo Vasanko
|
2227a9bf6f
|
Refer permissions by UUID rather than scope.
|
2026-01-24 00:06:08 +00:00 |
|
Leo Vasanko
|
3f5018918e
|
Simplify session and reset token formats; removes the token utility functions entirely.
|
2026-01-23 21:01:45 +00:00 |
|
Leo Vasanko
|
257ddc0b51
|
Cleanup, add database versioning.
|
2026-01-23 19:22:23 +00:00 |
|
Leo Vasanko
|
62dbf5a4ae
|
Refactor to use UUID and bytes rather than str keys in msgspec structs because the module can automatically convert these.
|
2026-01-23 18:47:56 +00:00 |
|
Leo Vasanko
|
0674f9ceeb
|
Database refactor to separate modules.
|
2026-01-23 18:35:35 +00:00 |
|