בחירת רמות סיווג
כל ערוץ, שרת MCP, אינטגרציה ותוסף ב-Triggerfish חייבים לכלול רמת סיווג. עמוד זה עוזר לכם לבחור את הנכונה.
ארבע הרמות
| רמה | מה זה אומר | נתונים זורמים ל... |
|---|---|---|
| PUBLIC | בטוח לכולם לראות | לכל מקום |
| INTERNAL | לעיניכם בלבד — לא רגיש, אבל לא ציבורי | INTERNAL, CONFIDENTIAL, RESTRICTED |
| CONFIDENTIAL | מכיל נתונים רגישים שלעולם לא תרצו שיודלפו | CONFIDENTIAL, RESTRICTED |
| RESTRICTED | הרגיש ביותר — משפטי, רפואי, פיננסי, PII | RESTRICTED בלבד |
נתונים יכולים לזרום רק למעלה או הצידה, לעולם לא למטה. זהו כלל אי-כתיבה למטה ואין אפשרות לדרוס אותו.
שתי שאלות לשאול
עבור כל אינטגרציה שאתם מגדירים, שאלו:
1. מהם הנתונים הרגישים ביותר שמקור זה יכול להחזיר?
זה קובע את רמת הסיווג המינימלית. אם שרת MCP יכול להחזיר נתונים פיננסיים, הוא חייב להיות לפחות CONFIDENTIAL — גם אם רוב הכלים שלו מחזירים מטא-נתונים לא מזיקים.
2. האם הייתי בנוח אם נתוני הסשן היו זורמים אל יעד זה?
זה קובע את רמת הסיווג המקסימלית שתרצו להקצות. סיווג גבוה יותר אומר שה-Taint של הסשן מתגבר כשאתם משתמשים בו, מה שמגביל לאן הנתונים יכולים לזרום אחר כך.
סיווג לפי סוג נתונים
| סוג נתונים | רמה מומלצת | למה |
|---|---|---|
| מזג אוויר, דפי אינטרנט ציבוריים, אזורי זמן | PUBLIC | זמין באופן חופשי לכולם |
| הערות אישיות, סימניות, רשימות משימות | INTERNAL | פרטי אך לא מזיק אם נחשף |
| ויקי פנימי, מסמכי צוות, לוחות פרויקט | INTERNAL | מידע פנימי לארגון |
| דוא"ל, אירועי לוח שנה, אנשי קשר | CONFIDENTIAL | מכיל שמות, לוחות זמנים, קשרים |
| נתוני CRM, צינור מכירות, רשומות לקוחות | CONFIDENTIAL | רגיש עסקית, נתוני לקוחות |
| רשומות פיננסיות, חשבונות בנק, חשבוניות | CONFIDENTIAL | מידע כספי |
| מאגרי קוד מקור (פרטיים) | CONFIDENTIAL | קניין רוחני |
| רשומות רפואיות או בריאותיות | RESTRICTED | מוגנות חוקית (HIPAA וכו') |
| מספרי תעודת זהות, SSNs, דרכונים | RESTRICTED | סיכון גניבת זהות |
| מסמכים משפטיים, חוזים תחת NDA | RESTRICTED | חשיפה משפטית |
| מפתחות הצפנה, פרטי הזדהות, סודות | RESTRICTED | סיכון פריצה למערכת |
שרתי MCP
בעת הוספת שרת MCP ל-triggerfish.yaml, הסיווג קובע שני דברים:
- Taint של סשן — קריאה לכל כלי בשרת זה מעלה את הסשן לרמה זו
- מניעת כתיבה למטה — סשן שכבר "מזוהם" מעל רמה זו לא יכול לשלוח נתונים אל שרת זה
yaml
mcp_servers:
# PUBLIC — נתונים פתוחים, ללא רגישות
weather:
command: npx
args: ["-y", "@mcp/server-weather"]
classification: PUBLIC
# INTERNAL — מערכת הקבצים שלכם, פרטי אבל לא סודי
filesystem:
command: npx
args: ["-y", "@modelcontextprotocol/server-filesystem", "/home/you/docs"]
classification: INTERNAL
# CONFIDENTIAL — גישה למאגרים פרטיים, issues של לקוחות
github:
command: npx
args: ["-y", "@modelcontextprotocol/server-github"]
env:
GITHUB_PERSONAL_ACCESS_TOKEN: "keychain:github-pat"
classification: CONFIDENTIAL
# RESTRICTED — מסד נתונים עם PII, רשומות רפואיות, מסמכים משפטיים
postgres:
command: npx
args: ["-y", "@mcp/server-postgres"]
env:
DATABASE_URL: "keychain:prod-db-url"
classification: RESTRICTEDדחייה כברירת מחדל אם תשמיטו classification, השרת נרשם
כ-UNTRUSTED וה-Gateway דוחה את כל קריאות הכלים. עליכם לבחור רמה במפורש. :::
סיווגי שרתי MCP נפוצים
| שרת MCP | רמה מוצעת | נימוק |
|---|---|---|
| Filesystem (מסמכים ציבוריים) | PUBLIC | חושף רק קבצים הזמינים לציבור |
| Filesystem (תיקיית בית) | INTERNAL | קבצים אישיים, לא סודיים |
| Filesystem (פרויקטי עבודה) | CONFIDENTIAL | עשוי להכיל קוד או נתונים קנייניים |
| GitHub (מאגרים ציבוריים בלבד) | INTERNAL | הקוד ציבורי אבל דפוסי שימוש הם פרטיים |
| GitHub (מאגרים פרטיים) | CONFIDENTIAL | קוד מקור קנייני |
| Slack | CONFIDENTIAL | שיחות בעבודה, עשויות להיות רגישות |
| מסד נתונים (ניתוח/דיווח) | CONFIDENTIAL | נתונים עסקיים מצטברים |
| מסד נתונים (ייצור עם PII) | RESTRICTED | מכיל מידע מזהה אישית |
| מזג אוויר / שעה / מחשבון | PUBLIC | ללא נתונים רגישים |
| חיפוש אינטרנט | PUBLIC | מחזיר מידע זמין לציבור |
| דוא"ל | CONFIDENTIAL | שמות, שיחות, קבצים מצורפים |
| Google Drive | CONFIDENTIAL | מסמכים עשויים להכיל נתונים עסקיים רגישים |
ערוצים
סיווג ערוץ קובע את התקרה — הרגישות המקסימלית של נתונים שניתן לשלוח לערוץ זה.
yaml
channels:
cli:
classification: INTERNAL # הטרמינל המקומי שלכם — בטוח לנתונים פנימיים
telegram:
classification: INTERNAL # הבוט הפרטי שלכם — אותו דבר כמו CLI לבעלים
webchat:
classification: PUBLIC # מבקרים אנונימיים — נתונים ציבוריים בלבד
email:
classification: CONFIDENTIAL # דוא"ל פרטי אבל יכול להיות מועברבעלים לעומת לא-בעלים עבור הבעלים, לכל הערוצים יש את אותה רמת
אמון — אתם זה אתם, ללא קשר לאיזו אפליקציה אתם משתמשים. סיווג ערוץ חשוב בעיקר עבור משתמשים שאינם בעלים (מבקרים ב-webchat, חברים בערוץ Slack וכו') כאשר הוא שולט אילו נתונים יכולים לזרום אליהם. :::
בחירת סיווג ערוץ
| שאלה | אם כן... | אם לא... |
|---|---|---|
| האם זר יכול לראות הודעות בערוץ זה? | PUBLIC | המשיכו לקרוא |
| האם ערוץ זה רק עבורכם באופן אישי? | INTERNAL או גבוה | המשיכו לקרוא |
| האם הודעות יכולות להיות מועברות, מצולמות מסך או נרשמות על ידי צד שלישי? | הגבילו ל-CONFIDENTIAL | יכול להיות RESTRICTED |
| האם הערוץ מוצפן קצה-לקצה ובשליטתכם המלאה? | יכול להיות RESTRICTED | הגבילו ל-CONFIDENTIAL |
מה קורה כשטועים
נמוך מדי (לדוגמה, שרת CONFIDENTIAL מסומן PUBLIC):
- נתונים מהשרת הזה לא יעלו את Taint של הסשן
- הסשן יכול להזרים נתונים מסווגים לערוצים ציבוריים — סיכון דליפת מידע
- זה הכיוון המסוכן
גבוה מדי (לדוגמה, שרת PUBLIC מסומן CONFIDENTIAL):
- Taint של הסשן מתגבר שלא לצורך בעת שימוש בשרת זה
- תיחסמו מלשלוח לערוצים בעלי סיווג נמוך יותר אחר כך
- מעצבן אבל בטוח — עדיף לטעות לכיוון גבוה מדי
כשיש ספק, סווגו גבוה יותר. תמיד תוכלו להוריד את הרמה מאוחר
יותר לאחר בדיקת אילו נתונים השרת מחזיר בפועל. סיווג חסר הוא סיכון אבטחה; סיווג יתר הוא רק אי-נוחות. :::
מפל ה-Taint
הבנת ההשפעה המעשית עוזרת לכם לבחור בחוכמה. הנה מה שקורה בסשן:
1. הסשן מתחיל ב-PUBLIC
2. אתם שואלים על מזג האוויר (שרת PUBLIC) → Taint נשאר PUBLIC
3. אתם בודקים את ההערות שלכם (filesystem INTERNAL) → Taint עולה ל-INTERNAL
4. אתם מבצעים שאילתה ב-GitHub issues (CONFIDENTIAL) → Taint עולה ל-CONFIDENTIAL
5. אתם מנסים לפרסם ב-webchat (ערוץ PUBLIC) → נחסם (הפרת כתיבה למטה)
6. אתם מאפסים את הסשן → Taint חוזר ל-PUBLIC
7. אתם מפרסמים ב-webchat → מותראם אתם משתמשים לעתים קרובות בכלי CONFIDENTIAL ואחריו בערוץ PUBLIC, תצטרכו לאפס לעתים קרובות. שקלו אם הכלי באמת צריך CONFIDENTIAL, או אם הערוץ יכול להיות מסווג מחדש.
נתיבי מערכת קבצים
ניתן גם לסווג נתיבי מערכת קבצים בודדים, מה שמועיל כאשר לסוכן יש גישה לתיקיות עם רגישות מעורבת:
yaml
filesystem:
default: INTERNAL
paths:
"/home/you/public": PUBLIC
"/home/you/work/clients": CONFIDENTIAL
"/home/you/legal": RESTRICTEDרשימת בדיקה
לפני עלייה לאוויר עם אינטגרציה חדשה:
- [ ] מהם הנתונים הגרועים ביותר שמקור זה יכול להחזיר? סווגו ברמה זו.
- [ ] האם הסיווג לפחות גבוה כמו שטבלת סוג הנתונים מציעה?
- [ ] אם זה ערוץ, האם הסיווג מתאים לכל הנמענים האפשריים?
- [ ] האם בדקתם שמפל ה-Taint עובד עבור תהליך העבודה הטיפוסי שלכם?
- [ ] כשיש ספק, האם סיווגתם גבוה יותר ולא נמוך יותר?
עמודים קשורים
- כלל אי-כתיבה למטה — כלל זרימת הנתונים הקבוע
- הגדרות — מדריך YAML מלא
- MCP Gateway — מודל אבטחת שרת MCP
