בדף הזה מוסבר איך אפשר להשתמש בהעברת TCP באמצעות שרת proxy לאימות זהויות (IAP) כדי לאפשר גישת אדמין למופעים של מכונות וירטואליות שאין להן כתובות IP חיצוניות או שלא מאפשרות גישה ישירה דרך האינטרנט.
העברת TCP ב-IAP מאפשרת לכם ליצור מנהרה מוצפנת שדרכה תוכלו להעביר תעבורת נתונים מסוג SSH, RDP ותעבורה אחרת למכונות וירטואליות. העברת TCP ב-IAP גם מספקת לכם שליטה מדויקת על המשתמשים שמורשים ליצור מנהרות ועל מופעי ה-VM שהמשתמשים מורשים להתחבר אליהם.
בסקירה הכללית על העברת TCP תוכלו לקרוא איך העברת TCP ב-IAP פועלת.
הכנת הפרויקט להעברת TCP של IAP
בקטע הזה מוסבר איך להפעיל העברת TCP ב-IAP בפרויקט ב- Google Cloud .
יצירת כלל לחומת האש
כדי לאפשר ל-IAP להתחבר למופעי ה-VM, צריך ליצור כלל חומת אש ש:
- רלוונטי לכל מכונות ה-VM שרוצים לגשת אליהן באמצעות IAP.
- מאפשרת תנועת נתונים נכנסת מטווח כתובות ה-IP
35.235.240.0/20. הטווח הזה כולל את כל כתובות ה-IP שמשמשות את IAP להעברת TCP.למכונות וירטואליות עם IPv6, משתמשים בטווח ה-IP הבא:
2600:2d00:1:7::/64. - מאפשרת חיבורים לכל היציאות שרוצים שתהיה אליהן גישה באמצעות העברת TCP ב-IAP, למשל יציאה
22ל-SSH ויציאה3389ל-RDP.
המסוף
כדי לאפשר גישת RDP ו-SSH לכל מופעי מכונות וירטואליות ברשת, מבצעים את הפעולות הבאות:
- פותחים את הדף Firewall Rules (כללים של חומת האש).
שאר השלבים יופיעו במסוף Google Cloud .
- בוחרים פרויקט Google Cloud .
- בדף 'כללים של חומת אש', לוחצים על
יצירת כלל חומת אש . - קובעים את ההגדרות הבאות:
- Name (שם):
allow-ingress-from-iap - כיוון התנועה: כניסה
- טירגוט: כל המופעים ברשת
- מסנן מקור: טווח כתובות IP
- טווח כתובות ה-IP של המקור:
35.235.240.0/20 - פרוטוקולים ויציאות: בוחרים באפשרות TCP ומזינים
3389,22כדי לאפשר גם RDP וגם SSH.
- Name (שם):
- לוחצים על יצירה.
gcloud
כדי לאפשר גישת RDP לכל המכונות הווירטואליות ברשת, מריצים את הפקודה:
gcloud compute firewall-rules create allow-rdp-ingress-from-iap \ --direction=INGRESS \ --action=allow \ --rules=tcp:3389 \ --source-ranges=35.235.240.0/20
כדי לקבל גישת SSH, מריצים את הפקודה:
gcloud compute firewall-rules create allow-ssh-ingress-from-iap \ --direction=INGRESS \ --action=allow \ --rules=tcp:22 \ --source-ranges=35.235.240.0/20
לפרוטוקולים אחרים, מריצים את הפקודה
gcloud compute firewall-rules create allow-ingress-from-iap \ --direction=INGRESS \ --action=allow \ --rules=tcp:PORT \ --source-ranges=35.235.240.0/20
כאשר PORT היא היציאה שבה הפרוטוקול משתמש.
הקצאת תפקידים להעברת TCP ב-IAP
כדי לקבוע לאילו משתמשים וקבוצות מותר להשתמש בהעברת TCP באמצעות IAP ולאילו מכונות וירטואליות מותר להם להתחבר, צריך להעניק את התפקידים המתאימים בניהול הזהויות והרשאות הגישה (IAM) בפרויקט.
אם אתם משתמשים ב-OS Login (מומלץ), כדאי לעיין במאמר בנושא הגדרת תפקידים ב-OS Login בחשבונות משתמשים.
בטבלה הבאה מפורטים התפקידים המוגדרים מראש שצריך להקצות לאדמינים מהימנים כדי להשתמש בהעברת TCP ובמשימות שקשורות אליה:
| משימה | תפקידים | מידע נוסף |
|---|---|---|
| העברת TCP |
משתמש מנהרה באבטחת IAP (roles/iap.tunnelResourceAccessor)
|
אפשר לעיין במאמרים בנושא מתן גישה לכל המכונות הווירטואליות בפרויקט או מתן גישה למכונה וירטואלית ספציפית. |
| גישת SSH |
Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1)
|
|
| שימוש בחשבון שירות | משתמש בחשבון שירות (roles/iam.serviceAccountUser) |
ראו התפקיד serviceAccountUser. |
אם אתם רוצים ליצור תפקידים בהתאמה אישית עם ההרשאות הספציפיות שנדרשות לביצוע המשימה הזו, תוכלו לעיין במאמר פרטי הרשאות.
אתם יכולים להעניק למשתמש או לקבוצה גישה לכל המכונות הווירטואליות בפרויקט, או למכונה וירטואלית ספציפית, בהתאם לאופן שבו אתם מעניקים את התפקידים הנדרשים.
אין תמיכה בתגים
בשלב הזה, אי אפשר לתת הרשאה לשימוש בהעברת TCP של IAP באמצעות תגים.
הענקת גישה לכל המכונות הווירטואליות בפרויקט
כדי לתת למשתמש או לקבוצה גישה לכל המכונות הווירטואליות בפרויקט, צריך להקצות את תפקידי ה-IAM הנדרשים ברמת הפרויקט:
המסוף
- פותחים את הדף IAM & Admin במסוף Google Cloud .
שאר השלבים יופיעו במסוף Google Cloud .
- בדף IAM ואדמין, לוחצים על הוספה ומגדירים את האפשרויות הבאות:
- New principals (ישויות מורשות חדשות): מציינים את המשתמש או הקבוצה שרוצים להעניק להם גישה.
- Select a role: בוחרים באפשרות Cloud IAP > IAP-Secured Tunnel User.
- אופציונלי: לוחצים על הוספת תנאי ומגדירים תנאי:
- שם: מזינים שם לתנאי.
- ביטוי: מזינים תנאי שמשתמש צריך לעמוד בו כדי לקבל את ההרשאות בתפקיד 'משתמש מנהרה באבטחת IAP'.
לדוגמה, ביטוי ה-CEL הבא מעניק גישה רק ליציאה 22:
destination.port == 22 - לוחצים על Add another role ומגדירים את האפשרויות הבאות:
- Select a role (בחירת תפקיד) בוחרים באפשרות Compute Engine > Compute Instance Admin (v1) (Compute Engine > אדמין מכונות של Compute (v1)).
- לוחצים על Save.
gcloud
מריצים את הפקודות הבאות כדי להעניק למשתמש את שני התפקידים:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member=user:EMAIL \ --role=roles/iap.tunnelResourceAccessor gcloud projects add-iam-policy-binding PROJECT_ID \ --member=user:EMAIL \ --role=roles/compute.instanceAdmin.v1
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: המזהה של הפרויקט -
EMAIL: כתובת האימייל של המשתמש שרוצים להעניק לו גישה, לדוגמהuser@example.com.
הענקת גישה למכונה וירטואלית ספציפית
כדי לתת למשתמש או לקבוצה גישה למכונה וירטואלית ספציפית, צריך לתת להם את התפקיד roles/iap.tunnelResourceAccessor במכונה הווירטואלית הזו. צריך להקצות את התפקידים האחרים בפרויקט.
המסוף
- פותחים את דף האדמין של IAP ובוחרים בכרטיסייה SSH and TCP Resources (משאבי SSH ו-TCP).
שאר השלבים יופיעו במסוף Google Cloud .
- בכרטיסייה SSH and TCP Resources בדף האדמין של IAP, בוחרים את מכונות ה-VM שרוצים להגדיר.
- אם חלונית המידע לא מוצגת, לוחצים על Show info panel.
לוחצים על Add principal ומגדירים את האפשרויות הבאות:
- New principals (ישויות מורשות חדשות): מציינים את המשתמש או הקבוצה שרוצים להעניק להם גישה.
- Select a role: בוחרים באפשרות Cloud IAP > IAP-Secured Tunnel User.
אפשר גם ללחוץ על הוספת תנאי ולהגדיר תנאי:
- שם: מזינים שם לתנאי.
- ביטוי: מזינים תנאי שמשתמש צריך לעמוד בו כדי לקבל את ההרשאות בתפקיד 'משתמש מנהרה באבטחת IAP'.
לדוגמה, ביטוי ה-CEL הבא מעניק גישה רק ליציאה 22:
destination.port == 22אפשר גם להעניק גישה על סמך רמת הגישה:
destination.port == 22 &&"FULL_ACCESS_LEVEL_NAME" in request.auth.access_levelsכאשר
FULL_ACCESS_LEVEL_NAMEהוא רמת גישה קיימת, והוא מופיע בפורמט הבא:accessPolicies/POLICY_NAME/accessLevels/ACCESS_LEVEL_NAME- לוחצים על Save.
API
כדי לערוך את קובץ policy.json של האפליקציה, פועלים לפי התהליך הבא.
מידע נוסף על שימוש בממשק ה-API של IAM לניהול מדיניות גישה זמין במאמר ניהול גישה למשאבים שמאובטחים באמצעות IAP.
מייצאים את המשתנים הבאים.
export IAP_BASE_URL=https://iap.googleapis.com/v1/projects/PROJECT_NUMBER/iap_tunnel # Replace POLICY_FILE.JSON with the name of JSON file to use for setIamPolicy export JSON_NEW_POLICY=POLICY_FILE.JSON
מקבלים את מדיניות IAM של מכונת Compute Engine באמצעות השיטה
getIamPolicy. ביט הנתונים הריק בסוף הופך את הבקשהcurlל-POST במקום ל-GET.curl -i -H "Authorization: Bearer $(gcloud auth print-access-token)" \ ${IAP_BASE_URL}/zones/ZONE_NAME/instances/INSTANCE_ID or INSTANCE_NAME:getIamPolicy \ -d ''כדי לתת את התפקיד
iap.tunnelResourceAccessorלחשבונות הראשיים, צריך לשנות את קובץ ה-JSON של מדיניות IAM.אפשר גם להעניק את התפקיד רק לחשבונות משתמשים שעומדים בקריטריונים ספציפיים, על סמך תנאים של IAM ורמות גישה.
זוהי דוגמה לקובץ
policy.jsonשעבר עריכה, שמעניק את התפקידiap.tunnelResourceAccessorלקבוצת אדמינים של מכונות וירטואליות, ומאפשר להם גישה למשאבי מנהרות מאובטחים ב-IAP. נוסף תנאי IAM כדי שהמשאבים יהיו נגישים רק לישויות בקבוצת האדמינים של מכונות וירטואליות עם כתובת IP פרטית של10.0.0.1ביציאה22באמצעותdestination.ipו-destination.portתנאי IAM. הם צריכים גם לעמוד בדרישות של רמת הגישה ACCESS_LEVEL_NAME.הערה: אם לחשבון משתמש יש תפקיד בעלים, יש לו הרשאה להשתמש ב-IAP להעברת TCP.
קובץ לדוגמה של policy.json{ "policy": { "bindings": [ { "role": "roles/iap.tunnelResourceAccessor", "members": ["group:instance-admins@example.com"], "condition": { "expression": "\"accessPolicies/POLICY_NAME/accessLevels/ACCESS_LEVEL_NAME\" in request.auth.access_levels && destination.ip == \"10.0.0.1\" && destination.port == 22", "title": "CONDITION_NAME" } } ] } }
כדי למצוא שם של מדיניות , קוראים לפונקציה
accessPolicies.list:GET https://accesscontextmanager.googleapis.com/v1/accessPolicies
מגדירים את קובץ
policy.jsonהחדש באמצעות ה-methodsetIamPolicy.curl -i -H "Content-Type:application/json" \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ ${IAP_BASE_URL}/zones/ZONE_NAME/instances/INSTANCE_ID or INSTANCE_NAME:setIamPolicy \ -d @${JSON_NEW_POLICY}
פרטי ההרשאות
ההרשאות הנדרשות משתנות בהתאם לאופן שבו המשתמש ישתמש בהעברת TCP של IAP:
| תרחישים | ההרשאות הנדרשות | |
|---|---|---|
| הכול |
|
|
שימוש ב-gcloud compute [start-iap-tunnel, ssh, scp] |
|
|
שימוש ב-gcloud compute [ssh, scp] |
|
|
| מכונה וירטואלית באמצעות OS Login | צריך לפעול לפי ההוראות האלה | |
| לא נעשה שימוש ב-OS Login |
|
|
| התחברות ל-VM באמצעות SSH באמצעות חשבון שירות |
|
|
| SSH מהדפדפן | צריך לפעול לפי ההוראות האלה | |
לדוגמה, אם משתמש רוצה להתחבר באמצעות gcloud compute ssh למכונה וירטואלית שלא מופעל בה OS Login, אבל מופעל בה חשבון שירות, המשתמש יצטרך את ההרשאות הבאות:
iap.tunnelInstances.accessViaIAPcompute.instances.getcompute.instances.listcompute.projects.getcompute.instances.setMetadatacompute.projects.setCommonInstanceMetadatacompute.globalOperations.getiam.serviceAccounts.actAs
מנהור של חיבורי SSH
אפשר להתחבר למכונות Linux שאין להן כתובת IP חיצונית באמצעות מנהור של תעבורת SSH דרך IAP.
כשמשתמשים במנהור IAP, שרתי ה-proxy של IAP מתחברים לכתובת ה-IPv4 הפנימית הראשית של nic0 במכונה הווירטואלית.
המסוף
כדי להתחבר למכונה, משתמשים בלחצן SSH בGoogle Cloud מסוף. הגדרת הגישה של המופע (מוגדרת באמצעות הרשאות IAM) צריכה לאפשר מנהור TCP דרך IAP.
gcloud
כדי להתחבר למכונה, משתמשים בפקודה gcloud compute ssh. הגדרת הגישה של המופע (מוגדרת באמצעות הרשאות IAM) צריכה לאפשר מנהור TCP דרך IAP.
gcloud compute ssh INSTANCE_NAME
מחליפים את INSTANCE_NAME בשם המכונה שאליה רוצים להתחבר באמצעות SSH.
אם למכונה אין כתובת IP חיצונית, החיבור משתמש אוטומטית במנהור TCP של IAP. אם למכונה יש כתובת IP חיצונית, החיבור משתמש בכתובת ה-IP החיצונית במקום במנהור TCP של IAP.
אפשר להשתמש בדגל --tunnel-through-iap כדי ש-gcloud compute ssh תמיד ישתמש במנהור TCP של IAP.
משתמשים בדגל --internal-ip כדי ש-gcloud compute ssh לעולם לא ישתמש במנהור TCP של IAP, אלא יתחבר ישירות לכתובת ה-IP הפנימית של המכונה הווירטואלית. הפעולה הזו שימושית ללקוחות שמחוברים לאותה רשת VPC כמו המכונה הווירטואלית של היעד.
IAP Desktop
אתם יכולים להשתמש ב-IAP Desktop כדי להתחבר למכונה וירטואלית באמצעות SSH והעברת TCP באמצעות IAP.
באפליקציה, בוחרים באפשרות קובץ > הוספת פרויקט בענן של Google.
מזינים את המזהה או את השם של הפרויקט ולוחצים על אישור.
בחלון Project Explorer, לוחצים לחיצה ימנית על מכונת ה-VM שרוצים להתחבר אליה ובוחרים באפשרות Connect (חיבור).

