1 Oracle REST Data Servicesの紹介
この章では、Oracle REST Data Servicesを紹介し、インストールおよびデプロイする方法について説明します。RESTはRepresentational State Transferの略です。
ノート:
Oracle REST Data Servicesは、リリース2.0.6の前はOracle Application Express Listenerと呼ばれていました。トピック:
- Oracle REST Data Servicesについて
- ORDSを使用するための要件
- Oracle REST Data Servicesの使用
- Oracle REST Data Servicesのダウンロード、構成およびインストール
- Oracle REST Data Servicesのデプロイ
- ORDSのモニタリング
- Oracle REST Data Servicesのアップグレード
- Bequeath接続を使用したOracle REST Data Servicesのインストール、アップグレード、検証またはアンインストール
- Oracle Data Guardで保護されているユーザーにアクセスするためのOracle REST Data Servicesの認可
1.1 Oracle REST Data Servicesについて
Oracle REST Data Servicesは、Oracle HTTP Serverおよびmod_plsql
のかわりとなるJava EEベースのサービスです。Java EEの実装では、コマンドライン・ベースの設定、セキュリティの強化、ファイル・キャッシュおよびRESTful Webサービスなどの豊富な機能が提供されます。また、Oracle REST Data Servicesでは、Oracle WebLogic Server、Apache Tomcatおよびスタンドアロン・モードを使用したデプロイをサポートすることで、高い柔軟性が提供されます。
Oracle Application Expressアーキテクチャでは、WebブラウザとOracle Application Expressエンジンとの間でリクエストを代理するため、なんらかの形態のWebサーバーが必要です。Oracle REST Data Servicesは、この要件を満たしていますが、Oracle Application Express構成の範囲を超えて使用されています。Oracle REST Data Servicesでは、埋込のJDBCドライバを使用して接続が提供され、Oracleホームが必要ないため、デプロイ・プロセスが単純です。
1.2 ORDSを使用するための要件
この項では、サポートされているプラットフォーム、システム要件、コマンドライン・インタフェースの使用、データベース・ユーザー、およびORDSの使用に必要な権限について説明します。
トピック:
1.2.2 サポートされるOracle Application Express (APEX)のバージョン
Oracle REST Data Servicesでは、現在サポートされているAPEXのバージョンがサポートされます。
関連項目:
サポートされているAPEXのバージョンは、Oracle情報主導サポートドキュメントのOracle Application Express (以前のHTML DB)の表を参照してください。1.2.3 システム要件
Oracle REST Data Servicesのシステムの要件は次のとおりです。
-
Oracle Database (Enterprise Edition、Standard EditionまたはStandard Edition One)リリース11gリリース2以上またはOracle Database 11gリリース2 Express Edition。
-
Oracle Java 8以上。
-
Webブラウザの要件:
-
Microsoft Internet Explorer 8.0以上。
-
Mozilla Firefox 3.0以上。
-
Google Chrome 2.0以上。
-
ノート:
Oracle Application ExpressはOracle REST Data Servicesを使用するための前提条件ではありません。
Oracle Application Expressがインストールされており、インストール時にRESTfulサービスが構成されている場合(『Oracle Application Expressインストレーション・ガイド』の「Oracle REST Data Servicesの構成」の手順を参照)は、Oracle REST Data Servicesでそれがサポートされています(Oracle Application Expressで定義されているRESTfulサービスの実行など)。
1.2.4 コマンドライン・インタフェースの使用について
Oracle REST Data Servicesでは、いくつかのコマンドライン・コマンドが提供されています。たとえば、Oracle REST Data Servicesの構成ファイルを保存する場所を構成でき、Oracle REST Data Servicesで使用するデータベースを構成でき、Oracle REST Data Servicesをスタンドアロン・モードで開始できます。
利用可能なコマンドの完全なリストを表示するには、ords.war
ファイルが保存されているディレクトリまたはフォルダに移動し、次のコマンドを実行します。
java -jar ords.war help
使用可能なコマンドのリストが表示されます。各コマンドの使用方法の説明を表示するには、次のように「help」に続けてコマンド名を入力します。
java -jar ords.war help configdir
1.2.5 Oracle REST Data Servicesで使用されるデータベース・ユーザーについて
Oracle REST Data Servicesでは、次のデータベース・ユーザーが使用されます。
ユーザー名 | 必須かどうか | 説明 |
---|---|---|
|
Oracle Application ExpressでOracle REST Data Servicesを使用している場合のみ |
Oracle Application ExpressとともにOracle REST Data Servicesを使用する場合、すべてのOracle Application Express操作など、PL/SQLゲートウェイ操作の起動に使用されるデータベース・ユーザーです。 APEX_PUBLIC_USERのロック解除の詳細は、『Oracle Application Expressインストレーション・ガイド』のAPEX_PUBLIC_USERアカウントの構成の項を参照してください。 |
|
バージョン5.0以上のApplication Expressで定義されているRESTfulサービスを使用する場合のみです。 |
Application Expressのワークスペースに定義されているRESTfulサービスにアクセスする場合に、Oracle Application ExpressのRESTfulサービスの呼出しに使用されるデータベース・ユーザーです。 |
|
バージョン5.0以上のApplication Expressで定義されているRESTfulサービスを使用する場合のみです。 |
Application Expressのワークスペースに定義されているRESTfulサービスにアクセスする場合に、Oracle Application Expressに格納されているRESTfulサービス定義の問合せに使用されるデータベース・ユーザーです。 |
|
はい |
Oracle REST Data Servicesの多くの機能の実装に使用されるPL/SQLパッケージの所有者です。ORDS_METADATAには、Oracle REST Data Services対応のスキーマのメタデータが格納されます。 Oracle REST Data Servicesから直接このメタデータにアクセスすることはなく、Oracle REST Data ServicesアプリケーションはORDS_METADATAスキーマへの接続を作成することはありません。スキーマ・パスワードはランダムな文字列に設定され、接続権限は削除、パスワードの有効期限は期限切れです。 |
|
はい |
Oracle REST Data Services対応のスキーマでRESTfulサービスを呼び出すためのユーザーです。 |
APEX_<xxx>
ユーザーは、Oracle Application Expressのインストール・プロセスの中で作成されます。
1.2.6 Oracle REST Data Servicesに必要な権限
Oracle REST Data Servicesインストールの一部として、次のような権限が複数のユーザーおよびロールに付与されます。
ORDS_RUNTIME_ROLE
ロール- 次のパッケージに
PUBLIC
に対するEXECUTE
権限が付与されていない場合、ORDS_RUNTIME_ROLE
には、そのパッケージのEXECUTE
権限が付与されます。SYS.DBMS_LOB
SYS.DBMS_SESSION
SYS.DBMS_UTILITY
SYS.WPIUTL
ORDS_RUNTIME_ROLE
には、リポジトリ・バージョンを確認し、接続プール構成にアクセスするために必要なORDS_METADATA
オブジェクト権限が付与されます。
- 次のパッケージに
ORDS_PUBLIC_USER
ユーザーORDS_PUBLIC_USER
には、データベースに接続できる接続権限が付与されます。ORDS_PUBLIC_USER
には、ユーザーがORDSランタイム・ユーザーとして機能できるロールORDS_RUNTIME_ROLE
が付与されます
ORDS_ADMINISTRATOR_ROLE
ロールORDS_ADMINISTRATOR_ROLE
には、ORDS_METADATA.ORDS_ADMIN
PL/SQLパッケージのEXECUTE権限が付与されます。
PUBLIC
PUBLIC
には、すべてのユーザーがリポジトリ・バージョンを問合せできるように、ORDS_METADATA.ORDS_REPVERSION
ビューのEXECUTE
権限が付与されます。PUBLIC
には、多くのORDS_METADATA
ビューのSELECT
権限が付与されます。PUBLIC
には、開発者ユーザーが使用できるORDS_METADATA
PL/SQLパッケージのEXECUTE
権限が付与されます。
ORDS_METADATA
スキーマ- 次のパッケージに
PUBLIC
でEXECUTE
権限が付与されていない場合、そのパッケージのORDS_METADATA
スキーマが付与されます。SYS.DBMS_ASSERT
SYS.DBMS_LOB
SYS.DBMS_OUTPUT
SYS.DBMS_SCHEDULER
SYS.DBMS_SESSION
SYS.DBMS_UTILITY
SYS.DEFAULT_JOB_CLASS
SYS.HTP
SYS.OWA
SYS.WPG_DOCLOAD
- 次のビューに
PUBLIC
に対するSELECT
権限またはREAD
権限が付与されていない場合、ORDS_METADATA
には、そのビューのSELECT
権限(11g)またはREAD
権限(12c以上)が付与されます。SYS.SESSION_PRIVS
ORDS_METADATA
スキーマには、次のパッケージのEXECUTE
権限が付与されます。SYS.DBMS_CRYPTO
SYS.DBMS_METADATA
ORDS_METADATA
スキーマには、次のビューのSELECT
権限(11g)またはREAD
権限(12c以降)が付与されます。SYS.DBA_OBJECTS
SYS.DBA_ROLE_PRIVS
SYS.DBA_TAB_COLUMNS
ORDS_METADATA
スキーマには、次のビューのWITH GRANT OPTION
を含むSELECT
権限が付与されます。SYS.USER_CONS_COLUMNS
SYS.USER_CONSTRAINTS
SYS.USER_OBJECTS
SYS.USER_PROCEDURES
SYS.USER_TAB_COLUMNS
SYS.USER_TABLES
SYS.USER_VIEWS
ORDS_METADATA
スキーマには、次のシステム権限が付与されます。ALTER USER
CREATE ANY TRIGGER
CREATE JOB
CREATE PUBLIC SYNONYM
DROP PUBLIC SYNONYM
ORDS_METADATA
スキーマには、Application ExpressのRESTデータをORDS_METADATA
表に移行するために必要なオブジェクト権限が付与されます。ORDS_METADATA
スキーマには、管理者オプションを指定したORDS_ADMINISTRATOR_ROLE
およびORDS_RUNTIME_ROLE
ロールが付与されます。
- 次のパッケージに
-
PUBLIC
には、多くのORDS_METADATA
表およびビューのSELECT
権限が付与されます。 -
PUBLIC
には、ユーザーの起動できるPL/SQLパッケージのEXECUTE
権限が付与されます。 -
次のパッケージに
PUBLIC
に対するEXECUTE
権限が付与されていない場合、ORDS_METADATA
には、そのパッケージのEXECUTE
権限が付与されます。SYS.DBMS_ASSERT
SYS.DBMS_LOB
SYS.DBMS_OUTPUT
SYS.DBMS_SCHEDULER
SYS.DBMS_SESSION
SYS.DBMS_UTILITY
SYS.DEFAULT_JOB_CLASS
SYS.HTP
SYS.OWA
SYS.WPG_DOCLOAD
-
ORDS_METADATA
には、Application ExpressのRESTデータをORDS_METADATA
表に移行するために必要なオブジェクト権限が付与されます。
1.3 Oracle REST Data Servicesの使用
この項では、Oracle REST Data Servicesを使用する手順を示します。
-
デプロイする前に、Oracle REST Data Servicesをダウンロード、インストールおよび構成する必要があります。
-
次のいずれかのオプションを使用して、Oracle REST Data Servicesをデプロイします。
- Oracle REST Data Servicesのデプロイ
-
スタンドアロン・モード
-
Oracle WebLogc Server
-
Apache Tomcat
-
Oracle Cloud Infrastructure
-
- Oracle REST Data Servicesのデプロイ
1.4 Oracle REST Data Servicesのダウンロード、構成およびインストール
ノート:
このトピックの手順は、従来の(非CDB)データベースにOracle REST Data Servicesをインストール場合に適用されます。
関連トピック
関連項目:
- JSONデータの永続にOracle REST APIを使用する場合は、Oracle REST APIもインストールする必要があります。詳細は、『Oracle REST Data Services SODA for REST開発者ガイド』のOracle REST APIのインストールに関する項を参照してください
1.4.1 Oracle REST Data Servicesのダウンロード
このトピックでは、Oracle REST Data Servicesをダウンロードする手順を示します。
-
Oracle REST Data Servicesのダウンロード・ページから
ords.
version.number
.zip
ファイルをダウンロードします。ファイル名の
version.number
に現在のリリース番号が反映されることに注意してください。 -
ダウンロードしたZIPファイルを任意のディレクトリ(フォルダ)に解凍します。
-
UNIXおよびLinuxの場合:
ords.
version.number
.zip
を解凍します。
-
Windowsの場合: Windowsエクスプローラで
ords.
version.number
.zip
ファイルをダブルクリックします。
-
1.4.2 Oracle REST Data Servicesの構成
各自の要件を満たすようにORDSを構成できます。
利用可能なコマンドの完全なリストを表示するには、ords.war
ファイルが保存されているディレクトリまたはフォルダに移動し、次のコマンドを実行します。
java -jar ords.war help
1.4.3 Oracle REST Data Servicesのインストール
Oracle REST Data Servicesをインストールするには、次のいずれかのインストール・オプションを選択します。
-
コマンドライン・プロンプトを使用した拡張インストール
-
パラメータ・ファイルを使用したサイレント・インストール
Oracle REST Data Servicesは、必要に応じて再インストールまたはアンインストールできます。
1.4.3.1 ORDSインストーラの権限スクリプト
この項では、ORDSをインストール、アップグレード、検証およびアンインストールする権限をユーザーに付与するスクリプト・ファイルについて説明します。
ノート:
このスクリプトは、SYS AS SYSDBAを使用せずに、Oracle PDBまたはOracle 11gでORDSをインストール、アップグレード、検証およびアンインストールする場合に使用します。ORDS 19.2リリース以降では、Oracle REST Data Servicesインストール・アーカイブ・ファイルのインストーラ・フォルダに、ords_installer_privileges.sql
スクリプトが含まれています。このスクリプトは、Oracleプラガブル・データベースまたはOracle 11gでORDSをインストール、アップグレード、検証およびアンインストールする権限を割り当てられたデータベース・ユーザーに付与します。
- SQLclまたはSQL*Plusを使用して、SYSDBA権限でOracle PDBまたは11gデータベースに接続します。
- データベース・ユーザーを指定して次のスクリプトを実行します。
SQL> @/path/to/installer/ords_installer_privileges.sql exampleuser SQL> exit
ORDSをインストール、アップグレード、検証およびアンインストールするには、指定されたデータベース・ユーザーを使用する必要があります。
1.4.3.2 コマンドライン・プロンプトを使用した拡張インストール
拡張インストールを実行すると、必要なパラメータ値の入力を求めるプロンプトが表示されます。
拡張インストールを実行するには、次のコマンドを入力します。
java -jar ords.war install advanced
ノート:
インストール・コマンドで使用可能な追加のオプションを確認するには、オンライン・ヘルプ・コマンドjava –jar ords.war help install
を使用します。
インストール時に、Oracle REST Data Servicesは指定された構成フォルダに構成ファイルがすでに存在するかどうかをチェックします。
-
そのフォルダに構成ファイルが存在しない場合は、作成されます。たとえば、
defaults.xml
、apex_pu.xml
ファイルです。 -
以前のリリースの構成ファイルがそのフォルダに存在する場合、Oracle REST Data Servicesは
<name>_pu.xml
の有無をチェックします。存在しない場合、ORDS_PUBLIC_USERアカウントのパスワードを入力するよう求めるプロンプトが表示されます。リリース2.0.nの構成ファイル<name>_al.xml
および<name>_rt.xml
が存在する場合は、保持されます。(ただし、2.0.nリリースではRESTfulサービスはオプションだったため、構成フォルダにファイルが存在しない可能性もあります。) -
以前のリリースの構成ファイルが複数存在し(例:
apex.xml
、apex_al.xml
、apex_rt.xml
、sales.xml
、sales_al.xml
、sales_rt.xml
、…)、<name>_pu.xml
が存在しない場合は、データベース構成を選択し、Oracle REST Data Servicesスキーマをそのデータベースで作成できるようにするように求められます。
次に拡張インストールの例を示します。この例では、Enter 1 if you wish to start in standalone mode or 2 to exit [1]
に対してデフォルト値の1を受け入れると、残りのプロンプトが表示され、Oracle Application Expressを使用する場合はAPEX static resources location
を指定する必要があります。
d:\ords> java -jar ords.war install advanced This Oracle REST Data Services instance has not yet been configured. Please complete the following prompts Enter the location to store configuration data: /path/to/config Specify the database connection type to use. Enter number for [1] Basic [2] TNS [3] Custom URL [1]: Enter the name of the database server [localhost]: Enter the database listen port [1521]: Enter 1 to specify the database service name, or 2 to specify the database SID [1]: Enter the database service name:orcl Enter 1 if you want to verify/install Oracle REST Data Services schema or 2 to skip this step [1]: Enter the database password for ORDS_PUBLIC_USER: Confirm password: Requires to login with administrator privileges to verify Oracle REST Data Services schema. Enter the administrator username:EXAMPLEUSER Enter the database password for EXAMPLEUSER: Confirm password: Connecting to database user: EXAMPLEUSER url: jdbc:oracle:thin:@//localhost:1521/orcl Retrieving information. Enter the default tablespace for ORDS_METADATA [SYSAUX]: Enter the temporary tablespace for ORDS_METADATA [TEMP]: Enter the default tablespace for ORDS_PUBLIC_USER [USERS]: Enter the temporary tablespace for ORDS_PUBLIC_USER [TEMP]: Enter 1 if you want to use PL/SQL Gateway or 2 to skip this step. If using Oracle Application Express or migrating from mod_plsql then you must enter 1 [1]: Enter the PL/SQL Gateway database user name [APEX_PUBLIC_USER]: Enter the database password for APEX_PUBLIC_USER: Confirm password: Enter 1 to specify passwords for Application Express RESTful Services database users (APEX_LISTENER, APEX_REST_PUBLIC_USER) or 2 to skip this step [1]: Enter the database password for APEX_LISTENER: Confirm password: Enter the database password for APEX_REST_PUBLIC_USER: Confirm password: Enter a number to select a feature to enable: [1] SQL Developer Web (Enables all features) [2] REST Enabled SQL [3] Database API [4] REST Enabled SQL and Database API [5] None Choose [1]: Enter 1 if you wish to start in standalone mode or 2 to exit [1]: Enter the APEX static resources location:/path/to/apex/images Enter 1 if using HTTP or 2 if using HTTPS [1]: Enter the HTTP port [8080]: OR Enter 1 if using HTTP or 2 if using HTTPS [1]:2 Enter the HTTPS port [8443]: Enter the SSL hostname:mysslhost Enter 1 to use the self-signed certificate or 2 if you will provide the SSL certificate [1]:
1.4.3.2.1 拡張インストール・プロンプトの説明
この項では、Oracle REST Data Servicesスキーマの拡張インストールを実行中に選択できるオプションを説明します。
表1-1 ORDSのインストールおよび構成の拡張インストール・プロンプト
オプション | 説明 |
---|---|
|
ORDS構成ファイルの場所を指定します。場所が存在しない場合は作成されます。 |
Specify the database connection type to use. Enter number for [1] Basic [2] TNS [3] Custom URL [1]: |
基本接続、TNS接続またはカスタムURL接続を使用する場合に指定します |
次の例は、基本接続の例です。 | |
Enter the name of the database server [localhost]: |
Oracle Databaseのホスト名を指定します。 |
Enter the database listen port [1521]: |
Oracle Databaseのポートを指定します。 |
|
オプション1を選択する場合は、Oracle Databaseサービス名を指定します。そうでない場合、オプション2を選択する場合は、Oracle DatabaseのSIDを指定します。 |
次の例は、TNS接続の例です。 | |
Enter the TNS Network Alias:orcl |
TNSネットワーク別名識別子を指定します。 |
次の例は、カスタムURL接続の例です。 | |
Enter the Custom JDBC URL: jdbc:oracle:thin:@//localhost:1521/orcl |
カスタムURLを指定します。 |
|
Oracle REST Data Servicesスキーマをインストールし、Oracle REST Data Servicesプロキシ・ユーザー プロキシ・ユーザー |
|
ORDSインストーラ権限またはSYS AS SYSDBAアカウントを持つユーザーを指定します。 ユーザーのパスワードを指定します。 |
|
Oracle REST Data Servicesスキーマ |
|
Oracle REST Data Servicesプロキシ・ユーザー |
表1-2 Application Expressを構成するか、mod_plsqlから移行するためのオプション
オプション | 説明 |
---|---|
|
次のいずれかを実行できます。
|
|
PL/SQLゲートウェイ・ユーザーにAPEX_PUBLIC_USERを指定した場合は、Application Express RESTfulサービスの使用を選択できます。 Application Express RESTful Servicesを使用しない場合は、2を指定してこのステップをスキップします。 Application Express 5.0以上の場合、オプション1が必要です。データベース・ユーザーは、Application Expressのインストール・メディアで提供されているスクリプト |
表1-3 ORDSでの機能の有効化
オプション | 説明 |
---|---|
|
すべての機能(SQL Developer Web、REST対応SQLおよびデータベースAPI)を有効にするには、1を指定します。REST対応SQLの場合は2、データベースAPIの場合は3を指定します。REST対応SQLとデータベースAPIの両方を有効にするには、4を指定します。 詳細は、「SQL Developer Webへのアクセス」、「REST対応SQLサービス」および「ORDSデータベースAPIの有効化」のドキュメントを参照してください。 |
表1-4 スタンドアロン・モードで実行するためのオプション
オプション | 説明 |
---|---|
Enter 1 if you wish to start in standalone mode or 2 to exit [1]: |
ORDSにバンドルされているJetty Webサーバーを使用してスタンドアロン・モードで起動するには、1を指定します。 |
Enter the APEX static resources location:/path/to/apex/images |
Application Expressイメージの場所を指定します。PL/SQLゲートウェイ・ユーザーに |
|
1を選択する場合はHTTPポートを指定します。 |
|
2を選択する場合はHTTPSポートとSecure Socket Layer(SSL)のホスト名を指定します。 自己署名証明書を使用でき、使用する場合は自己署名証明書が自動的に生成されます。 |
|
2を選択する場合、SSL証明書のパス、およびSSL証明書の秘密キーのパスを指定します。 |
1.4.3.3 ORDSパラメータ・ファイル
Oracle REST Data Servicesは、ユーザーが操作しなくても、簡易モードまたはサイレント・モードでインストールできます。
Oracle REST Data Servicesをインストールした場所にあるparams/ords_params.properties
ファイルに指定されているパラメータを使用して、Oracle REST Data Servicesの簡易インストールまたはサイレント・インストールを実行できます。これはデフォルトのOracle REST Data Servicesパラメータ・ファイルです。このファイルを編集し、使用環境や好みを反映してデフォルト値を変更できます。
Oracle REST Data Servicesをインストールした場所にあるparams/ords_params.properties
ファイルに指定されているパラメータを使用して、Oracle REST Data Servicesのインストールを実行できます。これはデフォルトのOracle REST Data Servicesパラメータ・ファイルです。Oracle REST Data Servicesのパラメータ・ファイルは、key=value
の形式のキーまたは値のペアで構成されます。
または、--parameterFile
オプションを含めることで、独自のOracle REST Data Servicesパラメータ・ファイルを指定できます。--parameterFile
オプションを指定しない場合、デフォルトのOracle REST Data Servicesパラメータ・ファイルが使用されます。
1.4.3.3.1 ORDSパラメータ・ファイルで使用されるパラメータ
この項では、ORDSパラメータ・ファイルで使用されるパラメータを示しています。
1.4.3.3.1.1 データベース接続のパラメータ
この項では、プロパティ・ファイルで指定する必要があるデータベース接続パラメータを示します。基本、TNSまたはカスタムURL接続を指定できます。
1.4.3.3.1.1.1 基本接続のパラメータ
この項では、基本データベース接続のプロパティ・ファイルで指定する必要のあるパラメータを示しています。
基本接続では、db.hostname
およびdb.port
データベース接続パラメータを指定する必要があります。また、db.servicename
またはdb.sid
のいずれかのパラメータを指定します。Oracle 12.x PDBへのデータベース接続を指定する場合は、db.servicename
パラメータを指定します。
キー | 型 | 説明 | 例 |
---|---|---|---|
db.connectionType |
文字列 | 接続タイプを指定します。値はbasic です。
|
basic |
db.hostname |
文字列 | Oracleデータベースのホスト・システムを指定します。 | myhostname |
db.port |
数値 | データベース・リスナーのポートを指定します。 | 1521 |
db.servicename |
文字列 | データベースのネットワーク・サービス名を指定します。 | orcl.example.com |
db.sid |
文字列 | データベースの名前を指定します。 | orcl |
1.4.3.3.1.2 Oracle REST Data Servicesをインストールするためのパラメータ
この項では、Oracle REST Data Servicesスキーマをインストールするために必要なパラメータを示します。
-
ORDSインストーラ権限を持つ、またはSYS AS SYSDBAアカウントを持つユーザーのユーザー名とパスワード。
-
ORDS_PUBLIC_USERのパスワード
-
ORDS_METADATAスキーマおよびORDS_PUBLIC_USERの既存のデフォルト表領域と一時表領域
ノート:
すべてのデフォルト表領域パラメータおよび一時表領域パラメータがOracle REST Data Servicesのパラメータ・ファイルで省略されている場合、Oracleデータベースのデフォルトの表領域および一時表領域が使用されます。
表1-5 Oracle REST Data Servicesをインストールするためのパラメータ
キー | 型 | 説明 | 例 |
---|---|---|---|
rest.services.ords.add |
ブール値 |
Oracle REST Data Servicesスキーマをインストールするかどうかを指定します。この値にはtrueを設定します。 サポートされている値:
|
true |
user.public.password |
文字列 |
ORDS_PUBLIC_USERのパスワードを指定します。 |
password |
schema.tablespace.default |
文字列 |
ORDS_METADATAのデフォルト表領域を指定します。既存のデフォルト表領域を指定します。 |
SYSAUX |
schema.tablespace.temp |
文字列 |
ORDS_METADATAの一時表領域を指定します。既存の一時表領域を指定します。 |
TEMP |
user.tablespace.default |
文字列 |
ORDS_PUBLIC_USERのデフォルト表領域を指定します。既存のデフォルト表領域を指定します。 |
SYSAUX |
user.tablespace.temp |
文字列 |
ORDS_PUBLIC_USERの一時表領域を指定します。既存の一時表領域を指定します。 |
TEMP |
bequeath.connect |
ブール値 |
Bequeath接続に使用するかどうかを指定します。 サポートされている値:
|
true |
1.4.3.3.1.3 SQL Developer Webを有効にするためのパラメータ
この項では、SQL Developer Webを有効にするためのパラメータを示しています。
表1-6 SQL Developer Webを有効にするためのパラメータ
キー | 型 | 説明 | 例 |
---|---|---|---|
feature.sdw |
文字列 |
SQL Developer Webが有効かどうかを指定します。
デフォルト値はノート: SQL Developer Webを有効にする場合は、restEnabledSql.active の値もtrue にする必要があります。
false です。
|
true
|
restEnabledSql.active |
文字列 |
REST対応SQLが有効かどうかを指定します。 デフォルト値はfalse です。
|
true |
database.api.enabled | 文字列 | データベースAPIを有効にするかどうかを指定します。デフォルト値はfalse です。
|
true |
1.4.3.3.1.4 REST対応SQLを 有効にするためのパラメータ
この項では、REST対応SQLを有効にするためのパラメータについて説明します。
表1-7 REST対応SQLを有効にするためのパラメータ
キー | 型 | 説明 | 例 |
---|---|---|---|
restEnabledSql.active |
文字列 |
REST対応SQLが有効かどうかを指定します。 デフォルト値はfalse です。
|
true |
1.4.3.3.1.5 データベースAPIを有効化するためのパラメータ
この項では、データベースAPIを有効にするためのパラメータについて説明します。
表1-8 データベースAPIを有効化するためのパラメータ
キー | 型 | 説明 | 例 |
---|---|---|---|
database.api.enabled |
文字列 |
データベースAPIを有効にするかどうかを指定します。 デフォルト値はfalse です。
|
true |
1.4.3.3.1.6 CDBにインストールするためのパラメータ
この項では、CDBおよびそのすべてのPDBにOracle REST Data Servicesをインストールするために必要なパラメータを示します。
Oracle Database 12.xでは、CDBおよびそのすべてのPDBにOracle REST Data Servicesをインストールできます。
ノート:
db.servicename
にCDBサービス名を指定するか、db.sid
にsid
を指定します。
表1-9 CDBにインストールするためのパラメータ
キー | 型 | 説明 | 例 |
---|---|---|---|
pdb.open.asneeded |
ブール値 |
PDBのステータスがクローズまたは読取り専用である場合に、すべてのPDBを読取り/書込みモードでオープンするかどうかを指定します。この値をtrueに設定すると、次のPDBパラメータは無視されます。
|
true |
pdb.open.readwrite |
文字列 |
ステータスが読取り専用の場合に、読取り/書込みモードでオープンするPDBサービス名のリストを指定します。 |
PDB1 、PDB2 、MYPDB |
pdb.skip.closed |
ブール値 | クローズ状態のPDBをスキップするかどうかを指定します。
サポートされている値:
|
true |
pdb.skip.readonly |
ブール値 | 読取り専用ステータスのPDBをスキップするかどうかを指定します。
サポートされている値:
|
true |
pdb.exclude |
文字列 |
インストール時に除外するPDBサービス名のリストを指定します。 |
PDB3 、PDB4 、PDB_X |
関連トピック
1.4.3.3.1.7 Application Expressを 構成するためのパラメータ
この項では、Application Expressを使用するためのパラメータを示します。
表1-10 Application Expressを構成するためのパラメータ
キー | 型 | 説明 | 例 |
---|---|---|---|
plsql.gateway.add |
ブール値 |
Oracle REST Data ServicesをApplication Express用に構成するかどうかを指定します。この値をtrueに設定します。 サポートされている値:
|
true |
db.username |
文字列 |
PL/SQLゲートウェイのユーザー名を指定します。Application Expressでは、APEX_PUBLIC_USERを指定する必要があります。 |
APEX_PUBLIC_USER |
db.password |
文字列 |
APEX_PUBLIC_USERのパスワードを指定します。パスワードは、APEX_PUBLIC_USERデータベース・パスワードと一致する必要があります。 |
password |
rest.services.apex.add |
ブール値 |
Oracle REST Data ServicesをApplication Express RESTfulサービス用に構成するかどうかを指定します。 サポートされている値:
APEX RESTfulサービスを使用する場合は、この値をtrueに設定します。 |
true |
user.apex.listener.password |
文字列 |
APEX_LISTENERのパスワードを指定します。 |
password |
user.apex.restpublic.password |
文字列 |
APEX_REST_PUBLIC_USERのパスワードを指定します。 |
password |
security.externalSessionTrustedOrigins |
文字列 | PL/SQLゲートウェイまたはAPEXに対してCORSリクエストを行うために信頼されているオリジンのカンマ区切りリスト。 | http://example.com, https://example.com:8443 |
例1-1 Application ExpressおよびAPEX RESTfulサービスを構成し、スタンドアロン・モードで実行するためのパラメータ
次の例では、Oracle REST Data Servicesをインストールし、Application ExpressおよびAPEX RESTfulサービス用に構成し、httpを使用してスタンドアロン・モードで実行するためのパラメータを示します。
ノート:
パラメータ・ファイル内のパスワードは、インストール時に暗号化されます。暗号化されたパスワードはパラメータ・ファイルに格納されます。たとえば、 user.public.password=@0585904F6C9B442532D5212962835D00C8
です。
db.hostname=localhost
db.password=password
db.port=1521
db.servicename=orcl.example.com
db.username=APEX_PUBLIC_USER
plsql.gateway.add=true
rest.services.apex.add=true
rest.services.ords.add=true
schema.tablespace.default=SYSAUX
schema.tablespace.temp=TEMP
standalone.http.port=8080
standalone.mode=true
standalone.static.images=/path/to/images
standalone.use.https=false
user.apex.listener.password=password
user.apex.restpublic.password=password
user.public.password=password
user.tablespace.default=SYSAUX
user.tablespace.temp=TEMP
関連項目:
-
APEX_PUBLIC_USERの詳細は、『Oracle Application Expressインストレーション・ガイド』にある「APEX_PUBLIC_USERアカウントの構成」の項を参照してください。
-
APEX_LISTENERおよびAPEX_REST_PUBLIC_USERの詳細は、『Oracle Application Expressインストレーション・ガイド』にあるOracle REST Data Servicesを使用したRESTfulサービスの構成の項を参照してください。
1.4.3.3.1.8 スタンドアロン・モードで実行するためのパラメータ
この項では、Oracle REST Data Servicesをスタンドアロン・モードで実行するためのパラメータを示します。
表1-11 スタンドアロン・モードでOracle REST Data Servicesをインストールするためのパラメータ
キー | 型 | 説明 | 例 |
---|---|---|---|
standalone.mode |
ブール値 |
Oracle REST Data Servicesに含まれているWebアプリケーション・サーバー(Jetty)を使用するかどうかを示します。 サポートされている値:
|
true |
standalone.http.port |
数値 |
HTTPリスナー・ポートを指定します。 |
8080 |
standalone.use.https |
ブール値 |
httpsを使用するかどうかを指定します。 |
true |
standalone.https.port |
数値 |
HTTPSリスナー・ポートを指定します。 |
8443 |
standalone.ssl.host |
文字列 |
Secure Socket Layer (SSL)証明書ホスト名を指定します。httpsを使用している場合は、このオプションを指定する必要があります。 |
mysecurehost |
standalone.use.ssl.cert |
ブール値 |
SSL証明書を提供するかどうかを指定します。この値がtrueに設定されている場合、 |
true |
standalone.ssl.cert.path |
文字列 |
SSL証明書のパスを指定します。SSL証明書を提供する場合は、証明書の場所を指定する必要があります。 |
/path/to/ssl/cert |
standalone.ssl.key.path |
文字列 |
SSL証明書のキーのパスを指定します。SSL証明書を提供する場合は、証明書のキーの場所を指定する必要があります。 |
/path/to/ssl/key |
standalone.static.images |
文字列 |
Application Expressイメージの場所を指定します。Application Expressを使用している場合、Application Expressイメージの場所を指定します。 |
/path/to/apex/images |
ノート:
Microsoft Windowsシステムでは、standalone.static.images
にApplication Expressの静的イメージの場所を指定する場合、バックスラッシュ(/)をコロンの前に指定し、スラッシュをフォルダのセパレータとして使用します。例: standalone.static.images=d\:/test/apex426/apex/images/
例1-2 httpを使用してスタンドアロン・モードで実行するためのパラメータ
db.hostname=localhost
db.port=1521
db.servicename=orcl.example.com
plsql.gateway.add=false
rest.services.apex.add=false
rest.services.ords.add=true
schema.tablespace.default=SYSAUX
schema.tablespace.temp=TEMP
standalone.http.port=8080
standalone.mode=true
standalone.use.https=false
user.public.password=password
user.tablespace.default=SYSAUX
user.tablespace.temp=TEMP
例1-3 httpsを使用し、SSL証明書のパスを指定して、スタンドアロン・モードで実行するためのパラメータ
db.hostname=localhost
db.port=1521
db.servicename=orcl.example.com
plsql.gateway.add=false
rest.services.apex.add=false
rest.services.ords.add=true
schema.tablespace.default=SYSAUX
schema.tablespace.temp=TEMP
standalone.https.port=8443
standalone.mode=true
standalone.ssl.cert.path=/path/to/ssl/cert
standalone.ssl.host=mysecurehost
standalone.ssl.key.path=/path/to/ssl/key
standalone.use.https=true
standalone.use.ssl.cert=true
user.public.password=password
user.tablespace.default=SYSAUX
user.tablespace.temp=TEMP
関連トピック
1.4.3.4 パラメータ・ファイルを使用した簡易インストール
Oracle REST Data Servicesは、ユーザーが操作しなくても、簡易モードでインストールできます。
ORDSパラメータ・ファイルを使用してOracle REST Data Servicesの簡易インストールを実行できます。簡易インストールでは、必要なパラメータがORDSパラメータ・ファイルに存在しない場合、情報の入力を求めるプロンプトが表示されます。
java -jar ords.war install simple
java -jar ords.war install --parameterFile /path/to/my_params.properties simple
java -jar ords.war install
java -jar ords.war install --parameterFile /path/to/my_params.properties
java -jar ords.war
ノート:
インストール・コマンドで使用可能な追加のオプションを確認するには、オンライン・ヘルプ・コマンドjava –jar ords.war help install
を使用します。
1.4.3.5 パラメータ・ファイルを使用したサイレント・インストール
Oracle REST Data Servicesは、ユーザーが操作しなくても、サイレント・モードでインストールできます。
ORDSパラメータ・ファイルを使用してOracle REST Data Servicesのサイレント・インストールを実行できます。サイレント・インストールでは、必要なパラメータをパラメータ・ファイルに定義する必要があり、定義しないとエラーが発生します。
Oracle REST Data Servicesをサイレント・モードでインストールするためのコード・スニペットの例を次に示します。
java -jar ords.war install --silent
java-jar ords.war install --silent --parameterFile /path/to/my_params.properties
ノート:
インストール・コマンドで使用可能な追加のオプションを確認するには、オンライン・ヘルプ・コマンドjava –jar ords.war help install
を使用します。
1.4.3.5.1 サイレント・インストールに必要なパラメータ
この項では、Oracle REST Data Servicesをサイレント・モードでインストールするために必要なパラメータについて説明します。
Oracle REST Data Servicesをサイレント・モードでインストールする場合は、必須パラメータをORDSパラメータ・ファイルに定義する必要があります。
パラメータ・グループ | 必須パラメータ | 説明 |
---|---|---|
データベース接続 | パラメータのリストについては、「データベース接続のパラメータ」を参照してください。 | 基本、TNSまたはカスタムURL接続を指定します。 |
ORDSのインストール | rest.services.ords.add サポートされている値:
|
rest.services.ords.add=true の場合、追加のパラメータについては「ORDSパラメータ・ファイルで使用されるパラメータ」の項を参照してください。
|
Application ExpressまたはPL/SQL Gatewayの構成 | plsql.gateway.add サポートされている値:
|
plsql.gateway.add=true の場合、追加の必須パラメータについては「Application Expressを構成するためのパラメータ」を参照してください。
|
スタンドアロン・モードでの実行 | standalone.mode サポートされている値:
|
standalone.mode=true の場合、追加の必須パラメータについては「スタンドアロン・モードでOracle REST Data Servicesを実行するためのパラメータ」を参照してください。
|
1.4.3.6 コマンドラインからのデフォルト構成の変更
この項では、ORDSのデフォルト構成ファイルを更新する方法について説明します。
次のset propertyコマンドを使用してORDSのデフォルト構成ファイルを更新します。
$ java -jar ords.war set-property <property key> <value>
変更を有効にするには、ORDSを再起動する必要があります。
例1-4
機能の有効化の例。
次の例では、既存のdefaults.xml
ファイルのプロパティを更新してSQL Developer Webを有効にします。
$ java -jar ords.war set-property feature.sdw true
$ java -jar ords.war set-property restEnabledSql.active true
$ java -jar ords.war set-property database.api.enabled true
例1-5
次の例では、既存のdefaults.xml
ファイルのプロパティを更新してREST対応SQLを有効にします。
$ java -jar ords.war set-property restEnabledSql.active true
例1-6
次の例では、既存のdefaults.xml
ファイルのプロパティを更新してデータベースAPIを有効にします。
$ java -jar ords.war set-property database.api.enabled true
1.4.4 Oracle REST Data Servicesインストールの検証
Oracle REST Data Servicesインストールが有効であることを確認する場合は、ords.war
ファイルのあるディレクトリまたはフォルダに移動し、validate
コマンドを次の形式で入力します。
java -jar ords.war validate [--database <dbname>]
ノート:
Oracle REST Data Servicesをインストールするとき、Oracle Application Express (APEX)スキーマの検出が試行され、ビューが作成されます。このビューは、APEXスキーマ内の関連する表をOracle REST Data Servicesスキーマ内の表に結合したものです。APEXの前にOracle REST Data Servicesをインストールする場合、Oracle REST Data ServicesではAPEXスキーマが見つからないため、欠落しているAPEX表のかわりにスタブ・ビューが作成されます。
Oracle REST Data ServicesをAPEXの後にインストールし、Oracle REST Data Servicesから問い合せる必要があるAPEXオブジェクトが必ず存在しているようにすることをお薦めします。Oracle REST Data ServicesをAPEXの前にインストールする場合、validate
コマンドを使用して、Oracle REST Data ServicesによるAPEXスキーマに対する問合せを強制的に再構築します。
-database
を指定する場合、<dbname>
はOracle REST Data Services構成ファイルに格納されているプール名です。
ホスト、ポート、SIDまたはサービス名、およびORDSインストーラ権限を持つユーザーまたはSYS AS SYSDBAユーザーの名前とパスワードなど、プール名の構成からは入手できない必要な情報の入力を求められます。
ノート:
validateコマンドをCDBに対して実行すると、CDBとそのすべてのPDBが検証されます。
1.4.5 Oracle REST Data Servicesを再インストールまたはアンインストール(削除)する場合
Oracle REST Data Servicesを再インストールする場合は、まず既存のOracle REST Data Servicesをアンインストールする必要があります。そして、アンインストールの前にはOracle REST Data Servicesが停止していることを確認します。
Oracle REST Data Servicesをアンインストールすると、ORDS_METADATAスキーマ、ORDS_PUBLIC_USERユーザー、およびOracle REST Data Services関連のデータベース・オブジェクト(パブリック・シノニムを含む)がデータベースに存在している場合は、削除されます。Oracle REST Data Servicesをアンインストール(削除)するには、ords.war
ファイルのあるディレクトリまたはフォルダに移動し、次のようなuninstall
コマンドを入力します。
java -jar ords.war uninstall
uninstall
により、いくつかの必要な情報(ホスト、ポート、SIDまたはサービス名、ユーザー名、パスワード)を入力するよう求められます。
関連項目:
Oracle REST Data ServicesをCDBからアンインストールするには、「Oracle REST Data Servicesでのマルチテナント・アーキテクチャの使用」を参照してください。
1.4.6 SQL Developerを使用したOracle REST Data Servicesの管理(オプション)
この項では、Oracle SQL Developerを使用してOracle REST Data Servicesを管理する方法について説明します。
関連項目:
『Oracle SQL Developerユーザーズ・ガイド』のOracle REST Data Servicesの管理の項を参照してください。
トピック:
1.4.6.1 SQL DeveloperのOracle REST Data Services管理について
Oracle SQL Developerでは、グラフィカル・ユーザー・インタフェースを使用してOracle REST Data Servicesを管理できます。これらの管理機能をフルに活用するには、SQL Developerのリリース4.1以上を使用する必要があります。Oracle REST Data Services管理のためのSQL Developerの使用はオプションです。
グラフィカル・ユーザー・インタフェースを使用して、データベース接続、JDBC設定、URLマッピング、RESTful接続、セキュリティ(許可されたプロシージャ、ブロックされたプロシージャ、検証ファンクションおよびウイルス・スキャン)、キャッシング、事前/事後処理プロシージャ、環境、およびExcel設定を更新できます。Oracle SQL Developerでは、統計レポート、エラー・レポートおよびログも提供されます。
関連項目:
『Oracle SQL Developerユーザーズ・ガイド』のOracle REST Data Servicesの管理の項を参照してください。
1.4.6.2 管理者ユーザーの構成
SQL Developerを使用してOracle REST Data Servicesを管理する場合は、次のように管理者ユーザーを構成する必要があります。
-
次のコマンドを実行します。
java -jar ords.war user adminlistener "Listener Administrator"
-
adminlistener
ユーザーのパスワードを入力します。 -
adminlistener
ユーザーのパスワードを確認します。 -
HTTPSを使用せずにOracle REST Data Servicesを使用する場合は、「非HTTPS環境でのOAuth2の使用」のステップに従います。
Oracle REST Data Services構成の取得またはアップロード(あるいはその両方)にSQL Developerを使用する場合は、プロンプトが表示されたら、前述のリストの資格証明を入力します。
1.4.7 非HTTPS環境でOAuth2の使用
RESTfulサービスは、非公開データへのアクセスを制御するOAuth2プロトコルで保護できます。データのスヌーピングを防ぐため、OAuth2では、OAuth2認証プロセスに関与するすべてのリクエストをHTTPSを使用して転送する必要があります。Oracle REST Data Servicesのデフォルトの動作では、OAuth2関連のすべてのリクエストはHTTPSを使用して受信されたことを検証されます。HTTPを介して受信するリクエストへのサービスは拒否され、403 ForbiddenのHTTPステータス・コードが返されます。
このデフォルトの動作は、HTTPSを使用できない環境では次のようにして無効にできます。
-
Oracle REST Data Servicesの構成が保存されているフォルダを検索します。
-
defaults.xml
という名前のファイルを編集します。 -
このファイルの最後にある
</properties>
タグの直前に次の設定を追加します。<entry key="security.verifySSL">false</entry>
-
ファイルを保存します。
-
実行中なら、Oracle REST Data Servicesを再起動します。
この設定の使用は、開発またはテスト環境でのみ適切であることに注意してください。ユーザーの資格証明がクリア・テキストで渡されることになるので、本番環境でこの設定を使用するのは適切ではありません。
ノート:
Oracle REST Data Servicesは、構成の変更を行った後に再起動する必要があります。アプリケーションを再起動する方法はアプリケーション・サーバーのマニュアルを参照してください。
1.5 Oracle REST Data Servicesのデプロイ
Oracle REST Data Serviceをデプロイするには、次のいずれかのオプションを選択します。
1.5.1 スタンドアロン・モード
Oracle REST Data ServicesではJava EEアプリケーション・サーバーがサポートされていますが、スタンドアロン・モードで実行するオプションもあります。この項では、Oracle REST Data Servicesをスタンドアロン・モードで実行する方法について説明します。
ノート:
スタンドアロン・コマンドで使用可能な追加オプションを確認するには、次のヘルプ・コマンドを実行します。
java -jar ords.war help standalone
トピック:
関連トピック
1.5.1.1 スタンドアロン・モードでの起動
スタンドアロン・モードでOracle REST Data Servicesを起動するには:
1.5.1.1.1 DERへの秘密キーの変換(LinuxおよびUNIX)
通常、秘密キーおよび証明書署名リクエストを作成してから、署名証明書を取得します。秘密キーは、Oracle REST Data Servicesで適切に読み取れるようにDERに変換する必要があります。
たとえば、OpenSSLツールを使用して次のいずれかのようなコマンドで、元の秘密キーを作成したとします。
openssl req -new -newkey rsa:2048 -nodes -keyout yourdomain.key -out yourdomain.csr
または
openssl genrsa -out private.em 2048
この場合、次のようなコマンドを実行して秘密キーを変換し、暗号化を解除する必要があります。openssl pkcs8 -topk8 -inform PEM -outform DER -in yourdomain.key -out yourdomain.der -nocrypt
openssl pkcs8 -topk8 -inform PEM -outform DER -in yourdomain.key -out yourdomain.der -nocrypt
そのようにすると、Oracle REST Data Servicesでプロンプトが表示されたときにyourdomain.der
へのパスを含めることも、conf/ords/standalone/standalone.properties
の次のエントリを変更することもできます。
ssl.cert=<path to yourdomain.crt> ssl.cert.key=<path to yourdomain.der> ssl.host=yourdomain
また、jetty.secure.port
が必ず設定されます。
1.5.1.2 スタンドアロン・モードのサーバーの停止
スタンドアロン・モードのOracle REST Data Servicesサーバーを停止するには、コマンド・プロンプトで[Ctrl+C]を押します。
1.5.1.3 非Application Expressの静的リソースのドキュメント・ルートの構成
Application Expressの静的リソースで予約された/i
フォルダ以外の静的リソースをデプロイするためにスタンドアロン・モードのドキュメント・ルートを構成できます。
構成するには、次の例に示すように、--doc-root
パラメータをスタンドアロン・モード・コマンドで指定します。
java -jar ords.war standalone --doc-root /var/www/html
前述の例では、http://
server:port
/
の下の/var/www/html
にあるすべてのリソースを使用できるようにします。たとえば、ファイル/var/www/html/hello.txt
が存在する場合、http://
server:port
/hello.txt
でアクセス可能です。
--doc-root
に指定された値は、standalone.doc.root
プロパティの${config.dir}/ords/standalone/standalone.properties
に格納されます。カスタム・ドキュメント・ルートが--doc-root
を使用して指定されていない場合、${config.dir}/ords/standalone/doc_root
のデフォルトのdoc-root
値が使用されます。このフォルダに格納されているすべてのフォルダはルート・コンテキストで使用できます。
このアプローチには、次の機能および考慮事項があります。
-
HTMLリソースはファイル拡張子なしでアドレス可能です。たとえば、
hello.html
という名前のファイルがドキュメント・ルートに存在する場合、URIhttp://
server:port
/hello
でアクセスできます。 -
ファイル拡張子ありでHTMLリソースにアドレスしようとすると、ファイル拡張子なしの場所にリダイレクトされます。たとえば、URI
http://
server:port
/hello.html
にアクセスしようとすると、クライアントはhttp://
server:port
/hello
にリダイレクトされます。通常のプラクティスはHTMLリソースにファイル拡張子なしで使用することであるため、この機能はそのプラクティスを手助けし、さらにリダイレクトはファイル拡張子ありでアドレスされたリソースを扱います。
-
フォルダの索引ページがサポートされます。フォルダに
index.html
またはindex.htm
という名前のファイルがある場合、そのファイルはフォルダの索引ページとして使用されます。たとえば、/var/www/html
に/abc/xyz/index.html
がある場合、http://
server:port
/abc/xyz/
にアクセスすると、index.html
の内容が表示されます。 -
末尾にスラッシュなしでフォルダをアドレス入力すると、末尾にスラッシュありのURIにリダイレクトされます。たとえば、クライアントが
http://
server:port
/abc/xyz
にアクセスした場合、サーバーはhttp://
server:port
/abc/xyz/
へのリダイレクトを発行します。 -
リソースは、ファイルの修正スタンプに基づき弱いetagと、リソースを1時間キャッシュするキャッシュ制御ヘッダー付きで生成されます。
1.5.2 Oracle WebLogic Server
この項では、Oracle WebLogic ServerにOracle REST Data Servicesをデプロイする方法について説明します。Oracle WebLogic Serverのインストール・プロセスを完了し、Oracle WebLogic Serverに精通した読者を前提としています。ドメイン、管理対象サーバー、デプロイ、セキュリティ、ユーザーおよびロールに不慣れな場合は、Oracle WebLogic Serverのドキュメントを参照してください。
トピック:
1.5.2.1 Oracle WebLogic Serverについて
Oracle WebLogic ServerはOracle Technology Networkからダウンロードできます。
Oracle WebLogic Serverのインストールについてさらに学習するには、『Oracle Fusion Middleware Oracle WebLogic Serverインストレーション・スタート・ガイド』および『Oracle Fusion Middleware Oracle WebLogic Serverインストレーション・ガイド』を参照してください。
1.5.2.2 Oracle Application Expressイメージの構成
Oracle Application Expressを使用している場合、Oracle Application Expressを参照するためにWebアーカイブ(イメージ・ファイル)を作成する必要があります。ただし、Oracle Application Expressを使用していない場合、Oracle Application Expressイメージを構成することに関するこの項の以降の手順をスキップできます。
作業を開始する前に、Oracle Application Expressのイメージ・ファイルを参照するWebアーカイブ(WAR)ファイルを作成する必要があります。i.war
という名前のWebアーカイブ・ファイルを作成するには、次のようにstaticコマンドを使用します。
java -jar ords.war static <apex directory>\images
説明:
-
<
apex directory>
は、Oracle Application Expressディレクトリの場所です。
このコマンドにより、ords.war
ファイルに含まれるstatic
コマンドが実行されます。これにより、Application Expressの静的イメージがi.war
という名前のアーカイブ・ファイルにパッケージ化されます。
作成されるイメージのWARには静的リソースは含まれず、そのかわりに静的リソースが保存されている場所が参照されます。このため、WARがデプロイされるサーバー上の指定したパスで静的リソースが利用可能である必要があります。
ヒント:
static
コマンドのすべてのオプションを確認するには、java -jar ords.war help static
を使用します。
i.war
ファイルは、次のステップでWebLogicへのデプロイに使用します。
-
管理サーバー・コンソールの起動
-
Oracle WebLogic Serverデプロイのインストール
-
HTTPのBasicチャレンジを正しく処理するためのWebLogicの構成
1.5.2.4 Oracle WebLogic ServerでのORDSのデプロイ
ヒント:
この作業を開始する前に、Oracle REST Data Servicesのファイルであるords.war
およびi.war
が使用可能になっている必要があります。
デプロイするには、次の手順を実行します。
-
WebLogic Serverのホームページに移動します。「ドメイン構成」の下で、「デプロイメント」を選択します。
「デプロイメントの概要」が表示されます。
-
「インストール」をクリックします。
-
ords.war
ファイルの場所を指定し、「次」をクリックします。ords.war
ファイルは、Oracle REST Data ServicesのZIPファイルを解凍したフォルダにあります。ヒント:
WebLogic Serverは、WARアーカイブのファイル名からコンテキスト・ルートを決定します。下位互換を維持する必要がある場合は、URLがhttp://server/ords/...ではなくhttp://server/apex/...という形式になるように、デプロイ前に
ords.war
という名前をapex.war
に変更する必要があります。アプリケーション・インストール・アシスタントが表示されます。
-
「このデプロイメントをアプリケーションとしてインストールする」を選択して「次へ」をクリックします。
-
アプリケーションまたはモジュールのデプロイ先とするサーバーまたはクラスタを選択して、「次」をクリックします。
ヒント:
追加の管理対象サーバーまたはクラスタを作成していない場合、このアシスタント・ページは表示されません。
-
「オプション設定」では、次のように指定します。
-
名前 - 次を入力します。
ords
-
セキュリティ - 次を選択します。
カスタム・ロール: 管理コンソール内に定義されたロールを使用します。デプロイメント記述子内に定義されたポリシーを使用します。
-
ソースのアクセス可能性 - 次を選択します。
デプロイメントのターゲットに定義されるデフォルトを使用
-
-
「次へ」をクリックします。
概要ページが表示されます。
-
「追加構成」の下で、次のいずれかを選択します。
-
はい、デプロイメントの構成画面に移動します。 - 構成ページが表示されます。
-
いいえ、後で構成を確認します。 - 「デプロイメントのサマリー」ページに戻ります。
-
-
指定した構成設定の概要を確認します。
-
「終了」をクリックします。
-
前述のステップを繰り返して
i.war
ファイルをデプロイします。オプション設定では、次のように指定します。
-
名前 - 次を入力します。
i
-
セキュリティ - 次を選択します。
カスタム・ロール: 管理コンソール内に定義されたロールを使用します。デプロイメント記述子内に定義されたポリシーを使用します。
-
ソースのアクセス可能性 - 次を選択します。
デプロイメントのターゲットに定義されるデフォルトを使用
-
-
ドメインが本番モードの場合、「チェンジ・センター」で「変更のアクティブ化」をクリックします。
1.5.2.5 HTTPのBasicチャレンジを正しく処理するためのWebLogicの構成
デフォルトでは、WebLogic Serverにより、すべてのHTTP Basic認証のチャレンジのインターセプトが試行されます。Oracle REST Data Servicesを正常に機能させるには、このデフォルトの動作を無効にする必要があります。そのためには、enforce-valid-basic-auth-credentials
フラグを更新します。WebLogic Server管理コンソールでは、enforce-valid-basic-auth-credentials
設定は表示されません。WebLogic Scripting Tool (WLST)コマンド使用して、実行中のサーバーの値を確認および編集できます。
次のWLSTコマンドによりドメイン設定が表示されます。
connect('weblogic','weblogic','t3://localhost:7001')
cd('SecurityConfiguration')
cd('mydomain')
ls()
ドメイン設定が表示されたら、次のエントリを含めます。
-r-- EnforceValidBasicAuthCredentials true
次に、このエントリをfalse
に設定する必要があります。
エントリをfalse
に設定するには、次のようにWLSTコマンドを使用します。
connect('weblogic', 'weblogic', 't3://localhost:7001')
edit()
startEdit()
cd('SecurityConfiguration')
cd('mydomain')
set('EnforceValidBasicAuthCredentials','false')
save()
activate()
disconnect()
exit()
ノート:
新しい設定を有効にするには、WebLogic Serverを再起動する必要があります。-
weblogic
は管理権限を持つWebLogicユーザーです -
weblogic
はパスワードです -
mydomain
はドメインです -
AdminServerは
ローカルホスト
およびポート7001
上で実行されています
関連トピック
1.5.3 Apache Tomcat
この項では、Apache TomcatにOracle REST Data Servicesをデプロイする方法について説明します。
トピック:
1.5.3.1 Apache Tomcatについて
ヒント:
この項は、Apache Tomcatのインストール・プロセスを完了し、Apache Tomcatに精通した読者を前提としています。ドメイン、サーバー、アプリケーション、セキュリティ、ユーザーおよびロールに不慣れな場合は、Apache Tomcatのドキュメントを参照してください。
Apache Tomcatは次のURLからダウンロードできます。
関連項目:
1.5.3.2 Oracle Application Expressイメージの構成
Oracle Application Expressを使用している場合、Oracle Application Expressを参照するためにWebアーカイブ(イメージ・ファイル)を作成する必要があります。ただし、Oracle Application Expressを使用していない場合、Oracle Application Expressイメージを構成することに関するこの項の以降の手順をスキップできます。
Apache Tomcat上でOracle Application Expressイメージを構成するには、次のようにします。
-
<apex directory>
/images
フォルダのコンテンツを<Tomcat directory>
/webapps/i/
にコピーします。説明:
-
<apex directory>
は、Oracle Application Expressディストリビューションのディレクトリの場所です。 -
<Tomcat directory>
は、Apache Tomcatがインストールされているフォルダです。
-
1.5.4 Oracle Cloud Infrastructure
クラウド・ユーザーである場合は、高可用性を備えたOracle REST Data ServicesをOracle Cloud Infrastructureにデプロイできます。
1.5.4.1 Oracle Cloud Infrastructureについて
Oracle Cloud Infrastructure (OCI)は、可用性の高いホスト環境で幅広いアプリケーションおよびサービスを構築および実行できる、補完的なクラウド・サービスのセットです。Oracle Cloud Infrastructureは、オンプレミス・ネットワークから安全にアクセスできる柔軟なオーバーレイ仮想ネットワークで、高パフォーマンスなコンピュート機能(物理ハードウェア・インスタンスとして)とストレージ容量を提供します。
1.5.4.2 Oracle Cloud Infrastructureでの高可用性のためのORDSの構成
Oracle Cloud InfrastructureでのORDSの高可用性のために、次の構成を使用することを選択できます。お客様の要件は、この項で説明する構成とは異なる場合があります。
- VCNを作成するときには、必要なCIDRブロックの数を決定し、VCN内のサブネットにアタッチする予定のリソースの数に基づいて各ブロックのサイズを決定します。サブネットを設計するときには、トラフィック・フローおよびセキュリティ要件を考慮してください。
- Oracle Cloud Guardを使用して、Oracle Cloud Infrastructure内のリソースのセキュリティを事前対策的にモニターおよびメンテナンスします。
- 本番アプリケーションの場合、Oracleデータベース・インスタンスは、OCI内のOracle Maximum Availability Architecture (MAA)デプロイメント・モデルに準拠している必要があります。
- Oracle DatabaseとともにRACを使用する場合は、ORDSで使用されるデータベース接続情報が個々のノードではなくSCANリスナーを指していることを確認してください。
- 上限と下限を指定してロード・バランサを作成すると、受信するリクエストの数に基づいたスケーリングに役立ちます。最小で10mbps、最大で8000mbpsにできます。
1.5.4.3 高可用性を備えたORDSをOracle Cloud Infrastructureにデプロイする利点
Oracle Cloud InfrastructureにORDSをデプロイする利点を次に示します。
- コンピュート、ロード・バランサおよびデータベース・クラウド・インスタンスはすべて、負荷の増大に対応するようにスケーリングできます。コンピュート層またはORDS層を使用して、追加のインスタンスをすばやく作成しロード・バランサ構成に追加できます。Exadata Cloud Serviceの場合、X8Mプラットフォームでは、CPUをスケーリングするのみでなく、ノードをRACクラスタに追加してコンピューティング能力を高めることもできます。
- サブネットおよびNSGのイングレス/エグレスで非常に詳細なルールが使用されるようになります。コンピュート層またはデータベース層にアクセスするには、Bastion as a Serviceを使用します。これにより、認可ユーザーのみがこれらのインスタンスにアクセスできます。これは、公衆インターネットにSSHポートを公開するよりはるかに安全な方法でもあります。
- データベース・デプロイメントについては、Oracle Maximum Availability Architecture (MAA)ガイドに従ってください。
- 各コンピュート層および各データベース層の自動スケーリングおよび一般的スケーリングは、コストの抑制に役立ちます。CPU、メモリーまたはインスタンスの余剰や無駄がなくなり、支払いが必要なのは使用分のみとなります。柔軟なロード・バランサの使用によっても、コストを抑制できます。
1.6 ORDSのモニタリング
標準のJavaランタイム環境診断およびモニタリング・ツールを使用して、Apache Tomcat、WebLogic Serverまたはスタンドアロン・モードで実行されているORDSインスタンスの状態に関するインサイトを取得します。これらのツールは、メモリー使用率、CPU使用率、スタック・スレッドおよびその他のリソースを追跡します。ORDSでは、ORDSインスタンスAPIを介して追加のインサイトが提供されます。インスタンスAPIを介して得られるメトリックを使用すると、データベース・プールのステータス(有効または無効)を確認し、プールの使用状況を測定できます。これは、システムの実際の負荷を判断し、将来の構成変更を知らせるために役立ちます。
トピック:
1.6.1 ORDSインスタンスAPIの有効化
この項では、ORDSインスタンスAPIを有効化する方法について説明します。
instance.api.enabled
プロパティをtrueに設定します。java -jar ords.war set-property instance.api.enabled true
- ORDSを再起動します。
1.6.2 ORDSインスタンスAPIを使用するための認可
ORDSインスタンスAPIを使用するには、システム管理者ロールが必要です。本番環境では、このロールを持つユーザーを中間層を介して構成することをお薦めします。
1.6.3 APIドキュメント
ORDSインスタンスAPIサービスのOpenAPI記述は、http://<server>/ords/_/instance-api/stable/metadata-catalog/openapi.json
で入手できます。
1.6.4 インスタンスAPIの使用
ORDSインスタンスAPIサービスでは、データベースへのアクセスを提供せず、クライアントによる認証用のデータベース・ユーザーの指定も必要ありません。ただし、ORDSインスタンスはデータベース・プールに関する情報を返します。インスタンスAPIは基本的なヘルス・チェック・サービスとして使用できます。有効なデータベース・プールと無効なデータベース・プールの数の概要を取得するには、/ords/_/instance-api/stable/status
にGETリクエストを送信します。例: curl --user sysadmin:oracle http://<server>/ords/_/instance-api/stable/status
。このサービスは、有効および無効なプールの数を返します。また、データベース・プール・キャッシュの詳細を含む追加情報へのリンクも返します。
ORDSは、単一インスタンスとして、またはクラスタにデプロイできます。クラスタでは、1つのインスタンスのデータベース・プール統計が他のインスタンスと異なる可能性があるため、各インスタンスを直接アドレス指定して、その特定のインスタンスに関する特定の情報を取得する必要があります。ただし、ロード・バランサがラウンドロビン・ベースで各インスタンスにルーティングする場合(推奨)、すべてのインスタンスが同様のプール統計を持つことになります。
1.7 Oracle REST Data Servicesのアップグレード
新しいリリースのOracle REST Data Servicesにアップグレードする場合は、次のようにする必要があります。
-
Oracle REST Data Servicesインスタンスを停止します。
-
アプリケーション・サーバー(Oracle WebLogic ServerまたはApache Tomcatなど)上でOracle REST Data Servicesを実行している場合は、Oracle REST Data Servicesを停止します。
-
Oracle REST Data Servicesをスタンドアロン・モードで実行している場合は、「スタンドアロン・モードのサーバーの停止」を参照してください。
-
-
新しいOracle REST Data Servicesリリース・ディストリビューションを解凍したフォルダに移動します。
-
コマンドラインに次のコマンドを入力します。
java -jar ords.war install advanced
または
java -jar ords.war
-
構成フォルダの入力を求められたら、Oracle REST Data Servicesの構成ファイルが格納されている構成フォルダを使用します。(構成場所は、
ords.war
ファイルに収録されます。)-
構成ファイルが格納されている既存のOracle REST Data Servicesの構成フォルダを指定すると、Oracle REST Data Servicesでは、構成フォルダ内に定義されている各データベースに接続して、インストール済バージョンをチェックしようとします。
-
存在しないOracle REST Data Servicesの構成フォルダを指定すると、データベース接続情報、ORDS_PUBLIC_USER資格証明およびその他の構成情報の入力を求められます。Oracle REST Data Servicesでは、そのデータベースに接続してインストール済バージョンをチェックしようとします。
-
Oracle REST Data Servicesによるインストール済バージョンのチェックでは、データベースにすでにインストールされているバージョンが3.0.nより前かどうかに応じて、次のように処理が行われます。
-
インストール済バージョンが以前の3.0.nバージョンのOracle REST Data Servicesの場合は、Oracle REST Data Servicesでインプレース・アップグレードを適用できるように、ユーザー名とパスワード(ORDSインストーラ権限またはSYS AS SYSDBAを持つユーザー)の入力を求められます。インプレース・アップグレードでは、既存のインストールが変更され、更新されたスキーマ・オブジェクトおよびパッケージが追加されます。Oracle REST Data Servicesのスキーマに格納されている既存のメタデータは元の状態のままになります。
-
Oracle REST Data Servicesがデータベースにまだインストールされていない場合(またはリリース2.0.nからアップグレードしている場合)は、Oracle REST Data Servicesでインストールを実行できるようにユーザー名とパスワード(ORDSインストーラ権限またはSYS AS SYSDBAを持つユーザー)の入力だけでなく、
ORDS_METADATA
スキーマのデフォルトの表領域および一時表領域とORDS_PUBLIC_USER
の入力も求められます。
アップグレードまたはインストールが完了すると、ords.war
ファイルをアプリケーション・サーバーに再度デプロイすることも、スタンドアロン・モードでOracle REST Data Servicesを起動することもできます。
1.8 Bequeath接続を使用したOracle REST Data Servicesのインストール、アップグレード、検証またはアンインストール
Bequeath接続を使用して、Oracle REST Data Servicesのインストール、アップグレード、検証またはアンインストールを実行できます。インストーラからは、操作のSYSユーザー名とパスワードの入力を求められません。
パラメータ・ファイルに次のプロパティを追加します: bequeath.connect=true
Oracle REST Data Servicesのインストール、検証またはアンインストールへのBequeath接続の使用は、Oracle Databaseリリース12の場合はLinuxおよびWindowsシステムでサポートされていますが、Oracle Databaseリリース11の場合はLinuxシステムでのみサポートされています。
使用するコマンドは、DBAグループのメンバーであるオペレーティング・システム・ユーザーが実行する必要があります。Oracle REST Data Servicesのインストールの例を次に示します。
java -jar ords.war
Linuxを使用したBequeath接続
Linuxシステムでは、Bequeath接続を使用するように次の環境変数を設定する必要があります。
-
ORACLE_HOME
-
ORACLE_SID
-
LD_LIBRARY_PATH (
ORACLE_HOME/lib
を指すため)
Oracle Databaseリリース11 (リリース12ではなく)の場合、オプション-DuseOracleHome=true
を指定する必要があります。LinuxシステムでのOracle REST Data Servicesのインストールの例を次に示します。
-
Oracle Databaseリリース11の場合:
java -DuseOracleHome=true -jar ords.war
-
Oracle Databaseリリース12の場合:
java -jar ords.war
1.9 Oracle Data Guardで保護されているユーザーにアクセスするためのOracle REST Data Servicesの認可
Oracle Data Vault Realmで保護されているデータベース・スキーマ・オブジェクトにアクセスするには、Oracle REST Data Services Publicユーザーにプロキシ・ユーザー認可を付与する必要があります。
ORDS_PUBLIC_USER
がデータベースのHR
ユーザーのプロキシとして動作することを認可します。begin
DBMS_MACADM.AUTHORIZE_PROXY_USER('ORDS_PUBLIC_USER','HR');
end;
/