フォワード プロキシは、複数のマシンが外部サーバーにリクエストを送信するための単一の通過ポイントを提供します。転送プロキシでは、リクエストをビジネスルールに準拠させるために、セキュリティ ポリシーの適用や、リクエストのロギングと分析などの処理を行うことができます。Edge では、転送プロキシは通常、 API プロキシと外部の TargetEndpoint(バックエンド ターゲット サーバー)の中間として機能します。
Edge と TargetEndpoint の間で HTTP 転送プロキシを使用するには、以下を構成する必要があります。 Message Processor(MP)の送信プロキシ設定。これらのプロパティは MP の構成を を使用して、ターゲット リクエストを Edge から HTTP 転送プロキシにルーティングします。
転送プロキシ用に MP を構成するには:
- MP で次のファイルを編集します。
/opt/apigee/customer/application/message-processor.properties
message-processor.properties
ファイルが存在しない場合は作成します。 - このファイルを編集して、下の表に示すプロキシ関連のプロパティを設定します。
- プロパティ ファイルの所有者が「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 を設定します。
プロパティ | 説明 |
---|---|
conf_http_HTTPClient.use.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 |
HTTP プロキシのタイプを HTTP または HTTPS として指定します。デフォルトでは、「HTTP」が使用されます。 |
conf/http.properties+HTTPClient.proxy.host |
HTTP プロキシが実行されているホスト名または IP アドレスを指定します。 |
conf/http.properties+HTTPClient.proxy.port |
HTTP プロキシが動作しているポートを指定します。このプロパティを省略すると、HTTP の場合はポート 80、HTTPS の場合はポート 443 がデフォルトで使用されます。 |
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 プロパティの設定の詳細については、Endpoint プロパティのリファレンスをご覧ください。
すべてのターゲットの転送プロキシをデフォルトで無効にするには、
message-processor.properties
ファイル:
conf_http_HTTPClient.use.proxy=false
次に、use.proxy
を「true」に設定します。通過する TargetEndpoint に対しても
HTTP フォワード プロキシ:
<Property name="use.proxy">true</Property>
デフォルトでは、Edge はプロキシへのトラフィックにトンネリングを使用します。トンネリングをデフォルトで無効にするには
message-processor.properties
ファイルで次のプロパティを設定します。
conf_http_HTTPClient.use.tunneling=false
特定のターゲットに対してトンネリングを無効にする場合は、
TargetEndpoint の use.proxy.tunneling
プロパティ。ターゲットで TLS/SSL を使用する場合は、
その場合、このプロパティは無視され、メッセージは常にトンネルを介して送信されます。
<Property name="use.proxy.tunneling">false</Property>
Edge 自体がフォワード プロキシとして機能するため、バックエンド サービスからリクエストを受信し、 企業外のインターネットにルーティングするように設定するには、まず Edge で API プロキシを設定します。「 バックエンド サービスは API プロキシにリクエストを発行し、API プロキシは外部 提供します。