مهندسی محصول · DevOps · امنیتپاسخ‌گویی سریع به پروژه‌های جدی
← بازگشت به بلاگ
BackendNestJSSecurity

چطور APIهای NestJS را از روز اول امن بسازیم

چک‌لیست عملی برای Auth، Validation، Rate limit و Hardening.

امنیت API فقط گذاشتن JWT نیست. بیشتر رخنه‌ها از Validation ضعیف، دسترسی بیش‌ازحد، و لاگ/خطای پرحرف می‌آید.

پایه‌ها

- DTO + class-validator روی همه ورودی‌ها
- whitelist و forbidNonWhitelisted
- جدا کردن Admin API از Public API
- نقش‌ها و مجوزها (RBAC) نه فقط «لاگین شده»

احراز هویت

- Access token کوتاه‌عمر + Refresh چرخشی
- ذخیره refresh امن (httpOnly)
- ابطال نشست بعد از تغییر پسورد

سخت‌سازی

- Rate limit روی login و endpointهای حساس
- Helmet / هدرهای امنیتی پشت reverse proxy
- خطای عمومی به کلاینت؛ جزئیات فقط در لاگ داخلی
- هرگز stack trace در production

داده

- least privilege روی دیتابیس
- پارامتریک کوئری (ORM کمک می‌کند ولی کافی نیست)
- رمزنگاری فیلدهای حساس در صورت نیاز

تست

Unit برای گاردها، integration برای مسیرهای auth، و حداقل یک دور review امنیتی قبل از لانچ.

این همان مسیری است که در بک‌اند پروژه‌های PelatinCode از روز اول فعال می‌شود.

امن‌سازی API با NestJS | Backend | PelatinCode