We welcome reports of security vulnerabilities. Please follow these steps:
- Email security@myparent.app with a detailed description of the issue, proof-of-concept steps, and potential impact.
- Encrypt sensitive details with our PGP key (available on the company wiki) when possible.
- Allow us at least 10 business days to acknowledge and respond, and coordinate on disclosure timelines before making findings public.
- Do not create public GitHub issues for security reports.
We appreciate responsible researchers and will credit validated reports in our release notes.
Security fixes target the main branch. Deployments should stay within one minor release of the latest tag to receive patches.
- Run
npm auditandnpm outdatedmonthly in CI and remediate critical/high vulnerabilities immediately. - Use Dependabot or Renovate to automate npm dependency updates.
- After Prisma upgrades, regenerate the client (
npm run -w apps/api build) and redeploy migrations.
- Local development uses
.envwith dotenv loading; never commit.envfiles. - Production secrets (e.g.,
JWT_SECRET, admin bootstrap credentials) must be sourced from a secret manager (AWS SSM, Vault, Doppler, etc.) and injected via environment variables at runtime. - Rotate
JWT_SECRETduring maintenance windows; all sessions become invalid upon rotation.
sessioncookies are HttpOnly and SameSite=Lax by default.- Set
COOKIE_SECURE=truein any environment served over HTTPS so cookies are only transmitted via TLS. - Behind a TLS-terminating load balancer, ensure the proxy forwards
X-Forwarded-Proto=httpsso nginx can redirect HTTP to HTTPS if configured.
- Restrict Docker daemon access to trusted operators.
- Regularly prune unused images (
docker image prune) to reduce attack surface. - Mount the
api_datavolume with proper filesystem permissions and nightly backups. - Enable firewall rules so only ports 80/443 are public; API container is exposed internally only.