The starter includes JWT authentication, Argon2 password hashing, role-based API dependencies, CORS configuration, input validation, account activation controls, audit records and common response security headers.
Before production:
- Replace all demonstration credentials and
SECRET_KEYvalues. - Store secrets in a secret manager, not source control or Compose files.
- Use HTTPS end to end and secure cookies or a hardened token-storage strategy.
- Add refresh-token rotation and revocation for long-lived sessions.
- Add login throttling, IP/device risk controls and optional MFA for administrators.
- Verify payment webhooks cryptographically and make checkout idempotent.
- Use signed media URLs; never expose private paid-course objects publicly.
- Add backup, restore, retention and database encryption policies.
- Add dependency scanning, SAST, DAST, container scanning and CI approval gates.
- Add privacy, tax, refund, accessibility and content-moderation policies for the target region.