GH GambleHub

בקרת גישה ו ־ RBAC ב ־ API

1) מדוע API גישה לבקרת

האישור הוא התשובה לשאלה "האם השחקן הזה יכול לבצע את הפעולה הזו על המשאב הזה עכשיו? ». שגיאות מובילות להדלפות בולה/IDOR, הסלמת זכויות והפרת דרישות הרגולציה. המטרה היא לבנות מודל רב-דרגתי: perymetre service mash # access rules, עם מדיניות מפורשת ובדיקות ברמת האובייקט.

2) מודלי הרשאה: מתי לבחור מה

RBAC (בקרת גישה מבוססת תפקידים) - תפקידים להרשאות. פשוט, יציב, אבל נוטה ל ”פיצוץ תפקידים”.
החלטה על מאפייני הנושא/אובייקט/הקשר (מדינה, רמת KYC, בעל משאבים, סיכון).
REBAC (מערכת יחסים מבוססת) - גרף יחסים (בעלים, חבר צוות, ”מנהל פרויקטים”); פותר היררכיות מורכבות.
Scopes (OAuth) - חוזה בין הלקוח לבין שרת המשאבים אודות ”אזור הגישה” (לדוגמה, ”תשלומים: לכתוב”).
תרגול: RBAC עבור מטריצות בסיסיות, ABAC עבור הקשר ואילוצים, REBAC עבור היררכיות מורכבות (תיקיות, ארגונים, מגבלות ואילוצים).

3) טקסונומיה של משאבים ומעשים

Hierarchies: 'org ac project accession'. ירושה של זכויות מלמעלה למטה עם ”מגבלות אפשריות”.
פעולות: CROD + domain-specific (”לאשר”, ”להחזיר”, ”ליישב”).
מאפייני משאבים: בעלים, אזור, סטטוס, תגי סיכון (AML/KYC), גבולות.
Multi-terency: כל הפתרונות מכילים "דייר _ id'; מכחיש על ידי ברירת מחדל.

4) ארכיטקטורה: היכן מתקבלת ההחלטה

PEP (נקודת אכיפת מדיניות) - אתר אימות: שער/API-שער, מחית סירה, שירות עצמו.
PDP (Policy Decision Point) - מנוע מדיניות: מרוכז (OPA-service, Cedar-engine) או ספרייה מובנית.
PIP (Policy Information Point) - מקורות ייחוס: תיקיית משתמש/תפקיד, פרופיל דייר, CCP/סיכון, מפת בעלות על משאבים.
PAP (נקודת מינהל מדיניות) - ניהול מדיניות, הוצאה לאור, ביקורת.

המלצה: PDP + מטמון תמיסות מקומי מרוכז ב PEP; אובייקט מורכב בודק בשירות בנוכחות אינווריאנטים תחום.

5) אסימונים, בולים וזהות

OIDC/OAuth2: "sub" (מזהה נושא), "aud' (שירות יעד)," scope "/" תפקידים "," דייר "," kyc _ level "," סיכון _ tier ".
JWT: חתימת RS/ES, קיצור ”exp”, שחרור מחדש על ידי רענון. אל תשים מח "ש; השתמש 'jti' לשלילת/ביקורת מסלול.
MTLS/HMAC: שירות לשירות ושותפים; בולים נשלפים מהספרייה על ידי 'client _ id'.
התקן/הקשר: IP/ASN, geo, time of day - התחברות לפתרון ABAC (למשל, איסור על כתיבה מחוץ לשעות העבודה).

6) אישור ברמת אובייקט (בולה-ראשון)

כל פעולה חייבת להגיב ל "האם הנושא הוא הבעלים/בעל הזכות ל-" resource _ id'? ".

בדיקת בעלות: "משאב. owner_id = = נושא. זיהוי או חברות ב ”אורג” עם תפקיד.
דגימות סינון: תמיד לכסות 'איפה משאב. tenant_id =: דייר ו... '(אבטחה ברמה שורה).
עבור פעולות ייחוס (זיהוי בנתיב/גוף) - לנרמל ולאמת ללוגיקה עסקית.

7) עיצוב RBAC: תפקידים, הרשאות, סטים

הרשאות - זכויות אטומיות: "ארנק. לקרוא ”, ארנק”. לכתוב ',' תשלום. החזר כספי.
תפקידים - שמות הרשאה סטים: 'הערצה', תמיכה. לקרוא, ”קופאי”, הונאה. אנליסט ".

