IXG Platform
Find a file
ixgadmin ef6f217e45 Gate the administration area by role, not by is_staff
RBACMiddleware only guarded non-staff users, so any staff account stepped
past the role routing for /admin/ — an ops or buyer account with the flag
set could reach the admin index, which embeds the model registry, and a
later permission grant would have been inherited. Restrict /admin/ to the
admin role (superuser excepted) and hide the ops Admin link from non-admins.

Also close the second finding: the seed set is_staff only on creation, so
a buyer whose flag had drifted stayed staff on every re-run. Derive it from
the role on the update path too, and align existing rows with a one-off
migration so the flag never disagrees with the role.
2026-09-25 16:47:50 +00:00
apps Gate the administration area by role, not by is_staff 2026-09-25 16:47:50 +00:00
docs Help centre: portal-scoped guide audiences, and links that resolve 2026-09-16 16:39:07 +00:00
dsp_platform Make logout a POST and end the Keycloak session 2026-09-21 12:53:14 +00:00
nginx Initial commit: IXG Platform 2026-07-29 16:48:48 +00:00
scripts Deployment hardening: HTTPS/CSRF settings, loopback-only app port, entrypoint passthrough 2026-09-16 16:39:07 +00:00
templates Gate the administration area by role, not by is_staff 2026-09-25 16:47:50 +00:00
.dockerignore Initial commit: IXG Platform 2026-07-29 16:48:48 +00:00
.gitignore Deployment hardening: HTTPS/CSRF settings, loopback-only app port, entrypoint passthrough 2026-09-16 16:39:07 +00:00
create_agent.py Initial commit: IXG Platform 2026-07-29 16:48:48 +00:00
docker-compose.yml Run with DEBUG off and add HSTS and CSP headers 2026-09-25 12:37:40 +00:00
Dockerfile Initial commit: IXG Platform 2026-07-29 16:48:48 +00:00
manage.py Initial commit: IXG Platform 2026-07-29 16:48:48 +00:00
requirements.txt P99C: compliance automation - CoA auto-generation and EUDR due diligence 2026-08-05 13:58:39 +00:00
SESSION_CHECKPOINT.md Initial commit: IXG Platform 2026-07-29 16:48:48 +00:00