feat: add chapter 11-security-and-best-practices specs

This commit is contained in:
2026-09-05 22:30:01 +08:00
parent 8059df0781
commit 8e4e8d4f82
9 changed files with 1015 additions and 0 deletions

View File

@@ -0,0 +1,82 @@
# مشخصات درس‌نامه: اهداف فصل یازدهم (Chapter Goals)
- **شناسه در سیلابس:** `L11.1`
- **فصل:** فصل ۱۱: امنیت و استفاده مسئولانه (Ch 11)
- **نوع محتوا:** 📘 درس‌نامه متنی
- **زمان تقریبی مطالعه:** ۵ دقیقه
- **پیش‌نیازهای مستقیم:** `L10.8` (تزریق مغز هوش مصنوعی به محصول)
---
## ۱. اهداف یادگیری (Learning Objectives - Bloom's Taxonomy)
دانشجو پس از مطالعهٔ این درس‌نامه باید بتواند:
- [ ] **درک کند (Understand):** چرا امنیت یک «قابلیت افزوده در پایان کار» نیست، بلکه شالوده و مسئولیت اصلی هر سازنده نرم‌افزار است، به خصوص در دورانی که کدهای هوش مصنوعی می‌توانند باگ‌های امنیتی پنهان ایجاد کنند.
- [ ] **درک کند (Understand):** نقشه راه ۹ درس‌نامه این فصل شامل: چک‌لیست پیش از انتشار، گاوصندوق Secretها و API Keyها، کنترل دسترسی و احراز هویت (Auth & Access)، اعتبارسنجی ورودی‌ها با Zod و مقابله با XSS، امنیت دیتابیس و آپلود فایل، مدیریت Dependencyها و زنجیره تأمین، محدودسازی نرخ درخواست (Rate Limiting) با Upstash Redis، و در نهایت هزینه، مالکیت فکری و اخلاق وایب کدینگ.
- [ ] **تحلیل/ارزیابی کند (Evaluate):** خطرات امنیتی نرم‌افزارهای ساخته شده با هوش مصنوعی (نظیر توهم پکیج‌های مخرب و آسیب‌پذیری‌های تزریق کد) را در برابر اعتماد کورکورانه به خروجی ایجنت‌ها ارزیابی کند.
- [ ] **به‌کار ببندد (Apply):** پروژه پورتفولیو را به سپرهای دفاعی لایه‌به‌لایه تجهیز کند تا هیچ کاربر نفوذگری نتواند داده‌ها را دستکاری کند یا هزینه‌های مالی سرسام‌آور تحمیل نماید.
---
## ۲. محدوده و مرزهای محتوا (Scope & Boundaries)
### آنچه باید پوشش داده شود (In-Scope):
1. **امنیت در عصر وایب کدینگ: هوش مصنوعی کد می‌نویسد، اما مسئولیت با شماست:**
* ایجنت‌ها کد کارآمد تولید می‌کنند، اما اغلب تدابیر امنیتی، اعتبارسنجی لبه‌ها و محدودیت‌ها را از قلم می‌اندازند.
2. **مرور سرفصل‌های تخصصی فصل ۱۱:**
* درس ۱۱.۲: چک‌لیست پیش از انتشار (Pre-Launch Checklist)؛ ارزیابی همه‌جانبه سیستم قبل از نمایش به عموم.
* درس ۱۱.۳: مدیریت و مهار Secretها و API Keyها؛ جلوگیری قطعی از نشت اطلاعات در مخازن و مرورگرها.
* درس ۱۱.۴: احراز هویت و کنترل دسترسی پیشرفته (Auth & RBAC)؛ محافظت از روت‌های پنل ادمین و تفکیک دسترسی‌ها.
* درس ۱۱.۵: اعتبارسنجی ورودی‌ها با Zod و ضدعفونی داده‌ها برای جلوگیری از حملات XSS و تزریق اسکریپت.
* درس ۱۱.۶: امنیت دیتابیس و اعتبارسنجی فایل‌های آپلودی در باکت‌های Supabase Storage (بررسی MIME و سایز).
* درس ۱۱.۷: مدیریت پکیج‌ها و امنیت زنجیره تأمین؛ رصد باگ‌ها با `npm audit` و پرهیز از پکیج‌های توهمی مخرب.
* درس ۱۱.۸: جلوگیری از حملات منع سرویس با محدودسازی نرخ درخواست (Rate Limiting) با Upstash Redis.
* درس ۱۱.۹: هزینه، مالکیت، کپی‌رایت کدهای AI و اخلاق حرفه‌ای مهندسی نرم‌افزار.
3. **تمرکز بر پروژه پورتفولیو:**
* تبدیل پورتفولیو از یک پروژه آسیب‌پذیر به یک قلعه امن دیجیتال و آماده عرضه جهانی.
4. **کال‌اوت آرامش‌بخش Quera (`<details class="green">`):** تغییر دیدگاه؛ امنیت به معنای پارانویا نیست، بلکه به معنای آسودگی خاطر برای خواب راحت شبانه توسعه‌دهنده است.
### آنچه نباید وارد آن شویم (Out-of-Scope):
- مباحث تخصصی رمزنگاری کوانتومی و تست نفوذ در لایه فیزیکی شبکه.
- استقرار سرورهای ابری و ست کردن رکوردهای دامنه (در فصل ۱۲ بررسی می‌شود).
---
## ۳. مفاهیم کلیدی و کلمات تخصصی (Key Concepts & Terms)
| اصطلاح انگلیسی | معادل فارسی مصوب | توضیح یک‌خطی ساده |
| :--- | :--- | :--- |
| Defense in Depth | دفاع چندلایه | استراتژی امنیتی که در آن چندین لایه محافظتی متوالی برای حفاظت از دارایی‌ها قرار می‌گیرد |
| Security by Design | امنیت در طراحی | رویکردی که در آن امنیت از نخستین خط کد و در تمام مراحل توسعه رعایت می‌شود |
| Pre-Launch Checklist | چک‌لیست پیش از انتشار | فهرست استاندارد کنترل نهایی برای اطمینان از سلامت، امنیت و پایداری قبل از عرضه عمومی |
| Responsible AI | هوش مصنوعی مسئولانه | پایبندی به اصول اخلاقی، قانونی، حفظ حریم خصوصی و امنیت در استفاده از فناوری‌های هوش مصنوعی |
---
## ۴. جایگاه‌های تصاویر و نمودارها (Visual & Diagram Placeholders)
> **راهنمای ایجنت نویسنده:** تمام تصاویر باید در پوشهٔ `images/` ذخیره شده و در جدول تک‌خانه‌ای وسط‌چین درج شوند:
1. **تصویر کاور درس:** `images/cover.png`
* **موضوع:** سپر دیجیتال نئونی درخشان با قفل طلایی که کدهای پروژه و سرورها را احاطه کرده است.
2. **نقشه راه جامع فصل ۱۱:** `images/chapter-11-roadmap.png`
* **موضوع:** اینفوگرافیک ۹ مرحله‌ای فصل ۱۱ با نمادهای چک‌لیست، کلید، قفل احراز هویت، Zod، باکت امن، پکیج سالم، Rate Limit و ترازوی اخلاق.
3. **هرم دفاع چندلایه در وب مدرن:** `images/defense-in-depth-layers.png`
* **موضوع:** دیاگرام هرمی لایه‌های محافظت: لایه ۱: اعتبارسنجی کلاینت $\rightarrow$ لایه ۲: ریت لیمیتینگ $\rightarrow$ لایه ۳: سرور اکشن و Zod $\rightarrow$ لایه ۴: RLS و دیتابیس.
---
## ۵. بخش‌بندی و ساختار محتوایی پیشنهادی درس‌نامه (`README.md`)
1. **تیتر اصلی:** `# اهداف فصل یازدهم: امنیت و استفاده مسئولانه؛ تبدیل نرم‌افزار به قلعه‌ای نفوذناپذیر`
2. **مقدمه کوتاه:** چرا یک اشتباه کوچک امنیتی می‌تواند ثمره ماه‌ها تلاش شما را یک‌شبه بر باد دهد؟
3. **جدول کاور درس**
4. **سرفصل‌های طلایی فصل در یک نگاه:** مرور ۹ ایستگاه دفاعی فصل.
5. **جدول نقشه راه یادگیری فصل**
6. **مسئولیت در عصر وایب کدینگ:** چرا هوش مصنوعی نمی‌تواند در دادگاه یا نزد کارفرما پاسخگوی باگ‌های امنیتی باشد؟
7. **پورتفولیوی شخصی در نقش نماد حرفه‌ای‌گری:** نشان دادن بلوغ مهندسی به کارفرمایان بزرگ با رعایت بالاترین استانداردهای امنیتی.
8. **کال‌اوت روحیه‌بخش Quera (`<details class="green">`):** امنیت یک مهارت جذاب و آرامش‌بخش است؛ وقتی قفل‌ها درست بسته شوند، با خیال آسوده به استراحت می‌پردازید.
---
## ۶. معیارهای پذیرش (Acceptance Criteria for Reviewer)
- [ ] اهداف کلان فصل ۱۱ و اهمیت مسئولیت‌پذیری در وایب کدینگ به روشنی تبیین شود.
- [ ] سرفصل‌های ۹ درس‌نامه بعدی با ذکر ابزارهای مصوب (Zod, Upstash, Supabase Storage) معرفی شوند.
- [ ] استراتژی دفاع چندلایه (Defense in Depth) به صورت مفهومی تشریح گردد.