Scopes - חוזה חיצוני ללקוחות (מיפוי הרשאות להיקף)

הימנע מתפקידים מתפוצצים:
  • תפקידי בסיס + חבילות הרשאה,
  • הגבלות ABAC (מדינה/אזור/דייר),
  • ”גישה בדיוק בזמן”.

8) אילוצי ABAC/הקשר

Geo/שיפוט: איסור כתיבה ממדינות אסורות (סנקציות/רגולציה).
זמן/סיכון: ”סיכון _ ציון <סף” עבור פעולות גדולות.
ACC/limits: ”kyc _ level> = 2” עבור סיכות> X; שליטה על ”התקררות” בין עסקאות.
”מכשירים מהימנים”: דורשים mTLS לשותפים במסלולים מסוכנים.

9) REBAC וגרף זכויות

שימושי למבנים עסקיים מורכבים (קבוצות, קבוצות, מותגים, סניפים).

מערכות יחסים: ”חבר”, ”הערצה”, ”בעלים”, ”צופה”.
זכויות נגזרות: ”הצופה” של המשאב עובר בירושה מ ”חבר” של הפרויקט ששייך ל ”org”.
אחסון גרף: מסד נתונים עם מטריצת יחסים, שירות מיוחד (ברוח גישת זנזיבר). מטמון 'צ' ק (נושא, יחס, אובייקט) 'תגובות.

10) מטמון וביצועים

מטמון PDP ברמת PEP (לדוגמה, בשער) עם המפתח: 'sub' terenant' resource 'action' policy _ version '.
TTL קצר (שניות-דקות) + נכות על ידי אירוע: תפקיד/מערכת יחסים/שינוי דייר.
צ 'קים (batch authorz) עבור רשימות: הפחתת מטעני PDP.
מדידת פתרונות לינה; במהלך השפלה - השפלה חיננית-חיננית בלבד לקריאה (לעולם לא לכתיבה/כסף).

11) דוגמאות מדיניות

11. 1 בולי JWT * PEP מחוספס (פסאודו-שער)

yaml
- match: { prefix: "/api/v1/wallets" }
authz:
require:
- claim: "aud"
equals: "wallet-service"
- claim: "scope"
includes_any: ["wallet. read", "wallet. write"]
context:
tenant_from: "claim:tenant"

11. 2 אופ "א/רגו (ABAC + בולה)

rego package authz

default allow = false

allow {
input. action == "wallet. read"
input. subject. tenant == input. resource. tenant some role role:= input. subject. roles[_]
role == "support. read"
}

allow {
input. action == "payment. refund"
input. subject. tenant == input. resource. tenant input. subject. kyc_level >= 2 input. subject. risk_tier <= 2 input. subject. id == input. resource. owner_id # BOLA
}

11. 3 הגבלת סמכות שיפוט (מדיניות רשימות מכחישות)

rego deny[msg] {
input. action == "withdraw. create"
input. context. country in {"IR","KP","SY"}
msg:= "Jurisdiction not allowed"
}

11. 4 מדיניות REBAC (פסאודו)


allow(subject, "wallet. write", wallet) --
related(subject, "member", wallet. project) ∧ related(subject, "admin", wallet. org)   ∧ wallet. tenant == subject. tenant.

12) מדיניות וניהול גרסה

מדיניות (”policy _ version”) וקנרית לשינויים מסוכנים.
"יבש-run' (יבש-run/shadow החלטות) - רישום" let/dember "ללא השפעה.
מדריך מדיניות ונדידה: מי השתנה מתי ולמה; מיפוי לתקריות.
בדיקות לתרחישים שליליים (מקרים אסורים) - נדרש במצ "ח.

13) יכולת תצפית וביקורת

רישומי החלטות: ”trace _ id',” subject', ”terant',” action ”,” resource _ id', ”surve”, ”policy _ version”, סיבה לכישלון.
Metrics: 'authz _ decision _ latency', 'authz _ ended _ total _ action', נתח של ניסיונות בולה, cache hit-rate.
לוחות מחוונים: כישלונות עליונים על ידי פעולות/דיירים, מגמות לאחר שחרורי מדיניות.

14) בטיחות וקיימות

מכחיש כברירת מחדל: אין אישור מפורש = להכחיש.
כשל סגור: כאשר ה-PDP אינו זמין, כתיבה ביקורתית = = אסורה (או מושפלת ל ”קבוצה המינימלית” של תפקידים מאומתים לחלוטין).
"שמירה-checks' מקומית בתוך שירותים לאינווריאנטים קריטיים (לדוגמה," דייר "/" בעלים ").
מזעור סימני היכר ב-JWT; טען תכונות רגישות באמצעות PIP מעל ערוץ מאובטח.

