איך Vault יכול לעזור באבטחת ארכיטקטורת Microservices ?
ארכיטקטורת microservices מצריכה פתרון אג'ילי (agile), אשר יספק פתרון לאחסון והצפנת סודות (secrets) ע"פ הסביבות שבונים במסגרת ארכיטקטורה זו – ואת זה מספק HashiCorp Vault .
היופי ב- Vault הוא שהוא אגנוסטי כך שהוא מתאים לכל ענן ולכל framework, כך שבשימוש בו לא הופכים לתלויים בענן כלשהו או בתשתית כלשהי כדי לאחסן את הסודות – זה פשוט מתאים לכל סוגי האפליציות.
אם עד כה הרצתם אפליקציות על מכונות פיזיות (bare-metal) זה דבר אחד. אבל ברגע שאתם מתחילים להעביר אותם לקונטיינרים (כחלק ממעבר ל- microservices), תגלו אתגרים חדשים השונים מאלו שהיו לכם עד כה.
Microservices מצריכים פתרון טוב יותר לניהול סודות
אחד האתגרים העיקריים בהם תתקלו הוא יכולת הגדילה (scalability). הדרך הישנה והמוכרת להעברת סודות למכונות הייתה באמצעות כלי קונפיגורציה כמו Puppet, Chef או Ansible. אך כאשר אנו מתחילים לעבור למיקרו-שירותים, תגלו שתצטרכו להרים microservices בצורה מהירה מאוד ובסביבות שונות, או להעביר אותם מהר ממכונה למכונה.
למעשה תגלו שתצטרכו פתרון זריז ואג'ילי מאוד המסוגל להעביר את הסודות במהירות לכל סביבה, ולמעשה תצטרכו פתרון מבוסס API לשם כך – כפי שקיים ב- Vault.
ויותר מזה – ל- Vault שיטות אותנטיקציה גמישות כך שאם אתם משתמשים ב- Kubernetes או Nomad תמצאו דרכים נוחות לגשת אל הסודות.
Automatic authentication with Vault
כל העננים המובילים (AWS, GCP, Azure ועוד) מאפשרים לכם לעשות אותנקטיקציה אוטומטית לתוך Vault , וזה מאפשר אחסון ואחזור של סודות בצורה קלה המאפשרת גם גדילה.
ברגע שיש לכם אלפי microservices (ואפילו יותר), זה הופך לקשה מאוד עד בלתי אפשרי לנהל זאת באופן ידני – כך שאוטומציה של אחזור סודות באופן מהיר ובעזרת API היא הדרך הנכונה והמועדפת כיום. אלפי ארגונים מעדיפים להשתמש ב- Vault עקב כך (ולמעשה Vault הפך דה-פקטו לסטנדרט בתחום).
Vault מגיע בגירסא חינמית עם סט יכולות בסיסי, וכן קיימת גירסת Enterprise בתשלום, המציעה יכולות נוספות מעל הגיראס החינמית.
למידע נוסף פנו אלינו: hashicorp@almtoolbox.com או טלפונית: 072-240-5222
הגנה טובה יותר באמצעות שימוש בסודות דינאמיים
דבר נוסף שמיושם בצורה מצוינת ב- Vault הוא השימוש בסודות דינאמיים (Dynamic Secrets). אחד האתגרים כידוע הוא ההתפזרות של הסודות ע"פ האפליקציה (מפתחים נוטים להשאיר סודות בכל מיני מקומות בקוד ואח"כ קשה למצוא אותם), מה שמקל לרוב על פורצים – ברגע שהצליחו להכנס דרך פרצה אחת (של user/password) למשל, אז כנראה יהיה להם קל לפרוץ גם לאיזורים אחרים באפליקציה שלנו.
סודות דינאמיים משנים את הפרדיגמה הזו, וזה חזק במיוחד ב- microservices : נניח ומישהו השיג גישה ל- microservice מסויים, אין זה אומר שיצליח להכנס גם לאחרים!
לרוב סודות דינאמיים נוצרים לזמן מוגבל וגם ניתנים לביטול בקלות, כך שאם חלילה מתגלת פירצה בחלק אחד של האפליקציה, אפשר לבטל את אחד הסודות ולא צריך לעצור את כל האפליקציה או להוריד אותה.
מוזמנים גם לצפות סרטון קצרצר המסביר על הנושא:
הדובר: Jake Lundberg מחברת HashiCorp