שרתי proxy להעברה מספקים נקודה אחת שבאמצעותה מספר מכונות שולחות בקשות שרת חיצוני. הם יכולים לאכוף מדיניות אבטחה, לרשום ולנתח בקשות ולבצע כדי שהבקשות יפעלו בהתאם לכללים העסקיים שלכם. ב-Edge, בדרך כלל שרת proxy קדימה מתווכת בין שרתי ה-proxy ל-API ו-TargetEndpoint (שרת יעד עורפי).
כדי להשתמש בשרת proxy להעברה ב-HTTP בין Edge ל-TargetEndpoint, צריך להגדיר את ההגדרות של שרת Proxy יוצא ב'מעבדי הודעות' (MPs). המאפיינים האלה מגדירים את ה-MP כדי לנתב בקשות יעד מ-Edge לשרת ה-Proxy ל-HTTP.
כדי להגדיר MP להעברת שרת proxy:
- ב-MP, עורכים את הקובץ הבא:
/opt/apigee/customer/application/message-processor.properties
אם הקובץ
message-processor.properties
לא קיים, צריך ליצור אותו. - ערוך את הקובץ כדי להגדיר את המאפיינים הקשורים לשרת ה-proxy המתוארים בטבלה הבאה.
- יש לוודא שקובץ המאפיינים נמצא בבעלות ה-apigee user:
chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- שומרים את השינויים בקובץ המאפיינים.
- צריך להפעיל מחדש את ה-MP לפי הדוגמה הבאה:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
בטבלה הבאה מתוארים המאפיינים בmessage-processor.properties
שבו משתמשים כדי להגדיר MP להעברת שרת proxy לשרת עורפי:
נכס | תיאור |
---|---|
conf_http_HTTPClient.use.proxy |
מאפשרת העברה של שימוש בשרת proxy. ערך ברירת המחדל הוא אם מגדירים את הערך הזה ל- |
conf_http_HTTPClient.use.tunneling |
כברירת מחדל, דפדפן Edge משתמש במנהור לכל תעבורת הנתונים. כדי להשבית את המנהור כברירת מחדל: צריך להגדיר את המאפיין הזה כ-"false". |
use.proxy.host.header.with.target.uri |
מגדיר את מארח היעד ויציאת היעד ככותרת <HTTPTargetConnection> <Properties> <Property name="use.proxy.host. header.with.target.uri">true </Property> </Properties> <URL>https://mocktarget.apigee.net/ my-target</URL> </HTTPTargetConnection> |
conf/http.properties+HTTPClient.proxy.type |
מציינת את הסוג של שרת ה-Proxy ל-HTTP כ-HTTP או HTTPS. כברירת מחדל, הוא משתמש ב-HTTP. |
conf/http.properties+HTTPClient.proxy.host |
מציינת את שם המארח או כתובת ה-IP שבהם פועל שרת ה-Proxy של HTTP. |
conf/http.properties+HTTPClient.proxy.port |
מציינת את היציאה שבה פועל שרת ה-Proxy של HTTP. אם מאפיין זה יושמט, כברירת מחדל הוא משתמש ביציאה 80 ל-HTTP וביציאה 443 ל-HTTPS. |
conf/http.properties+HTTPClient.proxy.user conf/http.properties+HTTPClient.proxy.password |
אם שרת ה-proxy ל-HTTP דורש אימות בסיסי, צריך להשתמש במאפיינים האלה כדי לספק את פרטי ההרשאה. |
לדוגמה:
conf_http_HTTPClient.use.proxy=true conf_http_HTTPClient.use.tunneling=false conf/http.properties+HTTPClient.proxy.type=HTTP conf/http.properties+HTTPClient.proxy.host=my.host.com conf/http.properties+HTTPClient.proxy.port=3128 conf/http.properties+HTTPClient.proxy.user=USERNAME conf/http.properties+HTTPClient.proxy.password=PASSWORD
אם שרת proxy קדימה מוגדר ל-MP, אז כל התנועה שמגיעה מה-API. שרתי proxy ליעדים לקצה העורפי עוברים דרך שרת ה-proxy שצוין להעברה ב-HTTP. אם התנועה של יעד ספציפי של שרת proxy ל-API צריך לעבור ישירות ליעד הקצה העורפי, תוך עקיפת ההעברה לשרת proxy, ואז להגדיר את המאפיין הבא ב-TargetEndpoint כדי לבטל את ההעברה מה-HTTP שרת proxy:
<Property name="use.proxy">false</Property>
למידע נוסף על הגדרת המאפיינים של TargetEndpoint, כולל הוראות להגדרה את החיבור לנקודת הקצה (endpoint) של היעד. ראו חומר עזר בנושא מאפיינים של נקודות קצה.
כדי להשבית העברה של שרת proxy לכל היעדים כברירת מחדל, צריך להגדיר את המאפיין הבא בשדה
קובץ message-processor.properties
:
conf_http_HTTPClient.use.proxy=false
לאחר מכן יש להגדיר את use.proxy
כ-"true" כל נקודת קצה (TargetEndpoint) שרוצים לעבור
שרת proxy קדימה ל-HTTP:
<Property name="use.proxy">true</Property>
כברירת מחדל, דפדפן Edge משתמש במנהור לתעבורת הנתונים דרך שרת ה-proxy. כדי להשבית את המנהור כברירת מחדל:
מגדירים את המאפיין הבא בקובץ message-processor.properties
:
conf_http_HTTPClient.use.tunneling=false
אם רוצים להשבית מנהור ליעד ספציפי, צריך להגדיר
הנכס use.proxy.tunneling
בנקודת הקצה (TargetEndpoint). אם היעד משתמש ב-TLS/SSL,
המערכת מתעלמת מהמאפיין הזה, וההודעה תמיד נשלחת דרך מנהרה:
<Property name="use.proxy.tunneling">false</Property>
כדי ש-Edge עצמו יפעל כשרת proxy קדימה – קבלת בקשות מהשירותים לקצה העורפי לנתב אותם לאינטרנט מחוץ לארגון – תחילה צריך להגדיר שרת proxy ל-API ב-Edge. שירות לקצה העורפי יכול לשלוח בקשה לשרת ה-proxy ל-API, שיכול להתחבר לאחר מכן שירותים שונים.