15) פרטים של iGaming/Finance

תפקידים: ”קופאית”, ”קיק”. סוכן ',' aml. אדוני השוטר, הונאה. אנליסט, אח "מים. מנהל ”,” סיכון. מעריץ.
הגבלות: העברות תשלום תלויות ב ”kyc _ level”, גבולות של תשלומים אחראיים, מצב/סנקציות AML.
נעילה: ”org/brang/pace/payment _ instrument” - מסנני ABAC בכתיבה.
רישומי ביקורת ללא שינוי לפעולות KYC/AML/pin; אחסון לפי מועדים רגולטוריים.
API שותף: mTLS + חוזה ”סקופים” במסלולים, מסנני GEO/ASN בהיקף.

16) בדיקה ואימות

מטריצה שלילית: לרשום מקרים ”אסורים” מפורשים ולתקן עם בדיקות.
אישור FUZ: החלפה של ”terenant _ id',” בעלים _ id', עקיפה של מסננים בעת התאמה/מיון.
בדיקת עומס PDP: בדוק את האיחור וההתנהגות של המטמונים ב- p95/p99.
שחרור מדיניות: run-run + canary + auto-test עם מכחיש/מאפשר צפוי.
תקריות: שידור חוזר של בקשות על דוכן העדים עם גירסה מדויקת של מדיניות.

17) תרופות אנטי ־ פטריות

להסתמך רק על ”היקף” ללא בדיקת אובייקטים (בולה).
לערבב היגיון עסקי ובדיקות זכויות בכל מפעיל ללא מודל ריכוזי.
תפקידי הארדקוד ב UI ואמון פתרונות לקוח.
היעדר מסנני ”דייר ”/” בעלים” בבקשות לבסיס הנתונים (קריאה דולפת).
אין פתרון מטמון נכות בעת שינוי תפקידים/יחסים.
ג 'יי-וי-טי ארוך ימים ללא זיכרון/סיבוב.

18) רשימת מוכנות למומחים

[ ] משאבים/פעילויות, היררכיות וריבוי דירות מוגדרות.
[ ] מטריצות RBAC בסיסיות + מגבלות ABAC,
[ ] PDP/PEP מתוכננים; יש מטמון פתרון מקומי והנכות שלו.
[ מדיניות ] ממצה, בדיקות תרחיש שליליות במודיעה.
[ ] בולה בודקת כל כתיבה/קריאה ל "משאב _ id' ספציפי.
[ ] JWT עם בולים מינימליים, 'exp קצר'; ביקורת חשבונות/זכרון על 'jti'.
[ ] מטריצות/רישומי החלטות, לוחות מחוונים, התראות על ידי הכחשה/איחור.
[ ] אל-כשל לכתיבה ביקורתית; מצב הגיבוי מתועד.
[ תיעוד לקוח ]: ”סקופים”, קודי שגיאה (401/403/404/409), דוגמאות.

19) TL; DR

לבנות אישור בולה-ראשון: מטמון PDP + מרכזי, RBAC כבסיס, ABAC עבור הקשר, ReBAC עבור מערכות יחסים. כל הבקשות נמצאות בהקשר של "דייר" ו "משאב _ id' ספציפי; מכחיש כברירת מחדל, קצר JWT, מסנני אובייקטים בבסיס הנתונים. מדיניות גירסה ובדיקה, מדידת איחור/הכחשה, שידור חוזר של תקריות. עבור iGaming - תפקידים בודדים (KYC/AML/cash register), הגבלת ABAC קשה וביקורת בלתי ניתנת לשינוי.

Contact

צרו קשר

פנו אלינו בכל שאלה או צורך בתמיכה.אנחנו תמיד כאן כדי לעזור.

Telegram
@Gamble_GC
התחלת אינטגרציה

Email הוא חובה. Telegram או WhatsApp — אופציונליים.

השם שלכם לא חובה
Email לא חובה
נושא לא חובה
הודעה לא חובה
Telegram לא חובה
@
אם תציינו Telegram — נענה גם שם, בנוסף ל-Email.
WhatsApp לא חובה
פורמט: קידומת מדינה ומספר (לדוגמה, +972XXXXXXXXX).

בלחיצה על הכפתור אתם מסכימים לעיבוד הנתונים שלכם.