42 Commits

Author SHA1 Message Date
Chris
405000ded5 feat(role): add role_code across schema and APIs 2026-04-03 15:49:22 +08:00
Chris
ed7a0344e0 Remove legacy migration file and alias API routes 2026-04-03 03:54:48 +08:00
Chris
6d6f5aa2a6 Remove duplicate internal permissions snapshot API 2026-04-03 02:46:55 +08:00
Chris
55e640f2fb Add in-memory read cache with CUD-based invalidation 2026-04-03 02:32:38 +08:00
Chris
c431fe180b Sync site-role assignments to Keycloak group role mappings 2026-04-03 02:14:01 +08:00
Chris
da08bc01ec feat: allow assigning sites directly from role page 2026-04-03 01:56:22 +08:00
Chris
64246984ba refactor: simplify schema names and remove provider id columns 2026-04-03 01:49:36 +08:00
Chris
e91639d6d9 perf: disable read-time sync and keep provider sync manual 2026-04-03 01:23:42 +08:00
Chris
49949498e0 fix: sync role CRUD with provider client roles 2026-04-03 01:17:13 +08:00
Chris
388a3f461c refactor: rename idp fields to provider naming 2026-04-03 01:05:01 +08:00
Chris
ce181ebf67 refactor(idp-groups): use display name as keycloak group name 2026-04-03 00:53:31 +08:00
Chris
573a75b9e3 feat(sync): keycloak as source-of-truth with auto catalog sync and token refresh 2026-04-03 00:46:46 +08:00
Chris
2f92b94f59 refactor: rebuild backend around role-site authorization model 2026-04-02 23:58:13 +08:00
Chris
0bc667847d refactor(keycloak): remove authentik naming and switch to keycloak-only paths 2026-04-01 02:01:41 +08:00
Chris
d16722ebf8 fix(oidc): add PKCE support for keycloak login flow 2026-04-01 01:43:53 +08:00
Chris
c7ed517ed2 feat(idp): add keycloak-first support with authentik fallback 2026-04-01 00:41:38 +08:00
Chris
f6105f079d fix(login): switch frontend account login to oidc flow 2026-03-31 23:43:57 +08:00
Chris
4060ebff70 refactor(identity): rename authentik_sub to user_sub and authentik_user_id to idp_user_id 2026-03-31 22:32:48 +08:00
Chris
ed5679948b docs(api): add internal API contract and expose response schemas in swagger 2026-03-31 22:20:24 +08:00
Chris
ce8f9342de fix(internal): return correct system_key in modules list 2026-03-31 22:02:56 +08:00
Chris
85e67ae0cd refactor(internal): switch auth to api-client headers 2026-03-31 21:09:18 +08:00
Chris
cf02d9ec41 fix(member): delete authentik user when removing member 2026-03-31 21:01:15 +08:00
Chris
2b29a1a274 feat(admin): add delete APIs and UI actions for all admin resources 2026-03-31 20:58:20 +08:00
Chris
3fe5ce4ce7 feat(admin): add api client management UI and backend CRUD/rotate endpoints 2026-03-30 23:28:27 +08:00
Chris
75f9f28588 feat(members): split username/display_name, sync updates to authentik, add password reset API and refresh docs 2026-03-30 22:15:41 +08:00
Chris
8ed50cdcc6 refactor(auth): use group-only admin access and remove admin api-key flow from frontend/admin routes 2026-03-30 21:39:43 +08:00
Chris
0e17997e66 feat(security): enforce admin allowlist guard on admin APIs and attach bearer for admin client 2026-03-30 21:25:57 +08:00
Chris
0cd863f9c2 fix(module-key): make module keys standalone MD format with system_key relation 2026-03-30 20:02:17 +08:00
Chris
c4266b7da5 feat(keys): auto-generate entity keys and remove manual key input from admin create forms 2026-03-30 19:52:00 +08:00
Chris
61cab48fca feat(admin): implement group-centric relations and system/module/company linkage views 2026-03-30 19:38:49 +08:00
Chris
35ffff1d19 feat(flow): unify member-group-permission admin workflow and docs 2026-03-30 03:54:22 +08:00
Chris
cc9ad16311 feat(flow): auto-resolve authentik sub and improve admin dropdown UX 2026-03-30 03:33:50 +08:00
Chris
2f97f45795 feat(admin): add edit flows for all catalogs and member authentik sync 2026-03-30 03:25:53 +08:00
Chris
602c5443ad refactor: align backend with company-site-member schema and system-level RBAC groups 2026-03-30 01:59:50 +08:00
Chris
0f0b197b32 feat: add organization and member management APIs for admin and internal use 2026-03-30 01:23:02 +08:00
Chris
a170f0a681 fix: switch frontend login to authentik auth-code flow 2026-03-30 01:04:28 +08:00
Chris
5e46c58dd4 fix: allow login by email via authentik username resolution 2026-03-30 00:54:15 +08:00
Chris
8f06f75cca feat: add username-password login flow via authentik token endpoint 2026-03-30 00:52:09 +08:00
Chris
cb8e72ccc7 feat: configure authentik member oidc and local dev token compatibility 2026-03-30 00:34:59 +08:00
Chris
c84d7286a1 feat: add authentik admin user sync endpoint 2026-03-29 23:08:52 +08:00
Chris
2b81fd01c3 feat: add authentik jwt verification and me endpoints 2026-03-29 23:06:19 +08:00
Chris
3ca207d24a feat: bootstrap backend MVP and architecture docs 2026-03-29 23:01:34 +08:00