HTTPSでのアクセス許可

Oracle APEから、RESTサービスにてhttpsのサイトを呼び出すには、Oracleウォレットの設定が必要になります。Oracle Technology Network Developer Dayのハンズオン用に用意されて仮想マシンに実装されているOracle APEXの使用を前提として、Oracleウォレットを設定する手順を説明します。

ウォレットをダウンロードする

以下の記事にOracleウォレットの作成について、詳細が説明されています。

https://apex.oracle.com/pls/apex/germancommunities/apexcommunity/tipp/6121/index-en.html

上記の手順に沿った上で、一般的に使われているルート証明書をインポートしたウォレットが作成済みで、以下よりダウンロード可能です。これらをダウンロードして、APEXで使用できるような設定を行います。

https://ujnak.github.io/APEX/wallet/ewallet.p12

https://ujnak.github.io/APEX/wallet/cwallet.sso

ウォレットを仮想マシン内に配置する

ダウンロードしたウォレット・ファイルをAPEXが動作している仮想マシン内に配置します。Developer Dayの仮想マシンには、ホストPCよりポート番号2222番にてSSH接続が可能になっています。ログインするユーザーはoracle、パスワードはoracleです。ホームディレクトリ以下にwalletというディレクトリを作成し、その下にewallet.p12cwallet.ssoを配置します。

$ sftp -P 2222 oracle@localhost

sftp> mkdir wallet

sftp> cd wallet

sftp> put ewallet.p12

sftp> put cwallet.sso

sftp> exit;

上記コマンドは、sftpを使った例になります。他のツールを使用する場合は、それぞれツールにあった方法に読み替えてください。

APEXの管理ワークスペースにログインする

ホストPCでブラウザを起動し、

http://localhost:8080/

へ接続します。ログイン画面のページの下部にあるTasksAdministrationを選択して、管理ワークスペースにログインするか、ワークスペースにINTERNALを指定して、直接、管理ワークスペースにログインします。ユーザー名はadmin、パスワードはoracleです。

ログインすると、管理ワークスペースの画面が表示されます。

ウォレットを設定する

Manage InstanceInstance Settingsからウォレットの設定を行います。

Wallet Pathとして、以下を設定します。

file:///home/oracle/wallet

Apply Changesをクリックして、ウォレットの設定は完了です。

補足:プロキシを設定する

Oracle APEXのインスタンスがファイアウォール内に設置されている場合、ファイアウォールの外にあるサーバーをRESTで呼び出すには、プロキシを通す必要があります。Manage InstanceSecurityの項目で、インスタンス全体で有効になるプロキシの設定ができます。

Instance Proxyの項目にプロキシ・サーバーを入力すると、Instance No Proxy Domainsの項目が現れ、対象外とするドメインの設定を追加できます。

Apply Changesを実行すると、このAPEXで発行されるRESTコールがプロキシ・サーバーを利用するようになります。プロキシはインスタンス全体だけでなく、アプリケーション毎にも設定可能です。Application PropertiesPropertiesProxy Server, No Proxy Domainsの設定が含まれます。