הגדרת ניתוב שרת proxy

המסמך הזה מיועד למפתחים שרוצים לנתב את כל התיוג בצד השרת את התנועה דרך שרת proxy.

לפני שמתחילים

לפני שתוכלו להגדיר ניתוב של שרת proxy, צריך לוודא שיש לכם:

  • קונטיינר שרת שנפרס ב-Cloud Run או דרך הגדרה ידנית.

  • שרת proxy שנפרס ותומך HTTP CONNECT בקשות.

  • יכולת להוסיף לרשימת ההיתרים תעבורת נתונים יוצאת ספציפית משרת ה-proxy, לדוגמה, באמצעות VPC, חומת אש או רשימות של בקרת גישה לשרת proxy (רשימות ACL).

הגדרת ניתוב של שרת proxy

Cloud Run

כדי להעביר תעבורת נתונים לשרת proxy לפריסות של Cloud Run:

  1. פתיחת Cloud Run
  2. בחירת מכונה של Cloud Run לתיוג בצד השרת.
  3. לוחצים על . עריכה ו DEPLOY תיקון חדש. מסך הגרסאות הקודמות לפריסה.
  4. בקטע Container(s), בוחרים את מאגר התגים בצד השרת. מסך חדש עם הגדרת המאגר תיפתח.
  5. כדי להרחיב את הגדרת השירות, לוחצים על משתנים ו סודות . לוחצים על הלחצן Add Variable (הוספת משתנה) ומוסיפים את הסביבה הבאה: משתנה:

    1. שם: HTTP_PROXY
    2. Value: ה-URI של שרת ה-Proxy (למשל, https://proxy.example.com:3333 או http://32.12.83.10)
  6. לוחצים על סיום.

  7. מאשרים את הגרסאות הקודמות ולוחצים על פריסה.

פריסה ידנית

כדי להעביר תעבורת נתונים לשרת proxy לפריסות ידניות:

  1. מגדירים משתנה סביבה שנגיש לקובץ האימג' של Docker:

    1. שם: HTTP_PROXY
    2. Value: ה-URI של שרת ה-Proxy (למשל, https://proxy.example.com או http://32.12.83.10:1234)
  2. מריצים את קובץ האימג' של Docker עם משתנה הסביבה החדש.

    docker run -p 8080:8080 \
    -e CONTAINER_CONFIG=CONTAINER_CONFIG \
    -e HTTP_PROXY=PROXY_URL \
    gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable
    

תוצאה: פריסת התיוג בצד השרת שולחת את כל התנועה היוצאת אל נקודת הקצה (endpoint) של שרת ה-proxy שציינתם במשתנה הסביבה.

אימות ההגדרה של שרת ה-proxy

כדי לאמת את ההגדרה של בקשות לשרת proxy, צריך לבדוק את Google Tag Manager וגם את הגדרה של שרת ה-proxy.

כדי לאמת את הבקשות לשרתי proxy של קונטיינרים של השרת:

  1. פותחים את Google Tag Manager.

  2. פותחים את מאגר התגים בצד השרת.

  3. פותחים את מצב תצוגה מקדימה. בכרטיסייה בקשות:

    1. מוודאים שהלקוח מצהיר על זכויות יוצרים בבקשה הנכנסת.
    2. מוודאים שהתגים והמשתנים שולחים בקשות HTTP יוצאות.
    3. כדי לבדוק אם בקשה נשלחה דרך שרת proxy, לוחצים על בקשת HTTP להצגת הפרטים של בקשת ה-HTTP.

כדי לבדוק את ההגדרה של שרת ה-proxy:

  1. צריך לבדוק את היומנים של הרשת ושל שרת ה-proxy. לכל הפחות, אתה אמור לראות בקשות שבוצעו בהצלחה לנקודות הקצה הבאות:
  2. בודקים אם יש בקשות לנקודות קצה אחרות.
  3. בהתאם לתכונות התיוג בצד השרת שבהן אתם משתמשים, ייתכן שתראו גם שנשלחות לנקודות קצה אחרות, כמו www.google-analytics.com, bigquery.googleapis.com, או ונקודות קצה של צד שלישי. מוסיפים לרשימת ההיתרים נקודות קצה אחרות שדרושות לצורך בהגדרת התיוג שלכם.

אופציונלי: הצגת רשימה של תנועה יוצאת משרת ה-proxy

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

הדומיינים הבאים משמשים לאחזור, לתצוגה מקדימה ולניפוי באגים מאגר התגים של Google Tag Manager:

  • https://www.googletagmanager.com
  • https://tagmanager.google.com
  • ${Preview server URL}

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

אופציונלי: שימוש באימות בסיסי עם שרת ה-proxy

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

כדי להשתמש באימות BASIC, יש לכלול את פרטי הכניסה (שם משתמש/סיסמה) כחלק של כתובת ה-URL של שרת ה-proxy בפורמט הבא:

HTTP_PROXY=http(s)://USER_NAME:PASSWORD@PROXY_URL

כל בקשה לשרת ה-proxy מגדירה את שם המשתמש והסיסמה הכותרת Proxy-Authorization כערכי Base64.

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

אופציונלי: השבתת שרת ה-proxy למארחים ספציפיים

משתנה הסביבה NO_PROXY מאפשר להגדיר רשימה שמופרדת בפסיקים של שמות מארחים שלא ניתן לשלוח דרך שרת ה-proxy.

לדוגמה, בהינתן: NO_PROXY=example.com,169.254.169.254,diagnostics.example2.com:3131

מאגר ה-sGTM לא שולח שרת proxy של אף אחת מהבקשות הבאות:

  • http://example.com, https://sub.example.com https://other.example.com:123
  • http://169.254.169.254, https://169.254.169.254 http://169.254.169.254:123
  • http://diagonstics.example2.com:3131, https://diagonstics.example2.com:3131