M365Con 2027 – כנס אונליין חינמי · 11–22 Jan 2027 · 120 sessions→ m365con.net

בלוג · Mirko Peters

GitHub מול Azure DevOps: בחירת פלטפורמת ה-CI/CD המתאימה לאנליטיקה ארגונית

By · · Updated

כאשר מתכננים פלטפורמות אנליטיקה ארגוניות מודרניות כמו Microsoft Fabric, בחירת שכבת האינטגרציה והפריסה המתמשכות (CI/CD) היא החלטה ארכיטקטונית קריטית…

Automatically translated with AI from the original post. Read the English original

כאשר מתכננים פלטפורמות אנליטיקה ארגוניות מודרניות כמו Microsoft Fabric, בחירת שכבת ה-CI/CD הנכונה היא החלטה ארכיטקטונית קריטית. ארגונים רבים מוצאים את עצמם בצומת דרכים, ובוחנים בין GitHub לבין Azure DevOps. שתי הפלטפורמות צמחו מתוך המערכת הרחבה של כלי הפיתוח של Microsoft, אך הן משרתות תהליכי עבודה היסטוריים שונים, פרדיגמות ממשל שונות ומבני קהילה שונים. הבנה של האופן שבו כל כלי מטפל בממשל, בניהול ארטיפקטים ובגמישות של צינורות העבודה תקבע את אסטרטגיית הפריסה שלכם ותכריע את הצלחתה הכוללת של הפלטפורמה.

כדי להעמיק בדילמה הארכיטקטונית הזו ולשמוע פירוט מלא של האופן שבו הכלים משפיעים על פריסות הנתונים שלכם, הקשיבו לפרק הקשור שלנו: GitHub vs Azure DevOps for Microsoft Fabric CI/CD.

הסבר על בעלות בפריסה

Deployment Ownership Explained

מהי בעלות בפריסה

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

קוד וארטיפקטים

אתם מנהלים את קוד המקור והארטיפקטים בפלטפורמות ה-DevOps. רכיבים אלה מהווים את הבסיס של צינור המסירה שלכם. להלן הרכיבים העיקריים שמרכיבים בעלות בפריסה בכלי DevOps מודרניים:

  • מעקב אחר קוד מקור
  • בדיקות
  • פריסה
  • ניהול תשתית
  • מעקב אחר בניות
  • ניהול סודות
  • ניהול גרסאות שחרור

משתמשים בכלי DevOps כדי להפוך את השלבים האלה לאוטומטיים. אוטומציה עוזרת לכם לספק עדכונים מהר יותר ומפחיתה שגיאות. אתם שומרים על בטיחות הקוד ומוודאים שהארטיפקטים תואמים לגרסאות שנבדקו. אתם עוקבים אחר בניות ושחרורים כדי לשמור על עקביות בין הסביבות.

גישה וממשל

אתם שולטים בגישה לכלי DevOps ומגדירים מדיניות ממשל. אתם מחליטים מי יכול לצפות, לערוך או לפרוס קוד. אתם משתמשים באוטומציה כדי לאכוף כללים ולנטר פעילות. ממשל מבטיח שהצוות פועל לפי התקנים במהלך הפיתוח והמסירה. אתם רושמים פעולות ובודקים שינויים כדי להגן על תהליך פיתוח התוכנה שלכם.

למה הבעלות חשובה

בעלות נותנת לכם שליטה על סביבת ה-DevOps שלכם. אתם מגנים על צינור המסירה מפני סיכונים ושומרים על אבטחת הפיתוח. אתם שומרים על תאימות לרגולציה ותומכים בשליטה תפעולית. הטבלה שלהלן מראה מדוע בעלות בפריסה היא קריטית ב-DevOps:

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

משתמשים בכלי DevOps כדי לבנות מסגרת ממשל חזקה. אתם מקבלים אוטונומיה ומאפשרים לצוותים לעבוד באופן עצמאי. אתם מנהלים סיכונים ושומרים על אמינות תהליך המסירה. אוטומציה תומכת במטרות האלה על ידי הפיכת הפיתוח והמסירה ליעילים יותר.

טיפ: כאשר אתם הבעלים של צינור ה-DevOps שלכם, אתם יכולים להגיב במהירות לשינויים ולשמור על פיתוח התוכנה שלכם במסלול.

כדי לקבל החלטות נכונות לגבי כלי DevOps, חשוב להבין את בעלות בפריסה. תשפרו את מהירות המסירה, תגנו על הקוד שלכם ותשמרו על השליטה בתהליך הפיתוח.

מודל הבעלות של GitHub

אחסון קוד וארטיפקטים

אתם משתמשים ב-GitHub כמקום מרכזי לניהול קוד מקור. כאשר אתם דוחפים את הקוד שלכם אל github.com, אתם שומרים היסטוריה ברורה של כל שינוי. כך קל לעקוב אחר מי ביצע עדכונים ומתי. אפשר לאחסן את הקוד במאגרים ציבוריים או פרטיים, בהתאם לצרכים שלכם. אם אתם משתמשים ב-GitHub Enterprise, תקבלו יכולות נוספות לארגונים גדולים, כגון כלי אבטחה וציות מתקדמים.

לארטיפקטים של פריסה, GitHub מציעה את GitHub Packages. שירות זה מאפשר לאחסן תוצרי בנייה, תמונות קונטיינר וקבצים אחרים לצד הקוד. אפשר לגשת לארטיפקטים האלה ישירות מתוך ה-workflows שלכם. עם זאת, GitHub Packages מספקת רק מטא-דאטה בסיסית, כגון תאריך יצירה ומספר הורדות. אי אפשר להוסיף מאפיינים מותאמים אישית או להשתמש בשאילתות מתקדמות לניהול ארטיפקטים. פלטפורמות אחרות, כגון JFrog, מציעות אפשרויות רבות יותר למטא-דאטה ולשאילתות.

הנה השוואה מהירה:

תכונהJFrogGitHub
אוטומציה: CI/CD משולב מקורית✅✅
קידום בנייה לשלבי שחרור✅❌
מטא-דאטה מורחבת למעקב✅❌
שפת שאילתות מתקדמת✅❌
מטמון ריפוזיטורי פרוקסי✅❌
פתרון הפצה✅❌
פתרון DevOps מקצה לקצה✅מוגבל

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

גישה והרשאות

אתם שולטים במי יכול לראות ולשנות את הקוד שלכם ב-github.com. אתם מקצים תפקידים למשתמשים ולצוותים, כך שלכל אדם תהיה רק הגישה שהוא צריך. זהו עיקרון ההרשאות המינימליות. אפשר ליצור צוותים בתוך הארגון ולהגדיר הרשאות שונות לכל צוות. למשל, אפשר לתת למפתחים הרשאת כתיבה, ולהגביל הרשאות ניהול לחברים מהימנים בלבד.

אפשר לאוטומט את ניהול הגישה על ידי חיבור GitHub למערכת ניהול הזהויות והגישה (IAM) שלכם. כך קל להוסיף או להסיר משתמשים כשהצוות משתנה. כדאי גם להגדיר מדיניות בקרת גישה ברורה ולבדוק אותה לעיתים קרובות. GitHub מאפשר לבדוק יומני גישה כדי לזהות פעילות חריגה.

  • הקצו תפקידים והרשאות ברמת המאגר, הארגון או הארגון הגלובלי (Enterprise).
  • השתמשו ב-code owners כדי לדרוש סקירה של שינויים חשובים בקוד.
  • הגבילו הרשאות ניהול והשתמשו בהן רק כשצריך.
  • בדקו יומני ביקורת באופן קבוע כדי לזהות פעולות לא מורשות.

אם אתם משתמשים ב-GitHub Enterprise, יש לכם אפשרויות נוספות לניהול גישה בקנה מידה גדול. אפשר להגדיר מדיניות על פני מאגרים רבים ולאוטומט הקצאת משתמשים.

ממשל וציות

אתם צריכים ממשל חזק כדי לשמור על הפריסות שלכם בטוחות ותואמות לדרישות. GitHub מציעה כמה כלים לניהול הנושא. אפשר לעשות שימוש חוזר ב-workflows בין פרויקטים, וכך לחסוך זמן ולשמור על עקביות. GitHub Actions מאפשרת לאוטומט פריסות ולאכוף כללים לכל סביבה.

אפשר להשתמש ב-artifact attestations כדי לוודא שקבצי הפריסה לא שונו. GitHub תומכת ב-OpenID Connect (OIDC) לפריסות מאובטחות לפלטפורמות ענן. אפשר לשלוט בפריסות על ידי הגדרת כללים למי מותר לפרוס ומתי. GitHub מאפשרת גם לצפות בהיסטוריית הפריסות, מה שמסייע בביקורות ובבדיקות ציות.

