כשמגדירים תוספים באמצעות פלאגינים או נכסי יתרונות מרכזיים, אפשר לציין את מאפייני הבקשה והחיבור שיועברו לשירותי התוספים. בדף הזה מתוארים המאפיינים הנתמכים ומצוינים המאפיינים שזמינים לכל סוג של תוסף.
אם מגדירים את התוספים כך שיעבירו מאפיינים ספציפיים, אפשר:
- לקבל החלטות לגבי ניתוב דינמי.
- להעשיר את כותרות הבקשות במידע על הלקוח.
- הטמעה של מדיניות אבטחה בהתאמה אישית על סמך המיקום של הלקוח או פרמטרים של TLS.
- ליצור יומנים מפורטים בהתאמה אישית.
אפשר לציין מאפיינים באמצעות השדה forwardAttributes בקובץ התצורה של YAML לתוספים ולתוספי יתרונות מרכזיים. לדוגמה, במאמר הגדרת תוסף תנועה מוסבר איך להגדיר תוסף תנועה.
מציינים מאפיינים עם forwardAttributes לסוגי התוספים הבאים:
- תוספי קצה של Cloud Load Balancing (
LbEdgeExtension) במאזני עומסים גלובליים חיצוניים של אפליקציות (ALB) - תוספי ניתוב ותנועה של Cloud Load Balancing (
LbRouteExtension,LbTrafficExtension) במאזני עומסים של אפליקציות (ALB) - תוספים שמפנים לבדיקת הרשאות (
AuthzExtension) באמצעותext_procבמאזני עומסים של אפליקציות (ALB) - תוספי קצה של Media CDN (
CdnEdgeExtension) בשירותי Media CDN Edge Cache
מאפייני הבקשות
אפשר לחלץ ולהעביר את המאפיינים הבאים מבקשות:
| מאפיין | סוג | LbEdge |
LbRoute |
LbTraffic |
Authz |
CdnEdge |
תיאור והבדלים בהתנהגות |
|---|---|---|---|---|---|---|---|
request.method |
מחרוזת | ✓ | ✓ | ✓ | ✓ | ✓ | ה-method של בקשת ה-HTTP, כמו GET או POST. |
request.host |
מחרוזת | ✓ | ✓ | ✓ | ✓ | ✓ | שווה ערך ל-request.headers['host']. |
request.path |
מחרוזת | ✓ | ✓ | ✓ | ✓ | ✓ | נתיב כתובת ה-URL מסוג HTTP שנכלל בבקשה. |
request.query |
מחרוזת | ✓ | ✓ | ✓ | ✓ | ✓ | השאילתה של כתובת ה-URL מסוג HTTP בפורמט name1=value&name2=value2. |
request.scheme |
מחרוזת | ✓ | ✓ | ✓ | ✓ | ✓ | סכימת כתובת ה-URL מסוג HTTP (http או https). הערכים הם באותיות קטנות. |
request.origin |
מחרוזת | — | — | ✓ | ✓ | — | הערך של כותרת הבקשה Origin לתרחישי שימוש של שיתוף משאבים בין מקורות (CORS). |
request.user_agent_family |
מחרוזת | ✓ | — | ✓ | — | — | מחרוזת משפחת סוכן המשתמש שנותחה. נתמך רק במאזני עומסים גלובליים חיצוניים של אפליקציות (ALB). |
request.device_request_type |
מחרוזת | ✓ | — | ✓ | — | — | קטגוריית הסיווג של המכשיר. נתמך רק במאזני עומסים גלובליים חיצוניים של אפליקציות (ALB). |
request.backend_service_name |
מחרוזת | — | — | ✓ | ✓ | — | שירות היעד לקצה העורפי. לא רלוונטי לתוספים של Edge (LbEdgeExtension או CdnEdgeExtension). |
request.backend_service_project_number |
int | — | — | ✓ | ✓ | — | מספר הפרויקט של שירות הקצה העורפי ב-VPC המשותף. לא רלוונטי לתוספים של Edge. |
request.mcp_method |
מחרוזת | — | — | — | ✓ | — | שם ה-method של Model Context Protocol (MCP). |
מאפייני החיבור
אפשר לחלץ ולהעביר את המאפיינים הבאים מהחיבורים:
| מאפיין | סוג | LbEdge |
LbRoute |
LbTraffic |
Authz |
CdnEdge |
תיאור והבדלים בהתנהגות |
|---|---|---|---|---|---|---|---|
source.ip |
מחרוזת | ✓ | ✓ | ✓ | ✓ | — | כתובת ה-IP של הלקוח. |
source.port |
int | ✓ | ✓ | ✓ | ✓ | ✓ | מספר היציאה של מקור הלקוח. |
source.client_region |
מחרוזת | ✓ | — | ✓ | — | ✓ | קוד האזור בן שתי האותיות לפי תקן ISO-3166-1 או CLDR שמשויך לכתובת ה-IP של הלקוח (לדוגמה, US או DE). |
source.client_region_subdivision |
מחרוזת | ✓ | — | ✓ | — | — | קוד חלוקת המשנה של האזור, כמו מדינה (State) או מחוז. נתמך רק במאזני עומסים גלובליים חיצוניים של אפליקציות (ALB). |
source.client_city |
מחרוזת | ✓ | — | ✓ | — | — | העיר שמשויכת לכתובת ה-IP של הלקוח. נתמך רק במאזני עומסים גלובליים חיצוניים של אפליקציות (ALB). |
source.client_city_lat_long |
מחרוזת | ✓ | — | ✓ | — | — | קו הרוחב וקו האורך שמשויכים לעיר של הלקוח. נתמך רק במאזני עומסים גלובליים חיצוניים של אפליקציות (ALB). |
destination.ip |
מחרוזת | — | — | ✓ | ✓ | — | כתובת ה-IP של מאזן העומסים שאליו הלקוח מתחבר. |
destination.port |
int | — | — | ✓ | ✓ | — | מספר היציאה של היעד שאליו הלקוח מתחבר. |
connection.client_encrypted |
bool | — | — | ✓ | ✓ | — | הערך הוא true אם החיבור בין הלקוח למאזן העומסים מוצפן (באמצעות HTTPS, HTTP/2 או HTTP/3). אחרת, הערך הוא false. |
connection.protocol |
מחרוזת | — | — | ✓ | ✓ | — | פרוטוקול ה-HTTP שמשמש לתקשורת (HTTP/1.0, HTTP/1.1, HTTP/2 או HTTP/3). |
connection.sni |
מחרוזת | ✓ | — | ✓ | ✓ | ✓ | ה-Server Name Indication (SNI) המבוקש של חיבור ה-TLS במורד הזרם. |
connection.tls_version |
מחרוזת | ✓ | — | ✓ | ✓ | ✓ | גרסת ה-TLS שסוכמה עם הלקוח (TLSv1, TLSv1.1, TLSv1.2, TLSv1.3 או QUIC). |
connection.tls_cipher_suite |
מחרוזת | — | — | ✓ | ✓ | — | סט האלגוריתמים להצפנה (cipher suite) בבסיס הקסדצימלי בן ארבע ספרות, שנקבע במהלך לחיצת היד בפרוטוקול TLS – לדוגמה, 009C. |
connection.tls_ja3_fingerprint |
מחרוזת | — | — | ✓ | — | — | טביעת האצבע של JA3 TLS/SSL אם הלקוח מתחבר באמצעות HTTPS, HTTP/2 או HTTP/3. |
connection.tls_ja4_fingerprint |
מחרוזת | ✓ | — | ✓ | — | — | טביעת האצבע של JA4 TLS/SSL אם הלקוח מתחבר באמצעות HTTPS, HTTP/2 או HTTP/3. |
connection.client_rtt_msec |
int | — | — | ✓ | ✓ | — | זמן הלוך ושוב (RTT) של הלקוח, נמדד באלפיות השנייה. |
connection.sha256_peer_certificate_digest |
מחרוזת | ✓ | — | ✓ | ✓ | — | גיבוב SHA-256 עם קידוד הקסדצימלי של אישור עמית. |
connection.client_cert_present |
bool | — | — | ✓ | ✓ | — | הערך הוא true אם הלקוח סיפק אישור במהלך לחיצת היד בפרוטוקול TLS, אחרת הערך הוא false. |
connection.client_cert_chain_verified |
bool | — | — | ✓ | ✓ | — | הערך הוא true אם שרשרת אישורי הלקוח מאומתת מול TrustStore שהוגדר, אחרת הערך הוא false. |
connection.client_cert_error |
מחרוזת | — | — | ✓ | ✓ | — | מחרוזות מוגדרות מראש שמייצגות תנאי שגיאה של mTLS. מידע נוסף זמין במאמר מצבי אימות לקוח mTLS. |
connection.client_cert_serial_number |
מחרוזת | — | — | ✓ | ✓ | — | המספר הסידורי של אישור הלקוח. |
connection.client_cert_spiffe_id |
מחרוזת | — | — | ✓ | ✓ | — | מזהה ה-SPIFFE מהשדה "שם חלופי של בעלים (subject)" (SAN). |
connection.client_cert_uri_sans |
מחרוזת | — | — | ✓ | ✓ | — | רשימה מופרדת בפסיקים בקידוד Base64 של תוספי URI SAN שחולצו מאישור הלקוח. |
connection.client_cert_dnsname_sans |
מחרוזת | — | — | ✓ | ✓ | — | רשימה מופרדת בפסיקים בקידוד Base64 של תוספי DNSName SAN שחולצו מאישור הלקוח. |
connection.client_cert_valid_not_before |
מחרוזת | — | — | ✓ | ✓ | — | חותמת הזמן (בפורמט RFC 3339) שלפניה אישור הלקוח לא תקף. |
connection.client_cert_valid_not_after |
מחרוזת | — | — | ✓ | ✓ | — | חותמת הזמן (בפורמט RFC 3339) שאחריה אישור הלקוח לא תקף. |
connection.client_cert_issuer_dn |
מחרוזת | — | — | ✓ | ✓ | — | קידוד DER בקידוד Base64 של השדה Issuer של האישור. |
connection.client_cert_subject_dn |
מחרוזת | — | — | ✓ | ✓ | — | קידוד DER בקידוד Base64 של השדה Subject של האישור. |
connection.client_cert_leaf |
מחרוזת | — | — | ✓ | ✓ | — | אישור הקצה של הלקוח בקידוד Base64 לחיבור mTLS מאומת (RFC 9440). |
connection.client_cert_chain |
מחרוזת | — | — | ✓ | ✓ | — | שרשרת אישורי הלקוח, מופרדת בפסיקים ומקודדת ב-Base64, בסדר TLS סטנדרטי, לא כולל אישור הקצה (RFC 9440). |
מגבלות
זמינות המאפיינים: לא כל המאפיינים נתמכים בכל סוגי התוספים. מידע נוסף מופיע בטבלה שבדף הזה.
הגדרה נדרשת: כדי לשלוח מאפיינים לתוסף, צריך לציין במפורש את המאפיינים בשדה
forwardAttributesבהגדרות התוסף. אם לא תציינו מאפיין בשדה הזה, מאזן העומסים או Media CDN לא יעבירו את המאפיין הספציפי הזה לתוסף.מגבלות גודל: אפשר להגדיר עד 16 מאפיינים לתוסף אחד.
מאפייני mTLS: מאפייני אישור הלקוח (
connection.client_cert_*) מאוכלסים בנתונים שמועברים לתוסף רק אם הפעלתם את mTLS והלקוח מציג אישור.