דלגו לתוכן

אימות

כל בקשת API של RedCloud מאומתת ותחומה ל-Tenant. ה-API תומך במספר סוגי אישורים, הנבדקים לפי סדר עדיפות. לאוטומציה, השתמשו במפתח API פר-משתמש.

סוגכותרתהערות
מפתח master (break-glass)X-Master-Key (+ X-Break-Glass-Reason בייצור)כפוף-ממשל, תחום, מבוקר; כבוי כברירת מחדל
JWT sessionAuthorization: Bearer <token>מנגנון ה-session של ממשק הווב
מפתח API פר-משתמשX-API-Key: cspm_…מומלץ לאוטומציה; מאומת מול ה-DB
מפתח API גלובליX-API-Key: <מפתח מוגדר>מדור קודם; תפקיד מוגבל בייצור

אם לא סופק אישור תקף, ייצור מחזיר 401 UNAUTHORIZED.

צרו מפתח תחת ניהול מערכת → User Management → API Keys, ושלחו אותו בכותרת X-API-Key:

Terminal window
curl "https://<your-host>/scans" \
-H "X-API-Key: cspm_xxxxxxxxxxxxxxxx"

מפתחות פר-משתמש נושאים את ההרשאות של תפקידם, הנפתרות חיות מבסיס הנתונים בכל בקשה (כך ששינויי תפקיד נכנסים לתוקף תוך שניות). אם אימות המפתח לא מצליח להגיע לבסיס הנתונים, הבקשה נכשלת במצב סגור (503), ולעולם אינה יורדת לאישור חלש יותר.

אפליקציית הווב מתחברת דרך POST /auth/login (אימייל/סיסמה, אופציונלית עם קוד TOTP), שמחזיר access token (קצר-מועד) ו-refresh token. שלחו את ה-access token ככותרת Authorization: Bearer <token>; רעננו עם POST /auth/refresh.

הזהות המאומתת קובעת את ה-Tenant; ה-API מגדיר אותו מתוך ה-tenant_id שב-JWT. כותרת הבקשה X-Tenant-ID מכובדת רק עבור משתמשים מורשים מספיק (master, או גם admin.users וגם admin.settings). ה-Tenant שנפתר מוחזר בכותרת התגובה X-Tenant-ID. אין גישה חוצת-Tenant.

מפתח ה-master מיועד לחירום: כבוי כברירת מחדל, מופעל רק עם BREAK_GLASS_ENABLED=true ו-MASTER_KEY מוגדר, מוגבל-קצב, תחום-זמן, ומבוקר במלואו. הוא מעניק מערך הרשאות תחום — לעולם לא wildcard — ולעולם אינו עוקף בידוד Tenant.

Terminal window
# התחברות (JWT)
curl -X POST "https://<your-host>/auth/login" \
-H "Content-Type: application/json" \
-d '{"email":"me@example.com","password":"…"}'
# שימוש ב-access token
curl "https://<your-host>/auth/me" \
-H "Authorization: Bearer <access_token>"
  • כל נקודות הקצה זמינות גם תחת קידומת /api/v1 (ראו נקודות קצה).
  • כל בקשה נושאת X-Correlation-ID שאפשר לצטט לתמיכה.
  • חלק מנקודות הקצה דורשות בנוסף MFA או תכונה ברישיון — ראו הרשאות והיקפים.