Skip to content

Harden security defaults and add dark mode#25

Merged
greenlogles merged 1 commit into
greenlogles:mainfrom
steynru:codex/security-dark-mode
May 31, 2026
Merged

Harden security defaults and add dark mode#25
greenlogles merged 1 commit into
greenlogles:mainfrom
steynru:codex/security-dark-mode

Conversation

@steynru

@steynru steynru commented May 30, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Adds env-driven Flask session signing, optional Basic Auth, CSRF checks, and common security headers.
  • Validates external download URLs/filenames before passing them to Proxmox.
  • Adds a persisted light/dark theme toggle.
  • Adds local Docker Compose build/run support for testing.
  • Normalizes Docker entrypoint line endings for Windows checkouts.

Testing

  • docker compose -f docker-compose.local.yml config
  • python -m compileall app.py tests/test_security_hardening.py
  • node --check static/script.js
  • Local Docker build/run with docker compose -f docker-compose.local.yml up --build -d

Notes

  • PROXUI_SECRET_KEY should be set for real deployments.
  • PROXUI_AUTH_USERNAME and PROXUI_AUTH_PASSWORD can be used for simple whole-app protection.

Replace fixed Flask secret with env-driven session signing;
add optional Basic Auth,
CSRF protection,
security headers,
safer download validation,
escaped dynamic UI output,
persisted dark mode,
local Docker Compose testing,
and Docker entrypoint line-ending normalization.
@greenlogles

Copy link
Copy Markdown
Owner

Thank you for contribution!

@greenlogles greenlogles merged commit aa2f0b4 into greenlogles:main May 31, 2026
5 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants