שרתי פרוקסי להעברה מספקים נקודה אחת שדרכה כמה מכונות שולחות בקשות לשרת חיצוני. הם יכולים לאכוף מדיניות אבטחה, לתעד בקשות ביומן, לנתח אותן ולבצע פעולות אחרות כדי שהבקשות יעמדו בכללים העסקיים שלכם. ב-Edge, שרת proxy להעברה בדרך כלל מתווך בין שרתי ה-proxy ל-API לבין TargetEndpoint חיצוני (שרת יעד לקצה העורפי).
כדי להשתמש בשרת proxy להעברת HTTP בין Edge לבין TargetEndpoint, צריך לקבוע את ההגדרות לשרת proxy יוצא במעבדי הבקשות (MPs). המאפיינים האלה מגדירים את מעבדי ההודעות כך שינתבו בקשות יעד מ-Edge לשרת ה-proxy להעברת HTTP.
כדי להגדיר MP לשרת proxy להעברה:
- ב-MP, עורכים את הקובץ הבא:
/opt/apigee/customer/application/message-processor.properties
אם הקובץ
message-processor.propertiesלא קיים, יוצרים אותו. - עורכים את הקובץ כדי להגדיר את המאפיינים שקשורים לשרת ה-proxy, שמתוארים בטבלה הבאה.
- מוודאים שקובץ המאפיינים נמצא בבעלות המשתמש apigee:
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 משתמש במנהור לכל התנועה. כדי להשבית את ה-tunneling כברירת מחדל, צריך להגדיר את המאפיין הזה כ-"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 להעברה למעבד ההודעות, כל התנועה שעוברת משרתי proxy ל-API ליעדים בקצה העורפי עוברת דרך שרת ה-proxy להעברה ב-HTTP שצוין. אם התנועה ליעד ספציפי של שרת proxy ל-API צריכה לעבור ישירות ליעד של הקצה העורפי, בלי לעבור דרך שרת ה-proxy להעברה, צריך להגדיר את המאפיין הבא ב-TargetEndpoint כדי לשנות את שרת ה-proxy להעברה ב-HTTP:
<Property name="use.proxy">false</Property>
מידע נוסף על הגדרת המאפיינים של TargetEndpoint, כולל איך להגדיר את החיבור לנקודת הקצה (endpoint) של היעד, זמין במאמרי העזרה בנושא מאפייני נקודות קצה.
כדי להשבית את שרת ה-proxy להעברה לכל היעדים כברירת מחדל, מגדירים את המאפיין הבא בקובץ message-processor.properties:
conf_http_HTTPClient.use.proxy=false
לאחר מכן מגדירים את use.proxy ל-true בכל TargetEndpoint שרוצים שיעבור דרך שרת פרוקסי להעברת HTTP:
<Property name="use.proxy">true</Property>
כברירת מחדל, Edge משתמש במנהור לתנועה אל שרת ה-proxy. כדי להשבית את ה-tunneling כברירת מחדל, מגדירים את המאפיין הבא בקובץ message-processor.properties:
conf_http_HTTPClient.use.tunneling=false
אם רוצים להשבית את ה-tunneling ליעד ספציפי, מגדירים את המאפיין use.proxy.tunneling ב-TargetEndpoint. אם היעד משתמש ב-TLS/SSL, המערכת מתעלמת מהמאפיין הזה וההודעה תמיד נשלחת דרך מנהרה:
<Property name="use.proxy.tunneling">false</Property>
כדי ש-Edge עצמו יפעל כשרת ה-proxy להעברה – יקבל בקשות משירותי הקצה העורפי וינתב אותן לאינטרנט מחוץ לארגון – קודם צריך להגדיר proxy ל-API ב-Edge. לאחר מכן, שירות הקצה העורפי יכול לשלוח בקשה לשרת ה-proxy ל-API, שיכול להתחבר לשירותים חיצוניים.