מהו Azure Blueprint

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

אחת הדרכים לבצע היא באמצעות Azure Blueprint המספק יכולות פריסה לרכיבי Azure ויחד עם זאת מספק יכולות Governance ותאימות.

מהו Azure Blueprint

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

Azure Blueprint מורכב מתוך קבוצה של משאבים שיכולים לסייע ביישומים שונים כולל אכיפת Governance, וניתן לשלב מול רכיבים מרכזים בשירות Azure כדוגמת:

  • Infrastructure as a Service
  • Platform as a Service
  • Data Analytics
  • Data Warehouse

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

Azure Blueprint מאפשר לאדמינים לתכנן את הפריסה של תבניות, משאבים ונכסים שונים של Azure אשר כוללים את האפשרויות הבאות:

  • Role Assignments
  • Policy Assignments
  • Azure Resource Manager templates
  • Resource Groups

האיפיון ובנית הרכיבים נשמר על גבי שירות Azure Cosmos DB, ושירות Cosmos DB מרפלק באופן גלובאלי את האובייקטים לאזורים שונים בעולם בכדי לספק גישה זמינה ובנוסף לכך לאפשר Latency לכל אותם אובייקטים ללא קשר למקום בו הם נפרסים מתוך התבניות של Azure Blueprint.

אם כך מהו ההבדל מול Resource Manager? וישנו הבדל כי Azure Blueprint מאפשר ומסייע בהגדרת סביבות בענן, ולעיתים הגדרות אלה מורכבות על גבי מספר רכיבים, מדיניות, הקצאת תפקידים ופריסת תבנית של ניהול המשאבים.

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

טיפ: ניתן לאפיין ארטיפקטים כולל שילוב של תהליכי CI/CD.

ניתן לכלול (למעט מקרי קצה) בפריסה של תכניות של Azure Blueprints באמצעות Resource Manager Template, אך יחד עם זאת תבנית (מסמך) Resource Manager איננה קיימת באופן טבעי בשירות Azure – כל אחד מאוחסן באופן מקומי.

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

ומהו ההבדל מול Azure Policy? הוזכר קודם לכן ש Azure Blueprintהוא חבילה (או Conatainer)  המורכבת מסטים שונים וספציפים המבוססים על סטנדרט מסוים, דפוס ודרישות הקשורים ליישומי ענן או אבטחת מידע הניתנים לשימוש חזור במטרה לשמור על עקביות ותאימות.

Azure Policy היא ברירת מחדל המאפשרת או דוחה הממוקדת במאפייני משאבים במהלך הפריסה ובמשאבים אשר קיימים, והיא תומכת באפשרויות Governance על ידי אימות המשאבים של Azure SUbscription אשר עומדים בדרישות ובתקנים השונים.

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

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

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

תהליך כללי של Azure Blueprint

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

Azure Blueprint תומך בפעולות lifecycle טיפוסיות ואף בונה עליהן. Azure Blueprints מספק תמיכה באינטגרציה רציפה אופיינית כולל Pipeline לפריסה מתמשכת בתרחישים של infrastructure as code.

תהליך Lifecycle כללי של Azure Blueprint נעשה לפי הדגשים הבאים:

  • יצירה של Blueprint
  • פרסום של אותו Blueprint
  • עריכה של גרסת Blueprint
  • פרסום מחדש של אותו Blueprint (זה שנערך שוב)
  • מחיקה של גרסאות ספציפיות

מאפיינים בהגדרת Azure Blueprint

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

Resource Group נמצא בהיררכיה ברמת Subscription ונועד ליצירת קבוצות משאבים ע"י ארטיפקטים אחרים באותו Blueprint.

קבוצות משאבים מאפשרות לארגן משאבים בדיוק לפי הדרישות ומספקים גבולות עבור חפצי מדיניות או תפקידים אחרים בתבניות של ארטיפקטים ושל תבנית Resource Group Manager.

Azure Resource Manager template נמצא בהיררכיה ברמת Subscription וכן ברמת Resource Group.

תבניות, כולל תבניות Nested ותבניות מקושרות, משמשות לחיבור סביבות מורכבות. למשל, חוות SharePoint או Azure Automation או סביבת עבודה של Log Analytics.

Policy Assignment נמצא בהיררכיה ברמת Subscription וכן ברמת Resource Group.

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

Role Assignment נמצא בהיררכיה ברמת Subscription וכן ברמת Resource Group.

הוספת משתמשים או קבוצה קיימים לתפקיד מובנה בכדי לוודא שלמשתמשים הנכונים תמדי תהיה גישה מורשית למשאבים שאליהם הוגדרו מראש, וניתן להגדיר Role Assinment עבור כל קבוצת משאבים ספציפית השייכת אל Blueprint.

יצירת Azure Blueprint

תהליך יצירת Blueprint נעשית באמצעות פעולות של יצירה, שיוך והוספת משאבים לארטיפקטים ומשם פרסום אל אותם Subscription שנמצאים בשירות Azure.

בדוגמה שלפנינו ניתן לראות את הדרל הבסיסית ביותר והפשוטה ליצירת Blueprint לטובת Audit של משתמש מסוים.

 

מה דעתך?

This site uses Akismet to reduce spam. Learn how your comment data is processed.