リバースプロキシ設定 (Design Studio、Data Catalog、Scheduler)¶
Design Studio、Data Catalog、および Scheduler で使用されているコンテンツセキュリティポリシー (CSP) により、これらのアプリケーションがプロキシの背後で正しく動作するには、プロキシは Cache-Control と Pragma の各 HTTP レスポンスヘッダーを変更してはいけません。
リバースプロキシ構成¶
Design Studio、Data Catalog、および Scheduler は、リバースプロキシの背後で動作でき、そのために URL を動的に構築する構成メカニズムを提供します。
この機能は、デフォルトで無効になっています。有効にするには、以下に示す適切な構成ファイルを開きます。
Design Studio の場合:
<DENODO_HOME>/conf/design-studio/DesignStudioBackend.propertiesおよび<SOLUTION_MANAGER_HOME>/conf/design-studio/DesignStudioBackend.propertiesData Catalog の場合:
<DENODO_HOME>/conf/data-catalog/DataCatalogBackend.propertiesScheduler の場合:
<DENODO_HOME>/conf/scheduler-webadmintool/ConfigurationParameters.properties
各コンポーネントのリバースプロキシ構成は、これらのファイルの以下のプロパティで制御します。
reverse-proxy.enabled=falsereverse-proxy.forwardedPrefix=reverse-proxy.autodetect=falsereverse-proxy.autodetectHeaders=Forwarded X-Forwarded-For X-Forwarded-Proto X-Forwarded-Prefixreverse-proxy.cookieRewrite=false
リバースプロキシ機能を有効にするには、プロパティ reverse-proxy.enabled=true を設定します。
プロキシサーバーが X-Forwarded-Prefix HTTP ヘッダーを提供する場合、これ以上の構成は不要です。
プロキシサーバーが X-Forwarded-Prefix HTTP ヘッダーを提供しない場合、パラメータ reverse-proxy.forwardedPrefix=<context-path> を設定することにより、転送するプレフィックス値を手動で構成します。
注釈
デフォルトコンテキストパスは、Design Studio では /denodo-design-studio 、Data Catalog では /denodo-data-catalog 、Scheduler では /webadmin/denodo-scheduler-admin です。
reverse-proxy.forwardedPrefix を使用して転送するプレフィックス値を手動で構成し、Web アプリケーションがプロキシから送信される HTTP リクエストとプロキシ以外から送信される HTTP リクエストを解決する必要がある場合、 reverse-proxy.autodetect=true を設定します。
また、 reverse-proxy.autodetectHeaders を設定することにより、リクエストがプロキシから送信されたかどうかを検出するために使用されるリクエストヘッダーのリストを提供できます。このパラメータのデフォルト値は、 Forwarded X-Forwarded-For X-Forwarded-Proto X-Forwarded-Prefix です。
reverse-proxy.autodetectHeaders に設定されているいずれかの値が含まれる HTTP リクエストは、プロキシから送信されたリクエストと見なされます。その場合、生成される URL は、プレフィックス reverse-proxy.forwardedPrefix を参照します。それ以外の場合、生成される URL は、デフォルトコンテキストパスを参照します。
プロキシサーバーが Cookie のパスの書き換えをサポートしない場合、 reverse-proxy.cookieRewrite=true を設定すると、Web コンテナーは Cookie のパスを reverse-proxy.forwardedPrefix の値で書き換えます。reverse-proxy.cookieRewrite が有効な場合、すべてのリクエストの Cookie のパスが変更され、プロキシ以外からのリクエストは機能しません。
これらの変更を有効にするには、変更したコンポーネントを再起動します。
