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

Last reviewed 2025-07-22 UTC

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

כדי לאבטח את האפליקציות והמשאבים שלכם, אתם יכולים להגדיר אמצעי בקרה פרטניים על הגישה על סמך מגוון גורמים תלויי הקשר ושילובים שלהם. Google Cloud אתם יכולים להשתמש ב-Access Context Manager כדי להגדיר מדיניות גישה, שמכילה רמות גישה ופרמטרים של שירותים.

המסמך הזה מיועד לכל מומחה אבטחה שאחראי על ניהול זהויות והרשאות גישה (IAM) ועל האבטחה של משאבים ואפליקציות. Google Cloud במסמך הזה אנחנו מניחים שאתם כבר מכירים את Access Context Manager,‏Google Cloudואת ניהול הזהויות והרשאות הגישה (IAM).

רמות גישה

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

לדוגמה, אפשר להשתמש ב-Access Context Manager כדי להגדיר את רמות הגישה הבאות לארגון:

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

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

Google Cloud מאפשרת לכם להשתמש ברמות גישה לכמה סוגים שונים של אפליקציות או משאבים, כולל אלה שמתוארים במסמך הזה:

  • ‫Google Workspace ואפליקציות ושירותים אחרים מחוץ ל- Google Cloud
  • מסוף Google Cloud וממשקי Google Cloud API
  • היקפי שירות של ענן וירטואלי פרטי (VPC)
  • שרת proxy לאימות זהויות (IAP) לגישת SSH ו-RDP
  • IAP לאפליקציות אינטרנט

אפליקציות ומשאבים

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

‫Google Workspace ואפליקציות ושירותים אחרים מחוץ ל- Google Cloud

אפליקציות ושירותים מחוץ ל- Google Cloud שתומכים בגישה מבוססת-הקשר כוללים את האפליקציות והשירותים הבאים:

כדי להגביל את הגישה ל-Google Workspace ולאפליקציות ולשירותים מחוץ ל-Google Cloud, צריך להגדיר בקרת גישה מבוססת-הקשר לכל שירות או אפליקציה בנפרד במסוף Admin. במסוף Admin, מבצעים את הפעולות הבאות:

  • מגדירים את ההיקף שרוצים להחיל עליו את רמת הגישה. היקף הוא שילוב של הדברים הבאים:

    • שירות ספציפי או אפליקציית SAML שרוצים להגן עליהם.
    • יחידה ארגונית (OU) או קבוצה שמכילה משתמשים רלוונטיים.
  • בוחרים את רמת הגישה שרוצים להחיל על ההיקף שנבחר.

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

יכול להיות שיהיו יותר מהקצאה אחת שחלה על משתמש מסוים ועל אפליקציה מסוימת. לדוגמה, משתמש יכול להיות חבר ביחידה הארגונית Employees וחבר בצוות all-apac. יכול להיות שיוקצו ליחידה הארגונית ולחברים בקבוצה רמות גישה שונות. במקרה כזה, Cloud Identity ו-Google Workspace יחילו רק אחת מההקצאות, שהיא ההקצאה עם העדיפות הגבוהה ביותר:

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

בעזרת Cloud Identity ו-Google Workspace אפשר לעיין באירועים של בקרת גישה מבוססת-הקשר ולנתח אותם ביומן של בקרת גישה מבוססת-הקשר.

מסוף Google Cloud וממשקי API של Google Cloud

אפשר להגדיר בקרת גישה מבוססת-הקשר למסוף Google Cloud ולממשקיGoogle Cloud API באמצעות הרשאות גישה.

Google Cloud ממשקי ה-API משתמשים ב-OAuth 2.0 לאימות. כדי להשתמש ב-API‏ Google Cloud, המשתמשים צריכים אסימון גישה תקף מסוג OAuth שהונפק על ידי Google, והאסימון צריך להיות מונפק עבור אחד מהיקפי ההרשאות של OAuth‏Google Cloud . הגדרות של הרשאות גישה מגבילות את היכולת של משתמשים להשיג טוקנים כאלה של גישה. כתוצאה מכך, הרשאות הגישה מגבילות את הגישה ל Google Cloud מסוף ולכל אפליקציות OAuth שמשתמשות בהיקפי OAuth, כמו: Google Cloud

