Proxy penerusan menyediakan satu titik tempat beberapa mesin mengirim permintaan ke server eksternal. Mereka dapat menerapkan kebijakan keamanan, mencatat dan menganalisis permintaan, serta melakukan tindakan lainnya sehingga permintaan mematuhi aturan bisnis Anda. Dengan Edge, proxy penerusan biasanya perantara perantara proxy API Anda dan TargetEndpoint eksternal (server target backend).
Untuk menggunakan proxy penerusan HTTP antara Edge dan TargetEndpoint, Anda harus mengonfigurasi setelan proxy keluar pada Pesan Pemroses (MP). Properti ini mengonfigurasi MP untuk merutekan permintaan target dari Edge ke proxy penerusan HTTP.
Untuk mengonfigurasi MP untuk penerusan proxy:
- Di MP, edit file berikut:
/opt/apigee/customer/application/message-processor.properties
Jika file
message-processor.properties
tidak ada, buat file tersebut. - Edit file untuk menetapkan properti terkait proxy yang dijelaskan dalam tabel di bawah.
- Pastikan file properti dimiliki oleh pengguna 'apigee':
chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
- Simpan perubahan pada file properti.
- Mulai ulang MP, seperti yang ditunjukkan contoh berikut:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
Tabel berikut menjelaskan properti di file message-processor.properties
yang Anda gunakan untuk mengonfigurasi MP untuk penerusan proxy ke server backend:
Properti | Deskripsi |
---|---|
conf_http_HTTPClient.use.proxy |
Mengizinkan penggunaan proxy penerusan. Nilai defaultnya adalah Jika nilai ini ditetapkan ke |
conf_http_HTTPClient.use.tunneling |
Secara default, Edge menggunakan tunneling untuk semua traffic. Untuk menonaktifkan tunneling secara default, tetapkan properti ini ke "false". |
use.proxy.host.header.with.target.uri |
Menetapkan port dan host target sebagai header <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 |
Menentukan jenis proxy HTTP sebagai HTTP atau HTTPS. Secara default, skrip ini menggunakan "HTTP". |
conf/http.properties+HTTPClient.proxy.host |
Menentukan nama host atau alamat IP tempat proxy HTTP berjalan. |
conf/http.properties+HTTPClient.proxy.port |
Menentukan port tempat proxy HTTP berjalan. Jika properti ini dihilangkan, secara default properti tersebut menggunakan port 80 untuk HTTP dan port 443 untuk HTTPS. |
conf/http.properties+HTTPClient.proxy.user conf/http.properties+HTTPClient.proxy.password |
Jika proxy HTTP memerlukan autentikasi dasar, gunakan properti ini untuk memberikan detail otorisasi. |
Contoh:
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
Jika proxy penerusan dikonfigurasi untuk MP, semua traffic yang menuju dari proxy API ke target backend akan melalui proxy penerusan HTTP yang ditentukan. Jika traffic untuk target tertentu dari proxy API harus langsung mengarah ke target backend, tanpa mengabaikan proxy depan, lalu tetapkan properti berikut di TargetEndpoint untuk mengganti proxy penerusan HTTP:
<Property name="use.proxy">false</Property>
Untuk mengetahui informasi selengkapnya tentang cara menetapkan properti TargetEndpoint, termasuk cara mengonfigurasi koneksi ke endpoint target, lihat Referensi properti endpoint.
Untuk menonaktifkan proxy penerusan semua target secara default, tetapkan properti berikut dalam file message-processor.properties
Anda:
conf_http_HTTPClient.use.proxy=false
Kemudian setel use.proxy
ke "true" untuk setiap TargetEndpoint yang ingin Anda lalui
proxy penerusan HTTP:
<Property name="use.proxy">true</Property>
Secara default, Edge menggunakan tunneling untuk traffic ke proxy. Untuk menonaktifkan tunneling secara default, tetapkan properti berikut dalam file message-processor.properties
:
conf_http_HTTPClient.use.tunneling=false
Jika Anda ingin menonaktifkan tunneling untuk target tertentu, tetapkan properti use.proxy.tunneling
di TargetEndpoint. Jika target menggunakan TLS/SSL, properti ini akan diabaikan, dan pesan selalu dikirim melalui tunnel:
<Property name="use.proxy.tunneling">false</Property>
Agar Edge sendiri bertindak sebagai proxy penerusan - menerima permintaan dari layanan backend dan merutekannya ke internet di luar perusahaan - pertama-tama siapkan proxy API di Edge. Layanan backend kemudian dapat membuat permintaan ke proxy API, yang kemudian dapat terhubung ke layanan eksternal.