דלג לתוכן הראשי

אימות והרשאות

מערכת האימות מבוססת JWT עם תמיכה ב-access token ו-refresh token.

ארכיטקטורה

מקור: src/auth/

זרימת אימות

  1. משתמש שולח פרטי התחברות ל-POST /auth/login
  2. השרת מאמת סיסמה מול bcrypt hash
  3. מונפקים access token (15 דקות) ו-refresh token (7 ימים)
  4. Refresh token נשמר ב-Redis (hashed)
  5. בכל בקשה, JwtAuthGuard מאמת את ה-access token

שרשרת האבטחה

JwtAuthGuard → PermissionsGuard → RateLimitGuard → AccountLockoutGuard → TenantInterceptor

נקודות קצה

שיטהנקודת קצהתיאור
POST/auth/loginהתחברות
POST/auth/registerהרשמת משתמש חדש
POST/auth/refreshחידוש access token
POST/auth/logoutהתנתקות (ביטול tokens)
POST/auth/change-passwordשינוי סיסמה

אבטחה

  • סיסמאות מוצפנות עם bcrypt (עלות ≥ 12)
  • Rate limiting על כל endpoints של אימות
  • נעילת חשבון אחרי ניסיונות כושלים חוזרים
  • כל ה-tokens מבוטלים בשינוי סיסמה
  • סודות JWT מגיעים ממשתני סביבה בלבד