קישור גישה מקשר קבוצה לרמת גישה. לכל קבוצה יכול להיות רק קישור גישה אחד. כל קישור גישה יכול להגדיר את ההגדרות הבאות:

  • רשימה של scopedAccessSettings שבה מוקצות רמות גישה לאפליקציות OAuth ספציפיות.
  • רמת גישה שמוגדרת כברירת מחדל.

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

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

חל רק הקישור האחרון שנוצר.

גבולות גזרה לשירות VPC

כשיוצרים גבולות גזרה לשירות VPC, מציינים רשימה של שירותים מוגבלים. אפשר לגשת לשירותים מוגבלים מתוך גבולות גזרה לשירות, אבל כברירת מחדל אי אפשר לגשת אליהם מחוץ לגבולות גזרה לשירות.

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

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

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

כדי לבדוק ולנתח את הניסיונות לגשת למשאבים במתחם היקפי של שירות VPC, אפשר להשתמש ביומני הביקורת של VPC Service Controls או בכלי לניתוח הפרות של VPC Service Controls.

גישת SSH ו-RDP למכונות וירטואליות

אפשר להגדיר בקרת גישה מבוססת-הקשר לגישת SSH ו-RDP למכונות וירטואליות באמצעות העברת TCP באמצעות IAP.

העברת TCP ב-IAP תומכת בקשרי גישה ובכללי תעבורת נתונים נכנסת (ingress) באזור של VPC Service Controls. הרשאות הגישה שלכם ל- Google Cloud Console ולממשקי Cloud API חלות באופן אוטומטי על העברת TCP ב-IAP.

אם גבולות הגזרה לשירות כוללים את השירות iaptunnel.googleapis.com כשירות מוגבל, כללי ה-ingress יחולו אוטומטית על העברת TCP ב-IAP. פרטים על שיטות מומלצות זמינים במאמר הוספת העברת TCP של IAP כשירות מוגבל.

אפשר גם להגדיר בקרת גישה מבוססת-הקשר באמצעות תנאים של IAM. אתם יכולים להשתמש בתנאים של IAM כחלופה לקישורי גישה ולכללי תעבורת נתונים נכנסת (ingress) של גבולות גזרה לשירות ב-VPC, או להשתמש בכל האפשרויות האלה יחד.

  • מקצים למשתמש או לקבוצה את התפקיד 'משתמש מנהרה באבטחת IAP' (roles/iap.tunnelResourceAccessor). לאחר מכן, בהרשאת התפקיד, מוסיפים ביטוי של תנאי IAM שדורש מהמשתמש לעמוד ברמת גישה מסוימת. לדוגמה, הביטוי יכול להיראות כך:

    "accessPolicies/123/accessLevels/fully-trusted" in request.auth.access_levels
    
  • אפשר גם להתאים אישית את תנאי ה-IAM כך שידרוש כמה רמות גישה או שיכלול בדיקות אחרות.

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

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

אפליקציות אינטרנט

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

רכישות מתוך אפליקציה באפליקציות אינטרנט שונות מרכישות מתוך אפליקציה בהעברת TCP:

  • הגדרות של הרשאות גישה לא חלות על אפליקציות אינטרנט שמוגדרות עם IAP, כי אפליקציית OAuth ש-IAP משתמשת בה לא משתמשת בהיקפי הרשאות OAuth. Google Cloud
  • כללי תעבורת נתונים נכנסת (ingress) של גבולות גזרה לשירות ב-VPC לא חלים על אפליקציות אינטרנט שהוגדרו עם IAP, כי IAP הוא לאGoogle Cloud API ואי אפשר להגדיר אותו כשירות מוגבל.

כדי להגדיר בקרת גישה מבוססת-הקשר לאפליקציות אינטרנט באמצעות IAP, צריך להשתמש בתנאי IAM:

  • נותנים למשתמש או לקבוצה את התפקיד 'משתמש באפליקציית אינטרנט באבטחת IAP' (roles/iap.httpsResourceAccessor). לאחר מכן, בהתאמת התפקיד, מוסיפים ביטוי של תנאי IAM שדורש מהמשתמש לעמוד ברמת גישה מסוימת. לדוגמה, הביטוי יכול להיראות כך:

    "accessPolicies/123/accessLevels/fully-trusted" in request.auth.access_levels
    
  • אפשר גם להתאים אישית את תנאי ה-IAM כך שידרוש כמה רמות גישה או שיכלול בדיקות אחרות.

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

המאמר הבא

שותפים ביצירת התוכן

מחבר: Johannes Passing | Cloud Solutions Architect

תורם נוסף: Ido Flatow | Cloud Solutions Architect