מידע נוסף על IAP Desktop זמין בדף הפרויקט ב-GitHub.
אפליקציית PuTTY
אתם יכולים להגדיר את אפליקציית אמולטור הטרמינל PuTTY ל-Windows כך שתשתמש בהעברת TCP של IAP כדי להתחבר למופע של מכונה וירטואלית. הגדרת הגישה של המופע (מוגדרת באמצעות הרשאות IAM) צריכה לאפשר מנהור TCP דרך IAP.
לפני שמגדירים את אפליקציית PuTTY, משתמשים בפקודה gcloud compute ssh פעם אחת כדי לוודא שיש לכם מפתח SSH פרטי במחשב המקומי, ושהמפתח הציבורי של SSH פורסם ב-Compute Engine:
פותחים שורת פקודה ומריצים את הפקודה הבאה כדי להתחבר למופע של המכונה הווירטואלית:
gcloud compute ssh INSTANCE_NAME ` --tunnel-through-iap ` --project PROJECT_ID ` --zone ZONE
מחליפים את מה שכתוב בשדות הבאים:
- INSTANCE_NAME: השם של המכונה שאליה רוצים להתחבר
- PROJECT_ID: מזהה הפרויקט שבו נמצא המופע של המכונה הווירטואלית
- ZONE: האזור שבו נמצא המופע של המכונה הווירטואלית
במידת הצורך, מאשרים שרוצים ליצור מפתחות SSH על ידי הקשה על
Y.במכונת ה-VM, מריצים את הפקודה הבאה כדי לקבוע את שם המשתמש:
whoami
תצטרכו את שם המשתמש הזה בהמשך.
עכשיו אפשר להגדיר את אפליקציית PuTTY לשימוש בהעברת TCP של IAP:
- פותחים את אפליקציית PuTTY ובוחרים בקטגוריה Connection (חיבור) > Proxy (שרת Proxy).
מגדירים את הגדרות לשרת proxy הבאות:
- בקטע סוג שרת ה-proxy, בוחרים באפשרות מקומי.
בשדה Telnet command, or local proxy command (פקודת Telnet או פקודת פרוקסי מקומי), מזינים את הערכים הבאים:
gcloud.cmd compute start-iap-tunnel %host %port --listen-on-stdin --project PROJECT_ID --zone ZONE
מחליפים את מה שכתוב בשדות הבאים:
- PROJECT_ID: מזהה הפרויקט שבו נמצא המופע של המכונה הווירטואלית
- ZONE: האזור שבו נמצא המופע של המכונה הווירטואלית
בקטע Print proxy diagnostics in the terminal window (אבחון של שרת proxy להדפסה בחלון הטרמינל), בוחרים באפשרות Only until session starts (רק עד שהסשן מתחיל).
בוחרים בקטגוריה Connection (חיבור) > SSH > Auth (אימות).
לוחצים על עיון, מדביקים את שם הקובץ הבא ולוחצים על פתיחה:
%USERPROFILE%\.ssh\google_compute_engine.ppk
בוחרים בקטגוריה סשן.
מגדירים את הגדרות לשרת proxy הבאות:
בשדה שם המארח (או כתובת ה-IP), מזינים את הפרטים הבאים:
USERNAME@INSTANCE_NAME
מחליפים את מה שכתוב בשדות הבאים:
- USERNAME: שם המשתמש ב-Linux שקבעתם קודם
- INSTANCE_NAME: השם של מופע המכונה הווירטואלית שאליו רוצים להתחבר
סשנים שמורים: מזינים שם לסשן.
לוחצים על Save.
לוחצים על פתיחה כדי להתחיל את סשן ה-SSH.
SSH
אפשר להשתמש ישירות בפקודת ה-SSH עם האפשרות ProxyCommand שמשתמשת ב-gcloud כדי להפעיל את המנהרה. משתמשים בפקודה הזו כדי ליצור את הפקודה המלאה ssh:
gcloud compute ssh INSTANCE_NAME --dry-run
מנהור של חיבורי RDP
אפשר להתחבר למכונות Windows שאין להן כתובת IP חיצונית באמצעות מנהור של תעבורת RDP דרך IAP:
IAP Desktop
אתם יכולים להשתמש ב-IAP Desktop כדי להתחבר ל-Remote Desktop של מכונה וירטואלית אחת או יותר באמצעות העברת TCP באמצעות IAP.
באפליקציה, בוחרים באפשרות קובץ > הוספת פרויקט בענן של Google.
מזינים את המזהה או את השם של הפרויקט ולוחצים על אישור.
בחלון Project Explorer, לוחצים לחיצה ימנית על מכונת ה-VM שרוצים להתחבר אליה ובוחרים באפשרות Connect (חיבור).

מידע נוסף על IAP Desktop זמין בדף הפרויקט ב-GitHub.
gcloud
כדי להתחבר ל-Remote Desktop של מופע VM, קודם יוצרים מנהרה.
משתמשים בפקודה
gcloud compute start-iap-tunnelכדי ליצור מנהרה מוצפנת ליציאת ה-RDP של מכונת ה-VM.gcloud compute start-iap-tunnel INSTANCE_NAME 3389 \ --local-host-port=localhost:LOCAL_PORT \ --zone=ZONEמחליפים את INSTANCE_NAME בשם של מכונת ה-VM שאליה רוצים להתחבר. מחליפים את LOCAL_PORT ביציאת localhost שאליה רוצים לקשר את ה-proxy, או משתמשים ב-0 כדי לבחור יציאה לא בשימוש באופן אוטומטי. מחליפים את ZONE באזור שבו נמצאת מכונת ה-VM.
gcloudמבצע בדיקת קישוריות עם מכונת ה-VM, ואז פותח מנהרה ומציג מספר יציאה.Listening on port [LOCAL_PORT].
כל תעבורת הנתונים שנשלחת אל localhost:LOCAL_PORT מועברת למופע של מכונה וירטואלית. הגישה ליציאה אפשרית רק לאפליקציות שפועלות במחשב המקומי.
משאירים את
gcloudפתוח ופותחים את אפליקציית Microsoft Windows Remote Desktop Connection.מזינים את נקודת הקצה של המנהרה כשם המחשב:
localhost:LOCAL_PORT
מחליפים את LOCAL_PORT במספר היציאה שמוצג כשמנהרת ה-SSH נפתחה על ידי
gcloud.לוחצים על Connect.
מנהור של חיבורי TCP אחרים
אפשר להשתמש בהעברת TCP של IAP לפרוטוקולים אחרים שמבוססים על TCP באמצעות הפקודה gcloud compute start-iap-tunnel כדי להקצות יציאה מקומית. היציאה המקומית מעבירה את תנועת הנתונים מהמחשב המקומי למחשב המרוחק בזרם HTTPS. IAP מקבל את הנתונים, מחיל בקרת גישה ומעביר את הנתונים שחולצו ליציאה המרוחקת. לעומת זאת, כל הנתונים מהיציאה המרוחקת עטופים גם הם לפני שהם נשלחים ליציאה המקומית, שם הם נפרסים.
gcloud
יוצרים מנהרה מוצפנת ליציאה של המכונה הווירטואלית:
gcloud compute start-iap-tunnel INSTANCE_NAME INSTANCE_PORT \
--local-host-port=localhost:LOCAL_PORT \
--zone=ZONEמחליפים את INSTANCE_NAME ואת INSTANCE_PORT בשם ובמספר היציאה של מופע המכונה הווירטואלית שאליו רוצים להתחבר. מחליפים את LOCAL_PORT ביציאת localhost שרוצים לקשר אליה את ה-proxy. מחליפים את ZONE בתחום שבו נמצאת מכונת ה-VM.
gcloud מבצע בדיקת קישוריות עם מכונת ה-VM, ואז פותח מנהרה ומציג מספר יציאה.
Listening on port [LOCAL_PORT].
כל התעבורה שנשלחת אל localhost:LOCAL_PORT מועברת למכונה הווירטואלית. היציאה נגישה רק לאפליקציות שפועלות במחשב המקומי.
הגדלת רוחב הפס להעלאות ב-IAP TCP
כדי להגדיל את רוחב הפס של העלאת TCP של IAP, כדאי להתקין את NumPy באותה מכונה שבה מותקן ה-CLI של gcloud.
Linux
כדי להתקין את NumPy באמצעות pip בפלטפורמות Unix, מריצים את הפקודה הבאה במופע חדש של טרמינל:
$(gcloud info --format="value(basic.python_location)") -m pip install numpy
אם הודעת השגיאה ממשיכה להופיע אחרי התקנת NumPy, צריך לבצע את השלב הבא: מריצים את הפקודה הבאה כדי לאפשר ל-gcloud לגשת לחבילות חיצוניות:
export CLOUDSDK_PYTHON_SITEPACKAGES=1
Windows
כדי להתקין את NumPy באמצעות pip בפלטפורמות Windows, מריצים את הפקודה הבאה במופע חדש של PowerShell:
start (gcloud info --format="value(basic.python_location)") "-m pip install numpy"
אם ההודעה עדיין מופיעה אחרי התקנת NumPy, צריך לבצע שלב נוסף. מריצים את הפקודה הבאה כדי לאפשר ל-gcloud לגשת לחבילות חיצוניות:
$env:CLOUDSDK_PYTHON_SITEPACKAGES="1"
מגבלות ידועות
רוחב פס: התכונה להעברת TCP של IAP לא מיועדת להעברה בכמות גדולה של נתונים. IAP שומרת לעצמה את הזכות להגביל את קצב הבקשות של משתמשים שמנצלים לרעה את השירות הזה.
משך החיבור: IAP מנתק באופן אוטומטי סשנים אחרי שעה של חוסר פעילות. בשלב הזה, gcloud compute start-iap-tunnel מנסה ליצור מחדש את המנהרה אם היא מתנתקת.
השלבים הבאים
כדי לראות את בקשות הגישה, צריך להפעיל את יומני הביקורת של Cloud.
מגדירים את VPC Service Controls כדי להגן על הפרויקט באמצעות IAP ל-TCP.