$ man how-to/team-security-cloud-guardrails
אבטחהadvanced
אמצעי אבטחה לצוותי ענן
הגנת branch, ניהול סודות, ובקרת גישה לצוותים שפורסים סוכנים
by Shawn Tenam
ארכיטקטורת האבטחה
סוכני AI עם גישה למערכות פרודקשן צריכים אמצעי הגנה. לא הגבלות פרנואידיות שהופכות אותם לחסרי תועלת, אלא גבולות מעשיים שמונעים טעויות קטסטרופליות.
לארכיטקטורה יש שלוש שכבות. ראשית, מה רץ מקומית לעומת מה רץ בענן. פעולות רגישות - ניהול מפתחות API, מיגרציות מסדי נתונים, רוטציית סודות - נשארות על מכונות מקומיות שבהן יש לך שליטה פיזית. עומסי עבודה של סוכנים שמעבדים נתונים ומייצרים פלט רצים בענן שם הם מתרחבים.
שנית, הגנות ברמת ריפו. כללי הגנת branch מונעים מסוכנים לדחוף ישירות ל-main. סקירות נדרשות מבטיחות שבן אדם רואה כל שינוי לפני שהוא מגיע לפרודקשן. hooks של pre-push סורקים סודות, מפתחות API, ונתונים מזהים של שותפים לפני שמשהו יוצא מהמכונה שלך.
שלישית, אמצעי הגנה בזמן ריצה ב-Claude Code עצמו. כללי CLAUDE.md מגדירים מה הסוכן יכול ולא יכול לעשות. הסוכן מכבד את הכללים האלה כי הם נטענים להקשר בתחילת הסשן.
PATTERN
מקומי מול ענן לפעולות רגישות
שמור מקומית: קבצי .env, רוטציית מפתחות API, הרשאות מסדי נתונים, מפתחות SSH, נתוני שותפים, כל דבר שדליפה שלו תהיה קטסטרופלית.
דחוף לענן: קוד סוכן, הגדרות תהליכי עבודה, נתונים מעובדים (אנונימיים), תוכן מיוצר, artifacts לפריסה.
הכלל: אם הנתונים קיימים במקום אחד (המכונה שלך) ודליפה שלהם פירושה להתקשר לכל לקוח, שמור מקומית. אם הנתונים מיוצרים או נגזרים ולאבד אותם פירושו להריץ סקריפט מחדש, הם יכולים לעלות לענן.
לסוכנים על Railway או דומה: העבר סודות כמשתני סביבה בדשבורד האירוח. לעולם אל תעשה commit לסודות. לעולם אל תרשום אותם בלוג. לעולם אל תכלול אותם בהודעות שגיאה. קוד הסוכן מתייחס ל-process.env.API_KEY, לא למפתח עצמו.
CODE
הגנת Branch וסקירה
הגדרות הגנת branch ב-GitHub לצוותים עם סוכני AI:
1. דרוש סקירות pull request לפני מיזוג ל-main. גם אם הסוכן כתב את הקוד, בן אדם סוקר אותו.
2. דרוש שבדיקות סטטוס יעברו. הרץ את חבילת הבדיקות וסריקת אבטחה לפני כל מיזוג.
3. דרוש שה-branches יהיו מעודכנים לפני מיזוג. אין מיזוג של branches ישנים שיוצרים התנגשויות.
4. הגבל מי יכול לדחוף ל-main. סוכנים דוחפים ל-feature branches. בני אדם ממזגים ל-main.
Hooks של pre-push מוסיפים שכבה נוספת. ה-Husky pre-push hook סורק כל commit לדפוסים שלעולם לא צריכים להידחף: מפתחות API (מחרוזות שמתאימות לדפוסי מפתחות), שמות שותפים (מרשימת חסימה מקומית), תכני קבצי .env, וקבצים בינאריים גדולים. הדחיפה נכשלת אם דפוס כלשהו נמצא.
PRO TIP
Claude Code כשכבת אבטחה
Claude Code עצמו אוכף אבטחה דרך כללי CLAUDE.md. זה לא מוערך מספיק.
הוסף כללים כמו: "לעולם אל תעשה commit לקבצי .env. לעולם אל תרשום מפתחות API בלוג. לעולם אל תכלול שמות שותפים בהודעות commit. תמיד בדוק .gitignore לפני הוספת קבצים. הרץ את סריקת רשימת החסימה של pre-push לפני כל דחיפה."
הסוכן מקיים את הכללים האלה כי הם נמצאים בהקשר שלו. הוא הופך לשותף מודע אבטחה. כשאתה אומר לו לדחוף קוד, הוא מריץ את הסריקה קודם. כשאתה אומר לו להוסיף קובץ, הוא בודק .gitignore קודם. כשאתה אומר לו לרשום מידע debug, הוא מנקה ערכים רגישים.
זה לא חסין תקלות. זו שכבה באסטרטגיית הגנה לעומק. בשילוב עם הגנת branch, hooks של pre-push, וניהול סודות, זה מכסה את מצבי הכשל הנפוצים שבהם צוותים בטעות מדליפים הרשאות או דוחפים נתונים רגישים.
knowledge guide
מדריכים קשורים