پیکربندی بازارسال پراکسی

پراکسی‌های ارسال یک نقطه واحد فراهم می‌کنند که ازطریق آن چندین ماشین درخواست‌ها را به یک سرور خارجی ارسال می‌کنند. آن‌ها می‌توانند خط‌مشی‌های امنیتی را اجرا کنند، درخواست‌ها را ثبت و تجزیه‌وتحلیل کنند، و کنش‌های دیگری انجام دهند تا درخواست‌ها از قوانین کسب‌وکارتان پیروی کنند. با Edge، پراکسی پیش‌رو معمولاً بین پراکسی‌های API شما و «نقطه پایانی هدف» خارجی (سرور هدف زیرینه) واسطه می‌شود.

برای استفاده از پراکسی ارسال HTTP بین Edge و TargetEndpoint، باید تنظیمات پراکسی خروجی را در «پردازشگرهای پیام» (MPs) پیکربندی کنید. این دارایی‌ها «نقاط انتهایی اندازه‌گیری» را پیکربندی می‌کنند تا درخواست‌های هدف را از Edge به پراکسی بازارسال HTTP هدایت کنند.

برای پیکربندی کردن MP برای بازارسال پراکسی:

  1. در MP، فایل زیر را ویرایش کنید:
    /opt/apigee/customer/application/message-processor.properties

    اگر فایل message-processor.properties وجود ندارد، آن را ایجاد کنید.

  2. فایل را ویرایش کنید تا ویژگی‌های مربوط به پراکسی را که در جدول زیر توضیح داده شده است تنظیم کنید.
  3. مطمئن شوید که فایل خصوصیات متعلق به کاربر «apigee» است:
    chown apigee:apigee /opt/apigee/customer/application/message-processor.properties
  4. تغییرات را در فایل دارایی‌ها ذخیره کنید.
  5. همان‌طور که در مثال زیر نشان داده شده است، MP را بازراه‌اندازی کنید:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

جدول زیر خصوصیات موجود در فایل message-processor.properties را که برای پیکربندی کردن MP برای پراکسی کردن به سرور زیرینه استفاده می‌کنید شرح می‌دهد:

دارایی شرح
conf_http_HTTPClient.use.proxy

استفاده از پراکسی بازارسال را مجاز می‌کند. مقدار پیش‌فرض true است، یعنی می‌توانید با افزودن XML مربوطه به پیکربندی دسته‌تان، از پراکسی رو به جلو در لایه پراکسی میانای برنامه‌سازی کاربردی استفاده کنید.

اگر این مقدار را روی false تنظیم کنید، نمی‌توانید از پراکسی رو به جلو استفاده کنید.

conf_http_HTTPClient.use.tunneling

به‌طور پیش‌فرض، Edge از تونل‌سازی برای همه ترافیک استفاده می‌کند. برای غیرفعال کردن تونل‌سازی به‌طور پیش‌فرض، این دارایی را روی «false» تنظیم کنید.

use.proxy.host.header.with.target.uri

میزبان و درگاه هدف را به‌عنوان سرایند Host تنظیم می‌کند. به‌طور پیش‌فرض، میزبان و درگاه پراکسی به‌عنوان سرایندهای Host تنظیم می‌شوند. فقط در «نقطه پایانی هدف» می‌توانید این دارایی را تنظیم کنید. برای مثال:

<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

نوع پروکسی HTTP را به‌عنوان HTTP یا HTTPS مشخص می‌کند. به‌طور پیش‌فرض، از «HTTP» استفاده می‌کند.

conf/http.properties+HTTPClient.proxy.host

نام میزبان یا نشانی IP را که پراکسی HTTP در آن اجرا می‌شود مشخص می‌کند.

conf/http.properties+HTTPClient.proxy.port

درگاهی را که کارگزار پراکسی HTTP در آن اجرا می‌شود مشخص می‌کند. اگر این دارایی حذف شود، به‌طور پیش‌فرض از درگاه ۸۰ برای HTTP و از درگاه ۴۴۳ برای HTTPS استفاده می‌کند.

conf/http.properties+HTTPClient.proxy.user
conf/http.properties+HTTPClient.proxy.password

اگر پراکسی 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

اگر پراکسی پیش‌فرست برای MP پیکربندی شده باشد، همه ترافیکی که از پراکسی‌های API به هدف‌های زیرینه می‌رود ازطریق پراکسی پیش‌فرست HTTP مشخص‌شده می‌گذرد. اگر ترافیک برای هدف خاصی از پراکسی API باید مستقیماً به هدف پشتیبان برود و از پراکسی بازارسال عبور کند، ویژگی زیر را در TargetEndpoint تنظیم کنید تا پراکسی بازارسال HTTP را ملغی کند:

<Property name="use.proxy">false</Property>

برای کسب اطلاعات بیشتر درباره تنظیم کردن ویژگی‌های TargetEndpoint، ازجمله نحوه پیکربندی اتصال به نقطه پایان هدف، به مرجع ویژگی‌های نقطه پایان مراجعه کنید.

برای غیرفعال کردن پیش‌فرض کارگزاران واسط برای همه هدف‌ها، دارایی زیر را در فایل message-processor.properties تنظیم کنید:

conf_http_HTTPClient.use.proxy=false

سپس use.proxy را برای هر TargetEndpoint که می‌خواهید از پروکسی ارسال HTTP استفاده کند روی «true» تنظیم کنید:

<Property name="use.proxy">true</Property>

به‌طور پیش‌فرض، Edge از تونل‌سازی برای ترافیک پراکسی استفاده می‌کند. برای غیرفعال کردن تونل‌سازی به‌طور پیش‌فرض، خصوصیت زیر را در فایل message-processor.properties تنظیم کنید:

conf_http_HTTPClient.use.tunneling=false

اگر می‌خواهید تونل‌سازی را برای هدف خاصی غیرفعال کنید، دارایی use.proxy.tunneling را در TargetEndpoint تنظیم کنید. اگر هدف از TLS/SSL استفاده می‌کند، این دارایی نادیده گرفته می‌شود و پیام همیشه ازطریق تونل ارسال می‌شود:

<Property name="use.proxy.tunneling">false</Property>

برای اینکه خود Edge به‌عنوان پراکسی ارسال عمل کند - درخواست‌ها را از سرویس‌های زیریانه دریافت کند و آن‌ها را به اینترنت خارج از شرکت هدایت کند - ابتدا یک پراکسی API در Edge راه‌اندازی کنید. سرویس زیرینه می‌تواند درخواستی به پراکسی API ارسال کند، که سپس می‌تواند به سرویس‌های خارجی متصل شود.