כדי לשפר את האבטחה הכוללת, שרת ה-IAP דוחה כברירת מחדל בקשות שלא כוללות התאמה של Server Name Indication (SNI). IAP גם בודק את ה-SNI של אישור מאזן העומסים. כך אפשר להגדיר ב-IAP הגבלות על הפניות אוטומטיות של כתובות URL לדומיינים זדוניים. התכונה 'דומיינים מותרים של IAP' מספקת שכבת אבטחה נוספת למשאבים שמוגנים על ידי IAP. בעלי משאבים או אדמינים של IAP יכולים להגביל את הגישה למשאבים שמוגנים על ידי IAP לדומיינים ספציפיים באמצעות הגדרת התכונה 'דומיינים מורשים'.
אפשר גם להגדיר דומיינים מורשים ל-IAP בתרחישים הבאים:
- הדפדפן או שרת proxy ביניים כופים איגום חיבורים: בתרחיש הזה, מתקבלת תגובת HTTP 429 וקוד השגיאה
51. כדי לפתור את הבעיה, אדמין של IAP יכול לעדכן את רשימת הדומיינים המותרים כך שתכלול את שם המארח שלכם. - שם המארח שצוין לא תואם לאישור ה-SSL בשרת: בתרחיש הזה, מתקבל קוד השגיאה
52. כדי לפתור את הבעיה, אדמין של IAP יכול לעדכן את רשימת הדומיינים המותרים כך שתכלול את שם המארח שלכם.
הגדרת דומיינים מורשים
אפשר להשתמש ב-gcloud או ב-API כדי להגדיר את ההגדרות של הדומיינים המורשים. כדי להגדיר דומיינים מורשים, משתמשים בשדות הבאים:
-
enable: בוליאני. מפעילים או משביתים את התכונה 'דומיינים מורשים'. -
Domains: מחרוזת. רשימת הדומיינים המותרים. הדומיינים יכולים להכיל קידומות של תווים כלליים לחיפוש, כמו*.example.com.שמות הדומיינים לא יכולים להכיל תו כללי לחיפוש ישירות בסיומת ציבורית או בדומיין ברמה העליונה. לדוגמה:*.com,*.co.in.
מידע נוסף מופיע בקטע IapSettings.
כדי להגדיר את הדומיינים המורשים ב-IAP:
המסוף
- עוברים לדף של הרכישה מתוך האפליקציה.
כניסה לשרת proxy לאימות זהויות (IAP). - בוחרים פרויקט ואז בוחרים את המשאב שבו רוצים להפעיל את התכונה 'דומיינים מורשים'.
- פותחים את ההגדרות של המשאב. בקטע דומיינים מורשים, בוחרים באפשרות הפעלת דומיינים מורשים.
- מציינים את רשימת הדומיינים המורשים ולוחצים על שמירה.
gcloud
בהמשך מופיעות כמה דוגמאות לפקודות לציון דומיינים מותרים.
מידע נוסף זמין במאמר gcloud iap settings set.
מריצים את הפקודה הבאה:
gcloud iap settings set SETTING_FILE --folder=FOLDER --organization=ORGANIZATION --project=PROJECT --resource-type=RESOURCE_TYPE --service=SERVICE --version=VERSION
כאשר SETTING_FILE הוא:
accessSettings:
allowed_domains_settings:
enable: true
domains: ["*.example.com", "*.example.net"]
מחליפים את מה שכתוב בשדות הבאים:
- FOLDER: מזהה התיקייה.
- ORGANIZATION: מזהה הארגון.
- PROJECT: מזהה הפרויקט.
- RESOURCE_TYPE: סוג משאב IAP. חייב להיות
app-engine,iap_web,compute,organization,folder,backend-services,forwarding-ruleאוcloud-run. - SERVICE: שם השירות. השלב הזה הוא אופציונלי אם
resource-typeהואcomputeאוapp-engine. - VERSION: שם הגרסה. האפשרות הזו לא רלוונטית ל-
compute, והיא אופציונלית כש-resource-typeהואapp-engine.
כדי להגדיר את היקף ההגדרות, צריך לציין לפחות אחד מהדגלים הבאים:
--organization=ORGANIZATION--folder=FOLDER--project=PROJECT
API
כדי להגדיר דומיינים מורשים, מבצעים את השלבים הבאים. מידע נוסף על שימוש ב-API להגדרת דומיינים מורשים זמין במאמר IapSettings.
- מריצים את הפקודה הבאה כדי להכין קובץ
iap_settings.json. מעדכנים את הערכים לפי הצורך.
{
"access_settings":{
"allowed_domains_settings":{
"enable": true
"domains": [
"*.example.com",
"*.exampe.net"
]
}
}
}
- מריצים את הפקודה
gcloud iap settings getכדי לקבל את שם המשאב. מעתיקים את השדה name מהפלט. תצטרכו את השם בשלב הבא.
gcloud iap settings get --organization=ORGANIZATION --folder=FOLDER --project=PROJECT --resource-type=RESOURCE_TYPE --service=SERVICE --version=VERSION
- מחליפים את
RESOURCE_NAMEבפקודה הבאה בשם מהשלב הקודם. ה-IapSettingsיעודכן.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d @iap_settings.json \ "https://iap.googleapis.com/v1/RESOURCE_NAME:iapSettings?updateMask=iapSettings.accessSettings.allowedDomainsSettings.enable,iapSettings.accessSettings.allowedDomainsSettings.domains"
פתרון בעיות
בעיה בגישה לדומיינים מורשים
אם מופיע קוד שגיאה 53, צריך לבקש מאדמין של IAP להוסיף את שם המארח לרשימת הדומיינים המורשים.