תכונהתיאור
שימוש חוזר ב-workflowsשיתוף ושימוש חוזר ב-workflows בין מאגרים וארגונים.
שימוש בהוכחות תקינות לארטיפקטיםאימות שלמות הארטיפקטים שבהם משתמשים בפריסות.
חיזוק אבטחת פריסותשימוש ב-OIDC לפריסות מאובטחות בין פלטפורמות ענן.
שליטה בפריסותניהול והגדרה יעילים של תהליכי הפריסה.
צפייה בהיסטוריית פריסותמעקב אחר פריסות קודמות לצורכי ביקורת וציות.
ניהול סביבותארגון סביבות הפריסה לשליטה טובה יותר.
יצירת כללי הגנה מותאמיםהגדרת כללים להגנה על ענפים ופריסות קריטיים משינויים לא מורשים.

ניתן להעניק הרשאות על בסיס תפקידים ולהגביל את הגישה של מנהלים למשתמשים החיוניים בלבד. מומלץ להשתמש בקבצי CODEOWNERS כדי לדרוש סקירה של קוד רגיש. תכונות אלה עוזרות לאכוף ממשל ולשמור על תהליך הפריסה מאובטח.

הערה: GitHub Actions משתלב עם Microsoft Fabric, כך שניתן לאוטומט פריסות ולנהל פתרונות אנליטיקה תחת אותם בקרות ממשל.

שיקולי אבטחה

יש לשים לב במיוחד לאבטחה בעת השימוש ב-GitHub לצורך צינורות פריסה. איומי אבטחה יכולים להופיע בנקודות רבות בתהליך העבודה. תוקפים עשויים לנסות להזריק תוכנה זדונית לקוד המקור או לארטיפקטים של הבנייה. מידע רגיש, כגון מפתחות גישה וסיסמאות, עלול להיחשף אם לא פועלים לפי שיטות עבודה מומלצות. גישה לא מורשית עלולה להעניק לתוקפים שליטה על צינור העבודה ועל סביבת הייצור. תלויות מיושנות עלולות להכניס פגיעויות שמאיימות על המערכת כולה.

כדאי לסקור את איומי האבטחה העיקריים שמשפיעים על צינורות פריסה ב-GitHub. הטבלה שלהלן מציגה את הסיכונים וההשלכות שלהם:

איומי אבטחההשלכות
הזרקת תוכנה זדוניתתוקפים יכולים להזריק תוכנה זדונית לקוד המקור או לארטיפקטים של הבנייה.
חשיפת מידע רגישמפתחות גישה, אישורים וסיסמאות עלולים להיחשף.
גישה לא מורשיתתוקפים עלולים לקבל שליטה על צינור העבודה ועל סביבת הייצור.
תלויות מיושנותתלויות עם פגיעויות ידועות עלולות לאיים על צינור העבודה.
צינורות עבודה מוגדרים בצורה שגויהעלולים לגרום לפגיעויות במערכת.
אובדן נתוניםתוקפים יכולים לגנוב או להשמיד מידע רגיש.
השבתהפרצות אבטחה עלולות לגרום להשבתה של המערכת.
נזק למוניטיןאובדן אמון של לקוחות והפסד כספי.

יש להגן על מאגרי ה-GitHub שלכם באמצעות בקרות גישה חזקות. מומלץ להפעיל אימות דו-שלבי לכל המשתמשים. ניתן להשתמש בניהול סודות כדי לשמור על אישורים וטוקנים בטוחים. יש להימנע משמירת מידע רגיש ישירות בקוד. כדאי לסקור הרשאות לעיתים קרובות ולהסיר גישה ממשתמשים שאינם זקוקים לה עוד.

ניתן להשתמש ב-GitHub Actions לאוטומציה של משימות אבטחה. ניתן להגדיר תהליכי עבודה שמריצים ניתוח קוד וסריקות פגיעויות בכל דחיפה של שינויים. בדיקות אוטומטיות אלה עוזרות לאתר בעיות מוקדם ולתקן אותן לפני שהן מגיעות לייצור. ניתן גם להשתמש ב-GitHub Actions כדי לאכוף כללי הגנה על ענפים ולדרוש סקירה לשינויים חשובים.

יש לשמור על עדכניות התלויות. ניתן להשתמש ב-Dependabot של GitHub כדי לעקוב אחר הפרויקטים שלכם ולקבל התראה כאשר לתלות יש פגיעות ידועה. כדאי לבדוק את תצורות צינור העבודה כדי לוודא שהן אינן חושפות את המערכת לסיכונים. יש לבדוק יומנים ומסלולי ביקורת באופן קבוע כדי לזהות פעילות חריגה.

טיפ: ניתן לשפר את מצב האבטחה שלכם על ידי שילוב של הכלים המובנים של GitHub עם פתרונות חיצוניים. ניתן להשתמש בסורקים של צד שלישי או להתחבר לפלטפורמות אבטחת ענן להגנה נוספת.

יש להתייחס לאבטחה כאל תהליך מתמשך. כדאי לחנך את הצוות לגבי שיטות עבודה בטוחות ולעודד סקירות קבועות. ניתן להשתמש בתכונות של GitHub כדי לאוטומט משימות אבטחה רבות, אך יש להישאר ערניים ופרואקטיביים. אבטחה חזקה עוזרת להגן על הקוד, על המידע ועל המוניטין שלכם.

התחלה עם GitHub כמאגר - רשימת משימות

רשימת משימות מעשית להתחלת השימוש ב-GitHub כמאגר קוד.

  • יצירת חשבון GitHub או כניסה אליו
  • החלטה בין חשבון אישי לבין ארגון לבעלות צוותית
  • יצירת מאגר חדש (ציבורי או פרטי) ובחירת נראות מתאימה
  • הוספת שם מאגר ברור וקובץ README.md תיאורי
  • הוספת קובץ LICENSE המתאים לצרכי הפרויקט שלכם
  • הוספת קובץ .gitignore המותאם לשפה או למסגרת שבה אתם עובדים
  • אתחול המאגר עם ענף ברירת מחדל (main) וכללי הגנה על ענפים
  • הגדרת CODEOWNERS והנחיות תרומה (CONTRIBUTING.md)
  • הגדרת תבניות לדיווח על בעיות ותבנית לבקשות משיכה (pull request)
  • הגדרת תוויות, אבני דרך ולוחות פרויקט למעקב אחר בעיות
  • הגדרת תהליכי עבודה של GitHub Actions ל-CI/CD או שילוב עם צינורות קיימים
  • הוספת סודות למאגר עבור CI, פריסות ושירותים של צד שלישי
  • הגדרת כללי הגנה על ענפים: סקירות נדרשות, בדיקות סטטוס וחתימת commits נדרשת במידת הצורך
  • הפעלת Dependabot לעדכוני תלויות והתראות אבטחה
  • הפעלת תכונות אבטחה: סריקת קוד, סריקת סודות והתראות על פגיעויות
  • הגדרת Webhooks או אינטגרציות ל-CI, ל-ChatOps או לשירותים חיצוניים
  • הזמנת משתפי פעולה או חברי צוות והגדרת הרשאות למאגר
  • העברת מאגרים וסוגיות קיימים (אם עוברים מ-Azure DevOps, יש לתכנן את ההעברה ולמפות את פריטי העבודה)
  • תיעוד מבנה המאגר, תהליך הפיתוח ותהליך השחרור ב-wiki או בתיקיית docs
  • הגדרת ניטור והתראות לשחרורים, לפריסות ולתהליכי עבודה חשובים
  • בחינה והשוואה של תהליכי העבודה מול אלטернטיבות (GitHub מול Azure DevOps) לאופטימיזציה של בחירות ה-CI/CD וניהול הפרויקטים
  • ביקורת קבועה של הגישה למאגרים, של הסודות ושל הגדרות האבטחה

מודל הבעלות ב-Azure DevOps

מאגרים וצינורות

כשאתם משתמשים ב-Azure DevOps, אתם מקבלים פלטפורמה מאוחדת לניהול הקוד, הארטיפקטים ותהליכי הפריסה שלכם. שירותי Azure DevOps מאחדים מאגרי קוד, מעקב אחר עבודה, כלי בדיקות ואחסון ארטיפקטים. האינטגרציה הזו עוזרת לשלוט בכל שלב במחזור החיים של אספקת התוכנה. אפשר לאתר כל הרצה של צינור עד לקומיטים, לבקשות משיכה או לפריטי עבודה ספציפיים, וכך מתקבלת תמונה ברורה של תהליך הפיתוח.

תכונהתיאור
ניהול מחזור חייםAzure DevOps משלב מאגרי קוד, מעקב אחר עבודה, בדיקות ואחסון ארטיפקטים.
אינטגרציה עם צינורותאפשר לאתר כל הרצה של צינור עד לקומיטים או לפריטי עבודה ספציפיים.
בקרת גישה מבוססת תפקידיםלפרויקטים מוקצים תפקידים לניהול הגישה וההרשאות.

צינורות של Azure DevOps משתמשים בזהויות כדי לגשת למשאבים. אפשר להגדיר זהויות ברמת האוסף או ברמת הפרויקט. זהויות ברמת הפרויקט עוזרות להגביל את הגישה רק למשאבים הנדרשים לכל פרויקט, וכך מתחזקים אבטחה טובה יותר. אפשר גם להוסיף הגנה למשאבי המאגר באמצעות בדיקות והרשאות צינור. כך ניתן לנהל בעלות וזכויות עריכה לקוד ולתהליכי הפריסה.

