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.p12とcwallet.ssoを配置します。
$ sftp -P
2222 oracle@localhost
sftp> mkdir wallet
sftp> cd
wallet
sftp>
put ewallet.p12
sftp>
put cwallet.sso
sftp>
exit;
上記コマンドは、sftpを使った例になります。他のツールを使用する場合は、それぞれツールにあった方法に読み替えてください。
ホストPCでブラウザを起動し、
へ接続します。ログイン画面のページの下部にあるTasksのAdministrationを選択して、管理ワークスペースにログインするか、ワークスペースにINTERNALを指定して、直接、管理ワークスペースにログインします。ユーザー名はadmin、パスワードはoracleです。
ログインすると、管理ワークスペースの画面が表示されます。
Manage
InstanceのInstance
Settingsからウォレットの設定を行います。
Wallet Pathとして、以下を設定します。
Apply
Changesをクリックして、ウォレットの設定は完了です。
Oracle APEXのインスタンスがファイアウォール内に設置されている場合、ファイアウォールの外にあるサーバーをRESTで呼び出すには、プロキシを通す必要があります。Manage InstanceのSecurityの項目で、インスタンス全体で有効になるプロキシの設定ができます。
Instance
Proxyの項目にプロキシ・サーバーを入力すると、Instance No Proxy Domainsの項目が現れ、対象外とするドメインの設定を追加できます。
Apply
Changesを実行すると、このAPEXで発行されるRESTコールがプロキシ・サーバーを利用するようになります。プロキシはインスタンス全体だけでなく、アプリケーション毎にも設定可能です。Application PropertiesのPropertiesにProxy Server,
No Proxy Domainsの設定が含まれます。