سیستم مستندات یکپارچه

Knowledge - Security

امنیت

این بخش فقط لیست فایل نیست؛ کنترل‌های امنیتی قابل مشاهده از روی dependencyها، routeها و فایل‌های auth/permission/guard/secret تحلیل شده‌اند. هرجا شواهد کافی نبوده، وضعیت نیازمند بررسی انسانی باقی مانده است.

کنترل‌های امنیتی شناسایی‌شده

کنترلوضعیتتوضیحشاهد
Authorization / RBACشاهد مستقیم پیدا شدفایل‌های permission، role یا guard نشان می‌دهند که دسترسی فقط بر اساس login نیست و سطح مجوز هم بررسی می‌شود.permission/role/guard files
Audit Loggingشاهد مستقیم پیدا شدرخدادهای امنیتی یا عملیاتی قابل ثبت و بازبینی هستند.audit files/endpoints

جریان امنیتی درخواست

Mermaid sequence diagram - auth/authorization flow

sequenceDiagram
  autonumber
  participant U as کاربر
  participant UI as Next.js UI
  participant API as FastAPI
  participant Dep as Auth Dependency
  participant Store as Data Store
  U->>UI: ورود یا درخواست قابلیت
  UI->>API: ارسال token/request
  API->>Dep: بررسی user، tenant، license و permission
  Dep-->>API: مجوز یا خطای دسترسی
  API->>Store: اجرای عملیات مجاز
  Store-->>UI: پاسخ با داده مجاز

تحلیل ریسک و توصیه‌ها

ریسک‌های زیر از نوع قابلیت‌ها و فایل‌های امنیتی استخراج شده‌اند و برای production باید با تست و تنظیمات runtime کامل شوند.

  • برای هر endpoint حساس، policy دسترسی و تست 401/403 جداگانه ثبت شود.
  • مقادیر env، token، password و connection string فقط با نام متغیر مستند شوند و مقدار واقعی نمایش داده نشود.
  • رخدادهای login، تغییر permission، تغییر تنظیمات و عملیات destructive در audit log قابل ردیابی باشند.
  • برای upload فایل، محدودیت نوع/حجم، مسیر ذخیره‌سازی، مالکیت فایل و scan امنیتی بررسی شود.
  • تنظیمات CORS، CSRF/session یا bearer token در محیط production جدا از تنظیمات local بازبینی شود.

منابع کد امنیتی

  • apps/web-frontend/app/me/permissions/page.tsx
  • apps/web-frontend/components/auth/AuthGate.tsx
  • apps/web-frontend/components/auth/FeatureGate.tsx
  • apps/web-frontend/components/auth/LoginForm.tsx
  • apps/web-frontend/components/auth/PermissionGuard.tsx
  • apps/web-frontend/lib/auth.ts
  • docs/auth-licensing-tenancy-fa.md
  • src/elevator_bible/auth/__init__.py
  • src/elevator_bible/auth/dependencies.py
  • src/elevator_bible/auth/models.py
  • src/elevator_bible/auth/passwords.py
  • src/elevator_bible/auth/permissions.py
  • src/elevator_bible/auth/service.py
  • tests/auth_test_utils.py
  • tests/test_auth_licensing_tenancy.py