Azure DevOps תומך ב-CI/CD יעיל, כך שאפשר לאוטומט בנייה, בדיקות ופריסות. עם Azure Pipelines מקבלים אינטגרציה רציפה ואספקה רציפה, שמאפשרות לשחרר עדכונים מהר ובאמינות. Microsoft תכננה את Azure DevOps כך שיעבוד היטב עם מחשוב ענן, וכך קל להרחיב את הפרויקטים ככל שהצרכים גדלים.

בקרת גישה

שולטים במי יכול לגשת לשירותי Azure DevOps באמצעות בקרת גישה מבוססת תפקידים. המודל הזה מאפשר להקצות הרשאות לפי תפקידים, כך שכל משתמש מקבל רק את הגישה שהוא צריך. אפשר לארגן משתמשים בקבוצות אבטחה ולהקצות הרשאות ברמת הארגון, הפרויקט או האובייקט. Microsoft ממליצה לפעול לפי עקרון ההרשאות המינימליות, כלומר לתת למשתמשים רק את ההרשאות הנדרשות למשימות שלהם.

  • הקצאת תפקידים למשתמשים ולקבוצות לשליטה מדויקת בגישה.
  • שימוש בקבוצות אבטחה לניהול הרשאות ברמות שונות.
  • בדיקה ביקורתית של ההרשאות באופן קבוע כדי לזהות שימוש לא צפוי.

Azure DevOps מאפשר לנטר ולהתאים את הגישה בקלות ככל שהצוות משתנה. אפשר לעקוב אחר מי יש לו גישה לכל מאגר ולכל צינור, וזה עוזר לשמור על שליטה בסביבת ה-DevOps שלכם.

ממשל ומדיניות

ממשל חזק הוא הכרחי לפריסות מאובטחות ואמינות. Azure DevOps אוכף ממשל באמצעות מדיניות ענפים, בקרות גישה ותפקידים מותאמים אישית. מדיניות ענפים מאפשרת להגדיר בדיקות ודרישות לפני מיזוג קוד, כך שרק קוד איכותי יגיע לייצור. אפשר להקצות לנותני שירות (security principals) תפקידים לפי עקרון ההרשאות המינימליות, וזה מפחית את הסיכון לגישה לא מורשית.

  • הגדרת מדיניות ענפים שמחייבת סקירות קוד ובדיקות לפני מיזוג.
  • הקצאת תפקידים מותאמים אישית ל-service principals כדי למנוע פעולות הרסניות בייצור.
  • שימוש בבקרות גישה כדי להגביל מי יכול לפרוס לסביבות קריטיות.

מיקרוסופט בנתה את Azure DevOps כדי לתמוך בממשל ברמת הארגון. אפשר לשלב את Azure DevOps עם כלים אחרים של מיקרוסופט, כמו GitHub ו-Microsoft Fabric, וליצור תהליך DevOps חלק. השילוב הזה עוזר לנהל פריסות, לאכוף מדיניות ולשמור על תאימות בכל הארגון.

טיפ: בדקו מדי פעם את הגדרות הממשל ב-Azure DevOps כדי לשמור על אבטחה ותאימות של הפריסות שלכם.

אבטחה ותאימות

כשמנהלים פריסות, צריך בקרות אבטחה ותאימות חזקות. Azure DevOps מציע מגוון רחב של כלים שעוזרים להגן על הקוד, על הנתונים ועל תהליכי העבודה שלכם. אפשר להשתמש בתכונות אבטחה מובנות כדי לשמור על בטחון תהליך הפיתוח ולהבטיח התאמה לתקני התעשייה.

Azure DevOps משתמש בבקרת גישה מבוססת תפקידים כדי להגביל מי יכול לצפות במשאבים שלכם או לשנות אותם. מקצים הרשאות למשתמשים ולקבוצות, וכך מוודאים שרק האנשים הנכונים מקבלים גישה. אפשר גם להשתמש בחיבורי שירות כדי לשלוט באופן שבו צינורות העבודה שלכם מתקשרים עם שירותי Azure אחרים. זה עוזר להפחית את הסיכון לפעולות לא מורשות.

אפשר להגדיר ב-Azure DevOps מדיניות לענפים (branch policies) שמחייבת בדיקות קוד ובקרות לפני מיזוג שינויים. המדיניות הזאת עוזרת לזהות בעיות מוקדם ולשמור על בטחון מאגר הקוד. אפשר גם להשתמש בשערי אישור בצינורות כדי לוודא שרק קוד שנבדק ואושר מגיע לסביבת הייצור. התהליך הזה תומך בתאימות, כי הוא אוכף כללים בכל שלב.

Azure DevOps מספק יומני ביקורת מפורטים. אפשר לעקוב אחר כל פעולה בפרויקטים שלכם. כך קל לבדוק שינויים ולזהות פעילות חריגה. אפשר להשתמש ביומנים האלה כדי לתמוך בביקורות תאימות ולעמוד בדרישות רגולטוריות.

אפשר לאחסן סודות ואישורים בצורה מאובטחת ב-Azure DevOps. הפלטפורמה משתמשת באחסון מאובטח למידע רגיש. אפשר לקשר סודות לצינורות שלכם בלי לחשוף אותם בקוד. כך הסיסמאות, הטוקנים והמפתחות שלכם מוגנים מפני דליפות.

Azure DevOps תומך בשילוב עם כלי אבטחה של Azure. אפשר להשתמש ב-Microsoft Defender for Cloud כדי לסרוק את הקוד והמשאבים שלכם לאיתור איומים. אפשר גם להתחבר ל-Azure Policy כדי לאכוף כללי תאימות בכל הסביבה. השילובים האלה עוזרים לבנות תנוחת אבטחה חזקה.

אפשר להפוך בדיקות אבטחה לאוטומטיות בתוך הצינורות שלכם. אפשר להוסיף משימות שסורקות פגיעויות או בודקות בעיות תאימות. האוטומציה הזאת עוזרת לאתר ולתקן בעיות לפני שהן מגיעות לייצור. אפשר גם להשתמש באינטגרציה מתמשכת (continuous integration) כדי להריץ את הבדיקות האלה בכל פעם שדוחפים קוד.

אפשר לסמוך על Azure DevOps שיעזור לנהל אבטחה ותאימות. מקבלים את הכלים שצריך כדי להגן על הקוד, לשלוט בגישה ולעמוד בתקני התעשייה. אפשר להתמקד בבניית תוכנה טובה, תוך שמירה על בטיחות הפריסות שלכם.

