Proxy chuyển tiếp cung cấp một điểm duy nhất mà qua đó nhiều máy gửi yêu cầu đến một máy chủ bên ngoài. Các dịch vụ này có thể thực thi chính sách bảo mật, ghi nhật ký và phân tích yêu cầu, cũng như thực hiện các hành động khác để yêu cầu tuân thủ các quy tắc kinh doanh của bạn. Với Edge, một proxy chuyển tiếp thường trung gian cho các proxy API của bạn và một TargetEndpoint bên ngoài (máy chủ mục tiêu phụ trợ).
Để sử dụng proxy chuyển tiếp HTTP giữa Edge và TargetEndpoint, bạn phải định cấu hình chế độ cài đặt proxy gửi đi trên Bộ xử lý thông báo (MP). Các thuộc tính này định cấu hình MP để định tuyến các yêu cầu mục tiêu từ Edge đến proxy chuyển tiếp HTTP.
Cách định cấu hình MP để chuyển tiếp proxy:
- Trên MP, hãy chỉnh sửa tệp sau:
/opt/apigee/customer/application/message-processor.properties
Nếu tệp
message-processor.propertieskhông tồn tại, hãy tạo tệp đó. - Chỉnh sửa tệp để đặt các thuộc tính liên quan đến proxy được mô tả trong bảng dưới đây.
- Đảm bảo rằng tệp thuộc tính thuộc sở hữu của người dùng "apigee":
chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- Lưu các thay đổi vào tệp thuộc tính.
- Khởi động lại MP, như trong ví dụ sau:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
Bảng sau đây mô tả các thuộc tính trong tệp message-processor.properties mà bạn dùng để định cấu hình MP cho proxy chuyển tiếp đến máy chủ phụ trợ:
| Thuộc tính | Mô tả |
|---|---|
conf_http_HTTPClient.use.proxy |
Cho phép sử dụng proxy chuyển tiếp. Giá trị mặc định là Nếu đặt giá trị này thành |
conf_http_HTTPClient.use.tunneling |
Theo mặc định, Edge sử dụng tính năng tạo đường hầm cho tất cả lưu lượng truy cập. Để tắt tính năng tạo đường hầm theo mặc định, hãy đặt thuộc tính này thành "false". |
use.proxy.host.header.with.target.uri |
Đặt máy chủ và cổng đích làm tiêu đề
<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 |
Chỉ định loại proxy HTTP là HTTP hoặc HTTPS. Theo mặc định, giao thức này sử dụng "HTTP". |
conf/http.properties+HTTPClient.proxy.host |
Chỉ định tên máy chủ lưu trữ hoặc địa chỉ IP nơi proxy HTTP đang chạy. |
conf/http.properties+HTTPClient.proxy.port |
Chỉ định cổng mà proxy HTTP đang chạy. Nếu thuộc tính này bị bỏ qua, thì theo mặc định, thuộc tính này sẽ sử dụng cổng 80 cho HTTP và cổng 443 cho HTTPS. |
conf/http.properties+HTTPClient.proxy.user conf/http.properties+HTTPClient.proxy.password |
Nếu proxy HTTP yêu cầu xác thực cơ bản, hãy sử dụng các thuộc tính này để cung cấp thông tin chi tiết về việc uỷ quyền. |
Ví dụ:
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
Nếu bạn định cấu hình tính năng chuyển tiếp proxy cho MP, thì tất cả lưu lượng truy cập từ proxy API đến mục tiêu phụ trợ sẽ đi qua proxy chuyển tiếp HTTP được chỉ định. Nếu lưu lượng truy cập cho một mục tiêu cụ thể của proxy API phải chuyển thẳng đến mục tiêu phụ trợ, bỏ qua proxy chuyển tiếp, thì hãy đặt thuộc tính sau trong TargetEndpoint để ghi đè proxy chuyển tiếp HTTP:
<Property name="use.proxy">false</Property>
Để biết thêm thông tin về cách đặt thuộc tính TargetEndpoint, bao gồm cả cách định cấu hình kết nối với điểm cuối mục tiêu, hãy xem phần Tài liệu tham khảo về thuộc tính điểm cuối.
Để tắt tính năng chuyển tiếp proxy cho tất cả mục tiêu theo mặc định, hãy đặt thuộc tính sau trong tệp message-processor.properties:
conf_http_HTTPClient.use.proxy=false
Sau đó, hãy đặt use.proxy thành "true" cho mọi TargetEndpoint mà bạn muốn chuyển qua proxy chuyển tiếp HTTP:
<Property name="use.proxy">true</Property>
Theo mặc định, Edge sử dụng tính năng tạo đường hầm cho lưu lượng truy cập đến proxy. Để tắt tính năng tạo đường hầm theo mặc định, hãy đặt thuộc tính sau trong tệp message-processor.properties:
conf_http_HTTPClient.use.tunneling=false
Nếu bạn muốn tắt tính năng tạo đường hầm cho một mục tiêu cụ thể, hãy đặt thuộc tính use.proxy.tunneling trong TargetEndpoint. Nếu mục tiêu sử dụng TLS/SSL, thì thuộc tính này sẽ bị bỏ qua và thông báo luôn được gửi qua một đường hầm:
<Property name="use.proxy.tunneling">false</Property>
Để Edge tự hoạt động như một proxy chuyển tiếp (nhận yêu cầu từ các dịch vụ phụ trợ và định tuyến các yêu cầu đó đến Internet bên ngoài doanh nghiệp), trước tiên, hãy thiết lập một proxy API trên Edge. Sau đó, dịch vụ phụ trợ có thể gửi yêu cầu đến proxy API, rồi proxy API có thể kết nối với các dịch vụ bên ngoài.