21.1.2 Webリスナーのセキュリティに関する考慮事項
Oracle Application Expressで実行するWebリスナーを選択する際は、セキュリティに関する考慮事項を確認します。
- Oracle Application ExpressでのOracle REST Data Servicesの構成について
Oracle Application ExpressでOracle REST Data Servicesを使用することをお薦めします。 - Oracle Application Expressでのmod_plsqlを使用したOracle HTTP Serverの構成について
mod_plsql
はOracle HTTP Server 12c (12.1.3)で非推奨となったため、Oracle REST Data Servicesを使用することをお薦めします。 - 埋込みPL/SQLゲートウェイを使用する場合のセキュリティに関する考慮事項について
インターネット上で実行されるアプリケーションに埋込みPL/SQLゲートウェイを使用することはお薦めしません。
関連項目:
Oracle Application Expressインストレーション・ガイドのWebリスナーの選択
親トピック: セキュリティに関する管理者のベスト・プラクティスの理解
21.1.2.1 Oracle Application ExpressでのOracle REST Data Servicesの構成について
Oracle Application ExpressでOracle REST Data Servicesを使用することをお薦めします。
Oracle REST Data Services (以前のOracle Oracle Application Express Listener)は、SQL*Net接続経由でブラウザ・リクエストをApplication Expressエンジン・データベースにマッピングすることによってOracle Databaseと通信するJ2EEアプリケーションです。Oracle REST Data ServicesはOracle Application Expressの戦略的方向性であり、実質的にすべての環境で使用することをお薦めします。本番環境では、Oracle Web Logic ServerなどのサポートされているJava EEアプリケーションにOracle REST Data Services Webアーカイブ・ファイルをデプロイします。各デプロイは、個別に構成し、Oracleデータベースと通信するためのmod_plsql
データベース・アクセス記述子と同じ目的で利用できます。
Oracle REST Data Servicesのデプロイ構成には、複数のセキュリティ関連パラメータが含まれます。Oracle Application Expressの構成では、パラメータsecurity.requestValidationFunction
をwwv_flow_epg_include_modules.authorize
に設定することをお薦めします。これにより、Oracle Application Expressに付属のコール可能なプロシージャのホワイト・リストがアクティブ化され、他のプロシージャへのコールが禁止されます。これは、Oracle Application Expressに付属する検証ファンクションを使用して拡張できます。
関連項目:
『Oracle Application Express管理ガイド』のデータベース・アクセス記述子(DAD)によるOracle Application Expressへのアクセスの制限に関する項
親トピック: Webリスナーのセキュリティに関する考慮事項
21.1.2.2 Oracle Application Expressでのmod_plsqlを使用したOracle HTTP Serverの構成について
mod_plsql
はOracle HTTP Server 12c (12.1.3)で非推奨となったため、Oracle REST Data Servicesを使用することをお薦めします。
ヒント:
Oracle HTTP Server 12c (12.1.3)では、mod_plsql
は非推奨となっています。この非推奨に関する詳細は、My Oracle Supportノート1576588.1を参照してください。かわりに、Oracle REST Data Servicesを使用することをお薦めします。
Oracle HTTP Serverは、mod_plsql
プラグインを使用してOracle Database内のOracle Application Expressエンジンと通信します。mod_plsql
ファンクションは、WebサーバーとOracle Database内のOracle Application Expressエンジン間の通信ブローカとして機能します。
mod_plsql
の各リクエストは、Database Access Descriptor(DAD)というデータベースにアクセスする際に使用する一連の構成値に関連付けられます。mod_plsql
には、リクエストされたプロシージャのさらなる処理を許可または禁止することができるPlsqlRequestValidationFunction
というDADパラメータがあります。このパラメータを使用すると、DADからの実行の許可対象にしないパッケージおよびプロシージャのコールをブロックすることで、PL/SQLアプリケーションにさらに強力なセキュリティを実装できます。Oracle Application ExpressのDAD構成では、PlsqlRequestValidationFunction
ディレクティブに値 wwv_flow_epg_include_modules.authorize
を使用することをお薦めします。
PlsqlRequestValidationFunction
パラメータの目的は、mod_plsql
によってどのプロシージャが起動されるかを制御することです。デフォルトでは、Oracle Application Expressのパブリックなエントリ・ポイントのみが許可されます。これは、Oracle Application Expressに付属する検証ファンクションを使用して拡張できます。
関連項目:
Oracle Application Express管理ガイドの「データベース・アクセス記述子(DAD)によるOracle Application Expressへのアクセスの制限」
親トピック: Webリスナーのセキュリティに関する考慮事項
21.1.2.3 埋込みPL/SQLゲートウェイを使用する場合のセキュリティに関する考慮事項について
インターネット上で実行されるアプリケーションに埋込みPL/SQLゲートウェイを使用することはお薦めしません。
埋込みPL/SQLゲートウェイは、Oracle XML DB HTTPリスナーの一部としてデータベースで実行されます。Oracle XML DB HTTPリスナーおよび埋込みPL/SQLゲートウェイには、Oracle HTTP Serverおよびmod_plsql
と同等の主要機能があります。HTTPリスナーはOracle Application Expressがインストールされているデータベースと同じデータベースで実行されるため、データベースから分離できません。このため、インターネット上で実行されるアプリケーションまたは本番アプリケーションに埋込みPL/SQLゲートウェイを使用することはお薦めしません。かわりに、Oracle REST Data Servicesを使用することをお薦めします。また、埋込みPL/SQLゲートウェイでは、Oracle REST Data Servicesほどに柔軟な構成および詳細なログは提供されません。
親トピック: Webリスナーのセキュリティに関する考慮事項