התחלה עם Azure DevOps כמאגר (repository) – רשימת בדיקה

  • יוצרים ארגון Azure DevOps חדש או נכנסים לארגון קיים
  • יוצרים פרויקט חדש (בוחרים נראות: פרטי/ציבורי) ובוחרים בקרת גרסאות: Git
  • יוצרים את המאגר הראשון או מייבאים מאגר קיים (מ-GitHub או מקומי)
  • מוסיפים קובץ README.md תיאורי וקובץ רישיון
  • מוסיפים קובץ .gitignore המותאם לשפה או למסגרת העבודה של הפרויקט
  • מגדירים אסטרטגיית ענפים וכללי מתן שמות (main, develop, feature/*, hotfix/*)
  • מגינים על הענף main: מפעילים מדיניות לענפים, מבקשי סקירה חובה ובדיקות סטטוס
  • יוצרים תבניות לבקשות pull והנחיות לתורמים
  • מגדירים הרשאות וקבוצות למאגר (Readers, Contributors, Project Administrators)
  • מגדירים חיבורי שירות לפריסות (Azure, AWS, מאגרי Docker, ספקי git חיצוניים)
  • יוצרים צינורות CI (Azure Pipelines YAML או classic) ובודקים בניות בבקשות PR
  • יוצרים צינורות CD או צינורות שחרור לסביבות (dev/stage/prod) ושערי אישור
  • משלבים עם Boards: יוצרים פריטי עבודה ומקשרים commits ובקשות PR לפריטי העבודה
  • מגדירים webhooks או service hooks לשילובים חיצוניים (Slack, Teams, Jenkins)
  • מגדירים מדיניות שמירה של ענפי המאגר ושל גרסאות הבנייה
  • מפעילים ביקורת ומגדירים את בקרות התאימות והאבטחה הנדרשות
  • מגדירים סריקת קוד, ניתוח אבטחה ובדיקות תלויות (GitHub עשוי להציע כלים נוספים – כדאי להשוות לפי הצרכים)
  • מגדירים הזנת artifacts אם צריך לאחסן חבילות (NuGet, npm, Maven)
  • יוצרים ויקי או אתר תיעוד, ושומרים את התיעוד במאגר היכן שמתאים
  • מתכננים שלבי מעבר אם עוברים מ-GitHub: מיפוי מאגרים, בעיות, בקשות PR, CI/CD וחשבונות שירות
  • מזמינים את חברי הצוות ובודקים את הגישה מהחשבונות שלהם
  • הרצת בדיקת קצה-לקצה ראשונית: שכפול, commit, push, פתיחת PR, הפעלת הצנרת ופריסה לסביבת הבדיקות
  • ניטור השימוש והצנרות; שיפור מתמיד של המדיניות והאוטומציה

אינטגרציה של Microsoft Fabric

Git Integration

אפשר לחבר את סביבת העבודה שלך ב-Microsoft Fabric ישירות למאגר GitHub. החיבור הזה מספק בקרת גרסאות חזקה לפרויקטי האנליטיקה שלך. מקשרים את סביבת העבודה לענף develop ב-GitHub. כך אפשר לעקוב אחר כל שינוי ולחזור לגרסה קודמת במידת הצורך. אפשר להשתמש ב-deployment pipelines של Microsoft Fabric כדי להעביר תוכן מפיתוח לבדיקות ואז לייצור. התהליך הזה עוזר להימנע מבעיות סנכרון בין הסביבות.

כשרוצים לשחרר פיצ'רים יציבים, יוצרים ענף release. משתמשים ב-deployment pipelines כדי לדחוף את השינויים האלה לייצור. אם צריך לתקן בעיות דחופות, יוצרים ענף hotfix. ממזגים את הענף הזה לתוך הענף הראשי לצורך פריסה. מומלץ להשתמש במסדי נתונים נפרדים לכל סביבה. הנוהג הזה מגן על נתוני הייצור מפני שינויים מקריים במהלך בדיקות או פיתוח.

CI/CD עם Azure DevOps ו-GitHub

אפשר להגדיר צנרות CI/CD ב-Microsoft Fabric באמצעות Azure DevOps או GitHub Actions. הכלים האלה עוזרים לאוטומט את שלבי הבנייה, הבדיקה והפריסה. מומלץ לתת ל-שמות ברורים ותיאוריים לצנרות הפריסה. כך קל לזהות את מטרתה של כל צנרת. אפשר להשתמש בסביבות עבודה קיימות או ליצור חדשות לשלבים שונים בצנרת, כגון פיתוח, בדיקות וייצור.

כדאי להשוות את התוכן בין השלבים לעיתים קרובות. הבדיקה הזאת מוודאת שכל הפריטים נפרסו כראוי. אפשר לפרסם יישומים מכל סביבת עבודה בצנרת. שלב זה מאפשר למשתמשי הקצה לבדוק את הפיצ'רים לפני הפריסה הסופית. מומלץ לשמור ענפים נפרדים לכל מפתח או לכל פיצ'ר. הנוהג הזה עוזר להימנע מקונפליקטים במיזוג. אסטרטגיית ענפים מסודרת, כמו Gitflow, עוזרת לנהל פיתוח, גרסאות שחרור ותיקוני hotfix.

מומלץ לדרוש code reviews לפני מיזוג שינויים. הכלל הזה מבטיח שחברי צוות אחרים יבדקו ויאשרו את העדכונים. Microsoft Fabric מאפשרת להשוות את התוכן של סביבות העבודה המקור והיעד לפני פריסת שינויים. התכונה הזאת עוזרת לזהות טעויות מוקדם ולשמור על עקביות בין הסביבות.

Data Governance

Microsoft Fabric משלבת ממשל נתונים בכל חלק של מחזור החיים של הנתונים. מנהלים איסוף, אחסון וניתוח של נתונים בסביבה אחת. Microsoft Purview מקטלג את הנתונים שלך ועוקב אחר המקור והמסלול שלהם. OneLake מספק אחסון מרכזי, וכך קל להחיל מדיניות ממשל. Microsoft Entra ID מעניק בקרת גישה מבוססת תפקידים, כך שאתם מחליטים מי רשאי לצפות בנתונים או לשנות אותם.

מחילים מדיניות ממשל ברמת OneLake. הכללים האלה עוברים איתם הנתונים בין סביבות עבודה ומערכי נתונים. הגישה הזאת שומרת על טיפול עקבי ומהיר בנתונים. אין צורך להגדיר כללים נפרדים לכל סביבת עבודה. התכנון של Microsoft Fabric עוזר לשמור על השליטה ולעמוד בדרישות הציות ככל שהנתונים גדלים.

אבטחה וציות

נדרשות בקרות אבטחה וציות חזקות בעת ניהול נתונים ופריסות ב-Microsoft Fabric. הפלטפורמה מספקת כלים מתקדמים להגנה על המידע ולעמידה בדרישות רגולטוריות. אפשר לסווג וזה להגן על נתונים רגישים בצנרות Data Factory שלך. הדבר עוזר לשמור על מידע חשוב מפני גישה לא מורשית.

Microsoft Fabric פועל יחד עם Microsoft Defender for Cloud Apps. האינטגרציה הזו נותנת לכם יותר נראות ושליטה על הפעילות שלכם. אפשר לנטר פעילויות ולהגדיר התראות על התנהגות מסוכנת. אפשר גם לעקוב אחר מקור הנתונים ומסלולי העברתם (data lineage). התכונה הזו מאפשרת לראות כיצד הנתונים זורמים במערכת. אפשר להשתמש במידע הזה כדי לוודא עמידה בדרישות הציות ולהבין את זרימת המידע הרגיש.

אפשר להגדיר מדיניות Data Loss Prevention (DLP) ב-Microsoft Fabric. המדיניות הזו עוזרת למנוע שיתוף לא מורשה של מידע רגיש. אפשר ליצור כללים מותאמים אישית שמתאימים לצרכים של הארגון שלכם. לדוגמה, אפשר לחסום משתמשים משליחת נתונים חסויים מחוץ לארגון. אפשר גם לקבל התראות כאשר מישהו מנסה לשתף מידע מוגן.

Microsoft Fabric תומך בלוקליזציה של נתונים. אפשר לבחור היכן לאחסן את הנתונים באמצעות התכונה Multi-Geo. כך קל יותר לעמוד בחוקי מיקום נתונים (data residency) במדינות שונות. אפשר לשמור נתונים באזורים מסוימים כדי לעמוד בתקנות מקומיות. התכונה הזו חשובה במיוחד לארגונים הפועלים במקומות רבים.

Microsoft Fabric תומך בזכויות פרטיות לפי חוקים כמו GDPR. הפלטפורמה מעמידה לרשותכם כלים לטיפול ב-Data Subject Requests (DSRs). אפשר לחפש את הנתונים של אדם מסוים באמצעות Microsoft Purview. אפשר לייצא את הנתונים האלה בפורמטים כמו JSON או CSV. אם מתגלות טעויות, אפשר לתקן אותן. אפשר גם למחוק זהויות של משתמשים במידת הצורך. הצעדים האלה עוזרים לכם לכבד את הפרטיות ולעמוד בחוק.

להלן סיכום של ניהול זכויות הפרטיות ב-Microsoft Fabric:

  1. חיפוש וגילוי: איתור מידע על נושא הנתונים באמצעות Microsoft Purview.
  2. אחזור: ייצוא נתונים בפורמטים נפוצים.
  3. תיקון: תיקון שגיאות בנתונים המאוחסנים.
  4. מחיקה: מחיקה סופית של זהויות משתמשים.

אפשר להשתמש בתכונות האלה כדי לבנות פלטפורמת נתונים מאובטחת ותואמת לרגולציה. Microsoft Fabric עוזר לכם להגן על הנתונים, לשלוט בגישה ולעמוד בדרישות של רגולציות מודרניות. תוכלו להיות רגועים יותר, בידיעה שהפריסות שלכם עומדות בנוהלי העבודה המומלצים לאבטחה ולציות.

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

GitHub מול Azure DevOps מול Fabric: השוואת בעלות

מיקום המאגר

צריך לדעת היכן נמצא הקוד שלכם. בדיון GitHub מול Azure DevOps זוהי נקודה מרכזית. GitHub מאחסן את המאגרים שלכם בענן. אפשר לבחור בין אפשרויות ציבוריות לפרטיות. פרויקטים רבים בקוד פתוח משתמשים ב-GitHub משום שקל לשתף ולשתף פעולה בו. גם Azure DevOps מאחסן קוד בענן, אך הוא מתמקד בפרויקטים פרטיים בסטנדרט ארגוני. אתם מקבלים שליטה רבה יותר על מי יכול לראות ולשנות את הקוד שלכם. Microsoft Fabric מתחבר הן ל-GitHub והן ל-Azure DevOps לניהול גרסאות. אתם מנהלים את פרויקטי האנליטיקה שלכם ב-Fabric, אבל הקוד עצמו נמצא במאגר המקושר שלכם.

להלן השוואה מהירה:

פלטפורמהמיקום המאגרמתאים בעיקר ל
GitHubענן (GitHub.com)קוד פתוח, שיתוף פעולה
Azure DevOpsענן (Azure Repos)ארגונים, פרויקטים פרטיים
Microsoft FabricGitHub/Azure DevOps מקושראנליטיקה של נתונים, שליטה מאוחדת

כדאי לבחור בפלטפורמה שמתאימה לצרכים שלכם. אם אתם רוצים שיתוף פעולה פתוח, GitHub עובד היטב. אם אתם צריכים שליטה הדוקה, Azure DevOps מציע יותר אפשרויות. Microsoft Fabric מאפשר להשתמש באחת מהן, כך שתוכלו להתאים את זרימת העבודה שלכם.

ניהול ארטיפקטים

ניהול ארטיפקטים הוא הדרך שבה מטפלים בתוצרי build, חבילות וקבצים שהפרויקטים שלכם יוצרים. בהשוואה בין GitHub ל-Azure DevOps רואים הבדלים משמעותיים. GitHub משתמש ב-GitHub Packages לאחסון ארטיפקטים. אתם מקבלים תכונות בסיסיות כמו אחסון ושיתוף של חבילות. Azure DevOps מציע את Azure Artifacts, שמספק בקרות מתקדמות. אפשר לנהל גרסאות, להגדיר feeds ולעקוב אחר שימוש. Microsoft Fabric מתמקד בארטיפקטים של אנליטיקה, כמו דוחות Power BI ומודלים סמנטיים. הוא מתקשר עם המאגר שלכם לניהול גרסאות ומשתמש בצינורות פריסה (deployment pipelines) להעברת ארטיפקטים בין סביבות.

כדאי לבחון את הנקודות האלה בעת השוואת ניהול ארטיפקטים:

  • אימות: Azure DevOps משתמש בחשבונות משתמש של Microsoft Entra. כך הכניסה פשוטה ומאובטחת. GitHub משתמש באסימוני גישה אישיים. אלה עלולים להיות קשים יותר לניהול, במיוחד בצוותים גדולים.
  • ממשל: ל-Azure DevOps יש יכולות ממשל מובנות. אפשר להגדיר כללים ולעקוב אחר שינויים בקלות. GitHub Enterprise מספק ממשל טוב יותר מ-GitHub הסטנדרטי, אבל Azure DevOps עדיין מובילה לצרכים ארגוניים.
  • אינטגרציה: Microsoft Fabric תומך רק בגרסאות ענן של Azure DevOps ושל GitHub לניהול ארטיפקטים. אם you משתמשים ב-Fabric, עליכם להיות מוכנים לתהליכי עבודה בענן.

הנה טבלה שתעזור לכם להשוות:

פלטפורמהאחסון ארטיפקטיםיכולות ממשלאינטגרציה עם Fabric
GitHubGitHub Packagesבסיסי (מומלץ ב-Enterprise)כן
Azure DevOpsAzure Artifactsמתקדם, מובנהכן
Microsoft Fabricמאגר מקושרמאוחד ב-Fabricלא רלוונטי (משתמש במאגר המקושר)

כדאי לבחור ב-Azure DevOps אם אתם מחפשים ניהול ארטיפקטים וממשל חזקים. GitHub מתאים לצרכים פשוטים או לפרויקטים פתוחים. Microsoft Fabric מספק שליטה מאוחדת בארטיפקטים אנליטיים, אבל מסתמך על המאגר המקושר לאחסון.

גישה והרשאות

גישה והרשאות קובעות מי יכול לראות, לערוך או לפרוס את הקוד והארטיפקטים שלכם. בדיון GitHub מול Azure DevOps תמצאו גישות שונות. GitHub מאפשר להגדיר תפקידים ברמת המאגר, הארגון או הארגון הגדול (Enterprise). משתמשים בצוותים ובבעלי קוד (code owners) כדי לשלוט בשינויים. Azure DevOps משתמש בבקרת גישה מבוססת תפקידים. משייכים משתמשים לקבוצות אבטחה ומגדירים הרשאות ברמת הפרויקט או ברמת האובייקט. זה מעניק שליטה מדויקת, חשובה לארגונים גדולים.

Microsoft Fabric משתמש ב-Microsoft Entra ID לבקרת גישה. מגדירים תפקידים עבור סביבת העבודה האנליטית. אפשר לקבוע מי יכול לצפות, לערוך או לפרוס תוכן אנליטי. כאשר מקשרים את Fabric ל-GitHub או ל-Azure DevOps, משתמשים בבקרות הגישה שלהם עבור הקוד והארטיפקטים. המשמעות היא שמקבלים את המיטב משני העולמות: ניהול זהויות חזק מבית Microsoft ובקרות גמישות מהמאגר שבחרתם.

הנה סיכום:

  • GitHub: תפקידים וצוותים, בעלי קוד, יומני ביקורת.
  • Azure DevOps: בקרת גישה מבוססת תפקידים, קבוצות אבטחה, בקרות ברמת הפרויקט.
  • Microsoft Fabric: תפקידי Entra ID, הרשאות סביבת עבודה, יורש בקרות מהמאגר המקושר.

כדאי לבדוק את הגדרות הגישה שלכם לעיתים קרובות. ודאו שרק האנשים המתאימים בעלי הרשאות. כך הפרויקטים שלכם נשארים מאובטחים ותומכים בהתאמה לדרישות רגולציה.

טיפ: השתמשו בעיקרון ההרשאות המינימליות. העניקו למשתמשים רק את הגישה שהם צריכים. כך מצמצמים סיכונים ונשארים מאובטחים.

ממשל וציות

אתם צריכים ממשל וציות חזקים כדי להגן על הפריסות שלכם ולעמוד בתקנים בתעשייה. כל פלטפורמה – GitHub, Azure DevOps ו-Microsoft Fabric – מציעה כלים וגישות שונים לצרכים האלה.

GitHub מספק ממשל גמיש. אפשר להגדיר כללי הגנה לענפים (branch protection), לדרוש סקירות קוד ולהשתמש בקבצי CODEOWNERS. תכונות אלה עוזרות לשלוט במי יכול לבצע שינויים בקוד. אפשר גם להשתמש ביומני ביקורת כדי לעקוב אחר פעולות במאגרים. לצורכי ציות, GitHub תומך באינטגרציות עם כלים של צדדים שלישיים. אפשר להפוך בדיקות מדיניות לאוטומטיות ולהשתמש ב-GitHub Actions כדי לאכוף כללים. אם משתמשים ב-GitHub Enterprise, מקבלים יכולות ציות מתקדמות כמו כניסה יחידה מבוססת SAML וניהול מדיניות ברמת כל הארגון.

Azure DevOps מתמקד בממשל ארגוני. אפשר להגדיר מדיניות לענפים, שערי אישור ותפקידים מותאמים אישית. בקרות אלה עוזרות לאכוף סטנדרטים בכל הפרויקטים. Azure DevOps מאפשר להשתמש במעקב אחר פריטי עבודה כדי לחבר שינויי קוד לדרישות עסקיות. אפשר להגדיר בדיקות ציות בצינורות (pipelines). Azure DevOps תומך במסלולי ביקורת ותיעוד מפורט. אפשר לייצא דוחות שמציגים ציות למסגרות כמו ISO, SOC ו-GDPR. Azure DevOps מתממשק גם ל-Azure Policy ול-Microsoft Purview לממשל מאוחד.

Microsoft Fabric מביאה ממשל נתונים לתהליכי העבודה האנליטיים שלכם. אתם משתמשים ב-Microsoft Purview כדי לקטלג נתונים ולעקוב אחר מקורם ומסלול העיבוד שלהם. אתם מגדירים מדיניות ברמת OneLake, והיא חלה על כל סביבות העבודה. הגישה המאוחדת הזו מקלה על ניהול הציות לרגולציה ככל שהנתונים גדלים. Microsoft Fabric תומכת בהרשאות מבוססות תפקידים באמצעות Microsoft Entra ID. ניתן להגדיר כללים לגישה לנתונים ולפריסה. בנוסף, מובנים כלים לציות לחוקי פרטיות כמו GDPR. ניתן לחפש, לייצא ולמחוק מידע של משתמשים לפי הצורך.

הנה טבלה שתעזור לכם להשוות בין תכונות הממשל והציות:

פלטפורמהכלי ממשלתמיכה בציותשילוב עם Azure
GitHubכללי ענף, CODEOWNERS, יומניםצד שלישי, Enterpriseכן
Azure DevOpsמדיניות, תפקידים, שבילי ביקורתISO, SOC, GDPR, Purviewמובנה
Microsoft FabricPurview, OneLake, Entra IDGDPR, כלי פרטיותמובנה

טיפ: בדקו את הגדרות הממשל שלכם לעתים קרובות. ממשל חזק עוזר לעמוד בדרישות הציות ושומר על הפריסות שלכם בטוחות.

תמונת מצב אבטחתית

עליכם להגן על הקוד, הנתונים והפריסות שלכם מפני איומים. לכל פלטפורמה יש תכונות ובקרות אבטחה שונות.

GitHub עוזר לאבטח את המאגרים שלכם באמצעות אימות דו-שלבי, ניהול סודות והגנה על ענפים. ניתן להשתמש ב-GitHub Actions כדי לאוטומט סריקות אבטחה ובדיקות פגיעויות. Dependabot מתריע על תלויות מיושנות. ניתן לבדוק יומני ביקורת כדי לזהות פעילות חריגה. לפריסות בענן, GitHub תומך ב-OpenID Connect לאימות מאובטח. כדאי להשתמש בכלים האלה כדי לשמור על הקוד והארטיפקטים שלכם בטוחים.

Azure DevOps מספק בקרות אבטחה מתקדמות. משתמשים בגישה מבוססת תפקידים כדי להגביל הרשאות. Azure DevOps מאחסן סודות בצורה מאובטחת ומקשר אותם לצינורות שלכם. ניתן להגדיר שערי אישור כדי לחסום פריסות מסוכנות. Azure DevOps משתלב עם Microsoft Defender for Cloud כדי לסרוק איומים. ניתן להשתמש ב-Azure Policy כדי לאכוף כללי אבטחה בכל הסביבה. יומני ביקורת מפורטים עוזרים לעקוב אחר כל פעולה. ניתן לאוטומט בדיקות אבטחה בצינורות כדי לזהות בעיות מוקדם. Azure DevOps תומך בציות לתקני תעשייה ומספק כלים לייצוא דוחות אבטחה.

Microsoft Fabric מתמקד באבטחת נתונים. משתמשים ב-Microsoft Defender for Cloud Apps כדי לנטר פעילות ולהגדיר התראות על התנהגות מסוכנת. ניתן לסווג ולהגן על נתונים רגישים בצינורות שלכם. Microsoft Fabric תומך במדיניות Data Loss Prevention (DLP). ניתן לחסום שיתוף לא מורשה של מידע סודי. בנוסף, מקבלים לוקליזציה של נתונים באמצעות Multi-Geo, כך שניתן לבחור היכן לאחסן את הנתונים. Microsoft Fabric עוזר לנהל זכויות פרטיות ולטפל בבקשות של נושאי מידע (Data Subject Requests). ניתן לחפש, לייצא ולמחוק נתוני משתמשים כדי לעמוד בדרישות החוק.

הנה סיכום של תכונות האבטחה:

  • GitHub: אימות דו-שלבי, ניהול סודות, סריקות אוטומטיות, יומני ביקורת.
  • Azure DevOps: גישה מבוססת תפקידים, סודות מאובטחים, שערי אישור, Defender for Cloud, אכיפת מדיניות, שבילי ביקורת.
  • Microsoft Fabric: Defender for Cloud Apps, מדיניות DLP, סיווג נתונים, Multi-Geo, ניהול פרטיות.

הערה: יש לשלב תכונות אבטחה של הפלטפורמה עם שיטות עבודה מומלצות. הדריכו את הצוות, בדקו את ההגדרות ועדכנו את המדיניות ככל שהאיומים משתנים.

תמונת האבטחה החזקה ביותר מתקבלת כשמשתמשים בכלים הנכונים ונוקטים יוזמה. כל פלטפורמה — GitHub, Azure DevOps ו-Microsoft Fabric — מעניקה לכם את הבקרות הנדרשות להגנה על הפריסות והנתונים שלכם.

תרחישי DevOps מהעולם האמיתי

קוד פתוח עם GitHub

כשעובדים על פרויקטים בקוד פתוח, GitHub מספק דרך פשוטה לנהל בעלות על הפריסה. ניתן לאוטומט את תהליך הפריסה ולשמור על הפרויקט פעיל עם כל שינוי קוד. להלן אופן פעולת הבעלות בתהליך DevOps טיפוסי של קוד פתוח באמצעות GitHub:

  • דוחפים קוד למאגר ציבורי ב-GitHub.
  • כל דחיפה לענף הראשי מפעילה פריסה אוטומטית.
  • אין צורך לבקש אישור או להמתין לאישור כדי לפרוס.
  • שומרים על השליטה בתשתית הענן באמצעות חשבון AWS משלכם או שירותים דומים.
  • הפרויקט שלכם נשאר פעיל על תשתית ברמת ייצור בכל עת.

הגישה הזו מאפשרת לך להתמקד בבניית הפרויקט ובשיפורו. אין צורך לדאוג לאישורים ידניים או לעיכובים. אתם שומרים על הבעלות על תהליך הפריסה ועל התשתית, גם כשאתם משתפים את הקוד עם העולם. עם GitHub תוכלו גם להשתמש בכלי DevOps כמו GitHub Actions כדי לאוטומט שלבי בדיקה ופריסה.

ארגונים עם Azure DevOps

בסביבת ארגון, משתמשים לעיתים קרובות ב-Azure DevOps לניהול פרויקטים מורכבים. יש לאזן בין מהירות, אבטחה וציות לרגולציה. הבעלות בסביבה כזו עלולה להפוך למאתגרת. הטבלה שלהלן מציגה כמה אתגרים נפוצים שעשויים להיתקל בהם:

סוג האתגרתיאור
עמימות באחריותהשינוי באחריות כתוצאה מ-DevOps יוצר בלבול לגבי מי מנהל את תשתית הענן.
חששות לגבי אבטחה וציות לרגולציהניווט בתצורות אבטחה ובדרישות ציות לרגולציה מוסיף מורכבות לבעלות על הפריסה.
מורכבות תשתית הענןהכנסת תשתית ענן מסבכת את תהליכי הפריסה המסורתיים ואת הבעלות עליהם.

עליכם להגדיר תפקידים ואחריות ברורים לצוות שלכם. Azure DevOps עוזר לכם לעשות זאת בכך שהוא מאפשר להקצות הרשאות ולהשתמש בבקרת גישה מבוססת תפקידים. אתם יכולים לעקוב אחר כל שינוי ולאכוף מדיניות כדי לעמוד בתקני החברה. Microsoft מספקת כלים מובנים לאבטחה ולציות לרגולציה, כך שתוכלו להגן על הקוד והנתונים שלכם. אפשר גם לשלב את Azure DevOps עם שירותים אחרים של Microsoft לקבלת חוויית DevOps אחידה.

ניתוח נתונים עם Fabric

כשאתם מנהלים פרויקטים של ניתוח נתונים, Microsoft Fabric מעניק לכם בעלות חזקה על הפריסה. אתם שולטים במי יכול לפרוס, לערוך או לצפות בכל פריט בסביבת העבודה שלכם. הטבלה שלהלן מציגה כיצד הבעלות פועלת עבור פריטים שונים ב-Microsoft Fabric:

פריט Fabricהרשאה נדרשת לפריסת פריט קייםבעלות על הפריט לאחר פריסה ראשונהבעלות על הפריט לאחר פריסה לשלב שבו הפריט קיים
מודל סמנטיחבר סביבת עבודההמשתמש שביצע את הפריסה הופך לבעליםללא שינוי
Dataflowבעלים של Dataflowהמשתמש שביצע את הפריסה הופך לבעליםללא שינוי
Datamartבעלים של Datamartהמשתמש שביצע את הפריסה הופך לבעליםללא שינוי
דוח מעומד (Paginated report)חבר סביבת עבודההמשתמש שביצע את הפריסה הופך לבעליםהמשתמש שביצע את הפריסה הופך לבעלים

אתם מקבלים שליטה ברורה בנכסי הניתוח שלכם. כשאתם פורסים פריט חדש, אתם הופכים לבעלים שלו. אם פורסים לשלב שבו הפריט כבר קיים, הבעלות נשארת כשהייתה. Microsoft Fabric משתמש בתפקידים והרשאות של סביבת העבודה כדי לעזור לכם לנהל גישה. אפשר לחבר את סביבת העבודה שלכם ל-GitHub או ל-Azure DevOps לצורך בקרת גרסאות ופריסות אוטומטיות. האינטגרציה הזו מעניקה לכם תהליך DevOps אחיד לפרויקטים של ניתוח הנתונים שלכם.

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

פריסות היברידיות

לעיתים קרובות צריך להשתמש ביותר מפלטפורמה אחת לניהול הפריסות שלכם. זה נפוץ בארגונים גדולים או כשרוצים לשלב את היתרונות של כלים שונים. פריסות היברידיות מאפשרות להשתמש ב-GitHub לבקרת קוד, ב-Azure DevOps לצינורות, וב-Microsoft Fabric לניתוח נתונים. אפשר לחבר את הפלטפורמות האלה ליצירת תהליך עבודה המותאם לצרכים שלכם.

אפשר להתחיל באחסון הקוד ב-GitHub. ניתן להשתמש ב-GitHub Actions להרצת בדיקות ולבניית האפליקציה. לאחר מכן אפשר לשלוח את תוצרי הבנייה ל-Azure DevOps. Azure DevOps מספק בקרות צינור מתקדמות וניהול ארטיפקטים. אפשר להגדיר שערי אישור ולהשתמש בגישה מבוססת תפקידים כדי לשלוט במי יכול לפרוס לייצור. כשצריך לטפל בניתוח נתונים, אפשר לחבר את Microsoft Fabric למאגרים שלכם. כך ניתן לנהל נכסי ניתוח ופריסות עם ממשל חזק.

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

להלן כמה שיטות עבודה מומלצות לניהול בעלות על פריסות בסביבות היברידיות:

שיטת עבודה מומלצתתיאור
אוטומציההשתמשו בצינורות Continuous Deployment כדי לאוטומט את הבנייה, הבדיקה והפריסה. כך מצטמצמות טעויות וחוסכים זמן.
אסטרטגיות פריסההפעילו אסטרטגיות פריסה מסוג blue-green או canary. שיטות אלה מסייעות לעדכן את היישומים שלכם בסיכון נמוך יותר ועם פחות השבתות.
כלי ניהול אחידיםהשתמשו בכלים כמו Octopus, Anthos או OpenShift כדי לנהל פריסות על פני פלטפורמות שונות. הכלים האלה עוזרים לשמור על תהליך עקבי.

כדאי לאוטומט כמה שיותר. אוטומציה מפחיתה טעויות ומאיצה את הפריסות. כדאי גם להשתמש באסטרטגיות פריסה חכמות. פריסות blue-green ו-canary מאפשרות לבדוק גרסאות חדשות בלי להשפיע על כל המשתמשים. כך אפשר לזהות בעיות בשלב מוקדם.

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

טיפ: בדקו את הגדרות הגישה והממשל בכל פלטפורמה. ודאו שרק האנשים המתאימים יכולים לפרוס או לשנות את הקוד שלכם. כך שומרים על אבטחת תהליך העבודה.

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

בחירת פלטפורמת DevOps מתאימה

שאלות מפתח לגבי בעלות

כדאי לשאול את השאלות הנכונות לפני בחירת פלטפורמת DevOps. שאלות אלה עוזרות להבין כיצד כל כלי מטפל בבעלות, בממשל ובשילוב. שימו לב לנקודות הבאות:

  • מי שולט בגישה לקוד ולארטיפקטים שלכם?
  • כיצד הפלטפורמה אוכפת ממשל ותאימות?
  • האם אפשר להגדיר תזכורות אוטומטיות לחסרים במטא-דאטה של פריסות?
  • האם הפלטפורמה תומכת בשילוב עם הכלים הקיימים שלכם?
  • כיצד הפלטפורמה מטפלת בבעלות על שירותים ובמטא-דאטה?

כדאי לחפש פלטפורמת DevOps שמאפשרת לנהל בעלות על שירותים. ודאו שהמפתחים מזינים מטא-דאטה של השירות בעת יצירת שירותים חדשים. אוטומציה עוזרת לשמור על דיוק המטא-דאטה. אפשר לפתח את פלטפורמת הפריסה שלכם לפלטפורמת פיתוח פנימית (IDP) כדי לרכז את הבעלות ולייעל את תהליכי ה-DevOps.

טיפ: שאלו את השאלות האלה מוקדם. כך תימנעו מבלבול ותבנו בסיס חזק לתהליך ה-DevOps שלכם.

חוזקות הפלטפורמות

לכל פלטפורמת DevOps יש חוזקות ייחודיות. יש להתאים את החוזקות האלה לצרכי הפרויקט שלכם. להלן סקירה קצרה:

פלטפורמהחוזקות
GitHubהגדרה פשוטה, אוטומציה מהירה ושילוב חלק עם תהליכי עבודה הממוקדים במאגר
Azure DevOpsשירותי CI/CD בוגרים, ממשל מתקדם, שערי אישור ופריסות מורכבות מרובות שלבים
Microsoft Fabricניתוח נתונים מאוחד, ממשל נתונים חזק, שילוב חלק עם GitHub ו-Azure DevOps

אפשר להשתמש ב-GitHub Actions לאימוץ מהיר ולשילוב קל. GitHub מתאים לצוותים שמעדיפים פתרונות פשוטים וישירים. Azure DevOps מעניק בקרות מתקדמות לתהליכי עבודה מורכבים. מקבלים יכולות כמו שערי אישור והגדרות הרצה מותנית. Azure Pipelines אידיאלי לפריסות עתירות אינטגרציה. Microsoft Fabric מביא ניתוח נתונים וממשל מאוחדים. אפשר לחבר את סביבת העבודה שלכם ל-GitHub או ל-Azure DevOps לניהול גרסאות ולפריסה.

  • GitHub Actions מתמקד בפשטות ובהטמעה מהירה.
  • Azure DevOps מציע שירותים בוגרים לאינטגרציה רציפה ולאספקה רציפה.
  • Microsoft Fabric מאחד כלים להנדסת נתונים, מחסני נתונים וניתוח נתונים.

הערה: כדאי לבחור פלטפורמה שמתאימה לתהליך העבודה ולצרכי הממשל שלכם. לכל פלטפורמה יש חוזקות שונות בבעלות על DevOps.


אתם מקבלים בעלות ברורה על הפריסה כשמבינים איך GitHub, Azure DevOps ו-Microsoft Fabric מנהלים קוד, ארטיפקטים, הרשאות וממשל. בחרו פלטפורמה שמתאימה לצרכי האבטחה וההתאמה לרגולציה שלכם. הגדירו מדיניות לניהול נקודות קצה, קבעו בעלות משותפת בין הצוותים וזהו את בקרות האבטחה החיוניות. בדקו את תכונות הפלטפורמה בתדירות גבוהה כדי להישאר לפני הסיכונים. יישרו את בחירת הפלטפורמה עם מדיניות ה-AI האחראי, כולל הוגנות, אמינות ואחריותיות. גישה זו עוזרת להגן על הנתונים שלכם ולשמור על ממשל תקין.

כדי לסכם איך הבחירות האלה משפיעות על אסטרטגיית הפריסה שלכם, כדאי לצפות בפרק הפודקאסט הקשור, GitHub vs Azure DevOps for Microsoft Fabric CI/CD, שבוחן את ההחלטות הארגוניות האלה לעומק.

שאלות נפוצות

מה המשמעות של בעלות על פריסה בפלטפורמות DevOps?

בעלות על פריסה פירושה שאתם שולטים בקוד, בארטיפקטים, בהרשאות ובממשל שלכם. אתם מחליטים מי רשאי לפרוס, עוקבים אחר שינויים ואוכפים כללים. הבעלות עוזרת להגן על הפרויקטים שלכם ולשמור על עמידה בדרישות הציות.

כיצד GitHub, Azure DevOps ו-Microsoft Fabric מטפלים בבקרת גישה?

מגדירים תפקידים והרשאות בכל פלטפורמה. GitHub משתמשת בצוותים ובבעלי קוד (code owners). Azure DevOps משתמשת בקבוצות אבטחה ובגישה מבוססת תפקידים. Microsoft Fabric נשענת על Microsoft Entra ID להרשאות סביבת העבודה.

האם אפשר להפעיל אוטומציה של פריסות בשלוש הפלטפורמות?

כן, אפשר להפעיל אוטומציה של פריסות באמצעות GitHub Actions, Azure Pipelines או צינורות פריסה של Microsoft Fabric. אוטומציה עוזרת לכם לספק עדכונים מהר יותר ומפחיתה שגיאות.

כיצד Microsoft Fabric משתלבת עם GitHub ו-Azure DevOps?

מחברים את סביבת העבודה שלכם ב-Fabric למאגר ב-GitHub או ב-Azure DevOps. האינטגרציה הזו מספקת לכם בקרת גרסאות, פריסות אוטומטיות וממשל אנליטיקה מאוחד.

אילו תכונות אבטחה מגנות על הפריסות שלכם?

משתמשים באימות דו-שלבי, בניהול סודות ובסריקות אבטחה אוטומטיות. Azure DevOps מוסיפה שערי אישור ו-Defender for Cloud. Microsoft Fabric מציעה מניעת אובדן נתונים (DLP) וכלי ניהול פרטיות.

כיצד מנהלים ציות בפלטפורמות האלה?

מגדירים מדיניות לענפים (branch policies), יומני ביקורת וכללי ממשל. Azure DevOps ו-Microsoft Fabric תומכות במסגרות ציות כמו GDPR ו-ISO. ל-GitHub Enterprise יש כלי ציות מתקדמים לארגונים.

למי שייך נכס אנליטיקה שנפרס ב-Microsoft Fabric?

אתם הופכים לבעלים כשאתם פורסים פריט חדש. אם פורסים לשלב שבו כבר קיים פריט, הבעלות נשארת כשהייתה. תפקידים והרשאות בסביבת העבודה עוזרים לכם לנהל את הגישה.

מהם ההבדלים המרכזיים בין Azure DevOps ל-GitHub?

Azure DevOps (ADO) היא חבילה של כלי מפתחים שכוללת את Azure Boards, Pipelines, Repos, Test Plans וניהול ארטיפקטים, ומתמקדת בניהול פרויקטים ארגוניים וב-CI/CD. לעומת זאת, GitHub היא פלטפורמה שמבוססת על git ומרכזת מאגרי git, pull requests וקהילת מפתחים, עם תכונות כמו GitHub Repos, GitHub Enterprise Cloud ו-GitHub Actions. Azure DevOps נבחרת לעיתים קרובות בזכות מעקב משולב אחר פריטי עבודה ומורשת Visual Studio Team Services (TFS), ואילו GitHub מציעה מערכת אקולוגית גדולה של קוד פתוח ותכונות שיתוף פעולה מודרניות.

באיזה כלי כדאי להשתמש לבקרת גרסאות: Azure Repos או GitHub Repos?

שני הכלים תומכים במאגרי git ובבקרת גרסאות. Azure Repos משתלבת היטב עם Azure Boards ו-Azure Pipelines, ולכן היא מושכת צוותים שעובדים לפי תהליכי Microsoft Azure DevOps. GitHub Repos (המתארח ב-GitHub) מצטיינת במאגרים ציבוריים ופרטיים, בניהול פרויקטים של קוד פתוח, בתרומות מהקהילה ובתכונות כמו זרימות pull request. בחרו לפי השאלה אם אתם מעדיפים את Azure Boards המשולבת או את פלטפורמת GitHub הרחבה והקהילה שלה.

האם אפשר להעביר מאגרים מ-Azure Repos ל-GitHub?

כן, אפשר להעביר מאגרים מ-Azure Repos ל-GitHub. צוותים רבים מייצאים מאגרי git מ-ADO ומייבאים אותם ל-GitHub, או משתמשים בכלי מיגרציה. בדרך כלל המיגרציה כוללת שמירה על היסטוריית הקומיטים, ניהול של enterprise managed users עבור GitHub Enterprise Cloud, ועדכון אינטגרציות CI/CD מ-Azure Pipelines ל-GitHub Actions, אם רוצים בכך.

איך Azure Boards ו-GitHub Issues משתווים לניהול פרויקטים אג'ילי?

Azure Boards מספק ניהול פרויקטים אג'ילי מתקדם, הכולל פריטי עבודה, backlogs, ספרינטים ואינטגרציה עמוקה עם pipelines ו-Test Plans, ולכן הוא כלי חזק לניהול פרויקטים בארגונים גדולים. GitHub Issues (וכן לוחות הפרויקטים של GitHub) פשוטים יותר ומתאימים יותר לפרויקטים קוד פתוח ולזרימות עבודה של קהילות מפתחים. עם זאת, GitHub הרחיבה את התמיכה שלה בתכונות תכנון פרויקטים נוספות, וחלק מהצוותים משתמשים בשני העולמות הטובים ביותר על ידי חיבור מאגרי GitHub ל-Azure Boards.

האם GitHub Copilot זמין למשתמשי Azure DevOps?

GitHub Copilot משתלב בעיקר בכלי פיתוח כמו Visual Studio Code ו-Visual Studio, ולכן מפתחים שעובדים עם Azure DevOps עדיין יכולים להשתמש ב-Copilot בסביבת הפיתוח שלהם. השקת GitHub Copilot ותכונות ה-copilot workspace שבאו אחריה הופכות אותו לזמין למפתחים ללא קשר ל-CI/CD שבשרת. עם זאת, בקרות ארגוניות ורישוי תלויים בשאלה אם אתם משתמשים ב-GitHub Enterprise Cloud או מעדיפים סביבות מנוהלות של Azure DevOps.

איזו פלטפורמה טובה יותר עבור enterprise managed users ואבטחה: GitHub או Azure DevOps?

שתי הפלטפורמות מציעות יכולות ארגוניות: Microsoft Azure DevOps מספק בקרת גישה מדויקת, אינטגרציה עם Azure AD ותכונות ציות מתקדמות, בעוד ש-GitHub Enterprise Cloud כולל enterprise managed users ואת GitHub Advanced Security for Azure, שמביא סריקת קוד, סריקת סודות וניהול תלויות. הבחירה תלויה בצרכים הארגון: Azure DevOps עשוי להשתלב טוב יותר בכלי Microsoft הקיימים, ואילו GitHub מספקת יכולות חזקות יותר לקוד פתוח ולקהילות, לצד אפשרויות אבטחה מתקדמות.

איך משתווים pipelines של CI/CD בין Azure Pipelines ל-GitHub Actions?

Azure Pipelines (חלק מ-Azure Boards and Pipelines) מציע CI/CD רב-פלטפורמי ואיתן, עם אינטגרציה חזקה ל-Azure DevOps ול-Visual Studio. GitHub Actions משולב היטב בפלטפורמת GitHub ומספק זרימות עבודה גמישות שמופעלות על ידי אירועים במאגר, וכן אוטומציה חלקה של pull requests. שתי המערכות תומכות בקונטיינרים, בפריסות לענן וב-self-hosted runners. בחרו בכלי ה-DevOps שמתאים לזרימת העבודה שלכם, או השתמשו בשני העולמות הטובים ביותר על ידי חיבור ביניהם.

האם אפשר להשתמש ב-Visual Studio וב-VS Code עם שתי הפלטפורמות?

כן, גם Visual Studio וגם Visual Studio Code (VS Code) תומכים ב-GitHub וב-Azure DevOps. ל-Visual Studio יש אינטגרציות מובנות ל-Azure Repos ול-ADO, ואילו VS Code עובד היטב עם מאגרי GitHub, עם GitHub Copilot ועם מאגרי git רגילים. מפתחים יכולים להשתמש בכלים האלה על פני הפלטפורמות השונות כדי לערוך קוד, להריץ בדיקות ולעבוד עם pull requests או פריטי עבודה.

ומה לגבי בדיקות: האם Azure Test Plans קיים ב-GitHub?

Azure Test Plans הוא פתרון בדיקות משולב ב-Azure DevOps, המספק כלים לבדיקות ידניות ובדיקות חקר. ל-GitHub אין מוצר תוכנית בדיקות מובנה זהה, אך אפשר לשלב מסגרות בדיקה, actions וכלי ניהול בדיקות של צד שלישי עם מאגרי GitHub, כדי להשיג יכולות דומות של אוטומציית בדיקות ודיווח.

איך נבדלים התמחור והאירוח: אירוח ב-GitHub לעומת Microsoft Azure DevOps?

GitHub מציעה שירותים מאורחים (GitHub.com, GitHub Enterprise Cloud) עם תוכניות מדורגות לצוותים ולארגונים, ודגש על מאגרים ציבוריים ופרטיים ועל גישה לקהילה. Microsoft Azure DevOps Services מציע גם הוא אפשרויות ענן מאורחות עם תמחור לפי משתמש, וכן גרסאות on-premises (לשעבר TFS ו-Visual Studio Team Services). בהחלטות עלות יש לקחת בחשבון את דקות ה-pipelines, אחסון ארטיפקטים, enterprise managed users, והאם נדרש אירוח מקומי.

האם צוותים יכולים להשתמש גם ב-GitHub וגם ב-Azure DevOps יחד?

כן, ארגונים רבים משלבים בין GitHub לאירוח קוד ולשיתוף פעולה קהילתי, לבין Azure DevOps לניהול פרויקטים, pipelines או תוכניות בדיקה. הגישה הזו מאפשרת ליהנות משני העולמות הטובים ביותר: החוזקות של פלטפורמת GitHub למאגרים ולקהילה, לצד יכולות של Azure DevOps כמו Azure Boards. אינטגרציות ומחברים מאפשרים לסנכרן מאגרים מ-Azure Repos ל-GitHub, או לקשר אירועים ממאגרי GitHub ללוחות ADO.

איזה כלי מעדיפים מפתחים בקהילת הפיתוח: GitHub או Azure DevOps?

תורמי קוד פתוח ומפתחים עצמאיים רבים מעדיפים את GitHub, משום שהוא מטפח קהילה, תומך במאגרים ציבוריים ופרטיים ומציע תהליכי סקירה משולבים. לעומתם, מפתחים בארגונים ופרויקטים שדורשים ניהול פרויקטים מקיף נוטים להעדיף את Azure DevOps. ההעדפות תלויות גם בהשקעה קיימת ב-Visual Studio וב-Microsoft Azure, וכן בשאלה אם יכולות כמו GitHub Copilot או GitHub Advanced Security for Azure הן בראש סדר העדיפויות.

אילו שיקולים צריך צוות לשקול כשהוא בוחר בין GitHub ל-Azure DevOps?

שקלו את צורכי ניהול גרסאות שלכם, את האינטגרציה עם Visual Studio או VS Code, את הצורך בניהול פרויקטים אג'ילי (Azure Boards), את דרישות האבטחה והציות, את הצורך ב-Azure Test Plans, את החשיפה לקהילה ולקוד הפתוח, וכן את השאלה אם אתם רוצים יכולות כמו GitHub Copilot או סריקות אבטחה מתקדמות. הערכו איזה כלי DevOps מתאים לזרימת העבודה שלכם, או אמצו מודל היברידי שמנצל מאגרים מ-Azure Repos, או מאגרים מ-GitHub יחד עם Azure Boards וצינורות (pipelines).

Entities in this article

GitHub DevOps Azure DevOps Governance Microsoft Fabric GitHub Actions Continuous integration Automation Secrets management Compliance

Related articles

RSS