更新: 2026年1月28日
Oracle Database 19cおよびOracle AI Database 26aiの両方で、オペレーティング・システムの証明書ストアを参照できるようになりました。オペレーティング・システムの証明書ストアを参照するには、UTL_HTTP.SET_WALLETの引数pathにsystem:を指定します。
Oracle APEX 24.1より、インスタンスの設定に含まれるウォレット・パスが無指定の場合、system:を参照するようになりました。
ウォレットの作成手順
RHEL8/9系のLinuxにパッケージca-certificatesがインストールされていると、信頼できるCA証明書が/etc/pki/tls/cert.pemとして配置されています。このファイルを元にOracleのウォレットを作成します。
[oracle@apex-arm ~]$ cd $HOME
[oracle@apex-arm ~]$ . oraenv
ORACLE_SID = [oracle] ? FREE
The Oracle base has been set to /opt/oracle
[oracle@apex-arm ~]$
sh split_cert.sh
[oracle@apex-arm ~]$ sh split_cert.sh
[oracle@apex-arm ~]$ ls certs
cert001.cer cert026.cer cert051.cer cert076.cer cert101.cer cert126.cer
cert002.cer cert027.cer cert052.cer cert077.cer cert102.cer cert127.cer
cert003.cer cert028.cer cert053.cer cert078.cer cert103.cer cert128.cer
cert004.cer cert029.cer cert054.cer cert079.cer cert104.cer cert129.cer
cert005.cer cert030.cer cert055.cer cert080.cer cert105.cer cert130.cer
cert006.cer cert031.cer cert056.cer cert081.cer cert106.cer cert131.cer
cert007.cer cert032.cer cert057.cer cert082.cer cert107.cer cert132.cer
cert008.cer cert033.cer cert058.cer cert083.cer cert108.cer cert133.cer
cert009.cer cert034.cer cert059.cer cert084.cer cert109.cer cert134.cer
cert010.cer cert035.cer cert060.cer cert085.cer cert110.cer cert135.cer
cert011.cer cert036.cer cert061.cer cert086.cer cert111.cer cert136.cer
cert012.cer cert037.cer cert062.cer cert087.cer cert112.cer cert137.cer
cert013.cer cert038.cer cert063.cer cert088.cer cert113.cer cert138.cer
cert014.cer cert039.cer cert064.cer cert089.cer cert114.cer cert139.cer
cert015.cer cert040.cer cert065.cer cert090.cer cert115.cer cert140.cer
cert016.cer cert041.cer cert066.cer cert091.cer cert116.cer cert141.cer
cert017.cer cert042.cer cert067.cer cert092.cer cert117.cer cert142.cer
cert018.cer cert043.cer cert068.cer cert093.cer cert118.cer cert143.cer
cert019.cer cert044.cer cert069.cer cert094.cer cert119.cer cert144.cer
cert020.cer cert045.cer cert070.cer cert095.cer cert120.cer cert145.cer
cert021.cer cert046.cer cert071.cer cert096.cer cert121.cer cert146.cer
cert022.cer cert047.cer cert072.cer cert097.cer cert122.cer
cert023.cer cert048.cer cert073.cer cert098.cer cert123.cer
cert024.cer cert049.cer cert074.cer cert099.cer cert124.cer
cert025.cer cert050.cer cert075.cer cert100.cer cert125.cer
[oracle@apex-arm ~]$
[oracle@apex-arm ~]$ sh create_wallet.sh
Oracle PKI Tool Release 23.0.0.0.0 - Production
Version 23.0.0.0.0
Copyright (c) 2004, 2025, Oracle and/or its affiliates. All rights reserved.
Operation is successfully completed.
Oracle PKI Tool Release 23.0.0.0.0 - Production
Version 23.0.0.0.0
Copyright (c) 2004, 2025, Oracle and/or its affiliates. All rights reserved.
Operation is successfully completed.
Oracle PKI Tool Release 23.0.0.0.0 - Production
Version 23.0.0.0.0
Copyright (c) 2004, 2025, Oracle and/or its affiliates. All rights reserved.
Operation is successfully completed.
Oracle PKI Tool Release 23.0.0.0.0 - Production
Version 23.0.0.0.0
Copyright (c) 2004, 2025, Oracle and/or its affiliates. All rights reserved.
[中略]
Operation is successfully completed.
Oracle PKI Tool Release 23.0.0.0.0 - Production
Version 23.0.0.0.0
Copyright (c) 2004, 2025, Oracle and/or its affiliates. All rights reserved.
Operation is successfully completed.
[oracle@apex-arm ~]$
[oracle@apex0413 ~]$ sh create_wallet.sh
Oracle PKI Tool Release 23.0.0.0.0 - Production
Version 23.0.0.0.0
Copyright (c) 2004, 2024, Oracle and/or its affiliates. All rights reserved.
Could not install trusted cert atcerts/cert52.cer
PKI-04003: The trusted certificate is already present in the wallet.
[oracle@apex0413 ~]$
APEX_WEB_SERVICE.MAKE_REST_REQUESTを使用してREST APIを呼び出すには、ルート認証局(CA)の証明書を含むウォレットの指定が必要です。通常はOracle APEXのインスタンスにウォレットを設定することにより、APIでの指定を省略できるようにします。
Oracle APEXの管理サービスにサインインし、インスタンスの管理のインスタンスの設定を開きます。
インスタンスの設定にウォレットのセクションがあります。
ウォレット・パスにルート認証局の証明書がロードされたウォレットのファイルが含まれるディレクトリ指定します。今回は/home/oracle/wallet以下にウォレットのファイルを配置しています。
ウォレット・パスの指定は以下になります。
file:///home/oracle/wallet
ウォレットに含まれる証明書はルート認証局のものだけなので、すべて公開されている情報です。そのため、ウォレットをパスワードで保護する必要はありません。
ウォレットは自動ログイン・ウォレットとして作成するので、この項目にチェックを入れます。
以上でOracle APEX側の設定は完了です。


