list everything left open for the demo that must be closed before real users
docs/security-before-production.md records, item by item, what is exposed on purpose while this is an internship demo: the committed token-signing key still in use on the server, seven fixed-code demo logins, demo users in the production database, a public /api/health that reports internal state, a public API schema, a public leaderboard with children's names, /admin on the public domain, the server answering on port 80 around ArvanCloud, per-worker rate limits without Redis, guest login by deviceId alone, unhashed refresh tokens and OTP codes, AI cost exposure through throwaway guests, hearts not enforced, SQLite without off-box backups, and shared root access to the box. Each has its risk, why it was left, the fix and how to verify it; the exposure checks were run against the live server on 2026-09-25. CLAUDE.md, README and docs/operations.md point to it so no agent mistakes this deployment for production-ready. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -230,3 +230,10 @@ sudo systemctl restart gunicorn # مالِ ما نیست — اپِ
|
||||
|
||||
هر خطای پیشبینینشده همیشه پاسخِ JSON برمیگرداند — نه صفحهی HTML پیشفرضِ
|
||||
جنگو — و کامل با traceback لاگ میشود (`config/exceptions.py`).
|
||||
|
||||
---
|
||||
|
||||
> **پیش از آمدنِ کاربرِ واقعی** فهرستِ [`security-before-production.md`](security-before-production.md)
|
||||
> را کامل ببندید: کلیدِ امضا، حسابهای دمو، جزئیاتِ عمومیِ `/api/health`، مستنداتِ عمومیِ API،
|
||||
> جدولِ رتبهبندیِ عمومی، پنلِ ادمین، پورتِ ۸۰ و دسترسیِ سرور.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user