Node.jsとその他のスクリプト言語の接続(mTLS)
Python、Node.js、PHP、Ruby、R、Go、Perlなど、様々な言語でプログラムを使用して、mTLS (ウォレットを使用)を使用してAutonomous AI Databaseインスタンスに接続できます。セキュリティはクライアント資格証明を使用して適用されます。
これらのスクリプト言語には、Oracle Call Interfaceライブラリを使用するデータベース・アクセスAPIまたはドライバが含まれます。
次のクライアント・バージョンを使用して接続している場合、Oracle Call Interface (OCI)クライアントはウォレットでのmTLS認証をサポートします。
-
Oracle Instant Client/Oracle Database Client: 18.19 (以上)、19.2 (以上)、または21 (ベース・リリース以上)
ウォレットを使用しないNode.jsまたはその他のスクリプト言語の接続の詳細は、Node.jsとWalletを使用しないその他のスクリプト言語の接続を参照してください。
詳細については、次のビデオを参照してください。
言語ドライバとクライアント・ライブラリのインストール
スクリプト言語からAutonomous AI Databaseに接続するには、まず次のように言語ドライバとクライアント・ライブラリをインストールします:
-
Oracle Instant Client/Oracle Database Client: 18.19 (以上)、19.2 (以上)、または21 (ベース・リリース以上)をインストールします。
ほとんどのアプリケーションでは、Instant Clientで問題ありません。Instant Clientをインストールするには、次を実行します:
-
Instant Clientのダウンロード・ページから目的のアーキテクチャを選択し、(ダウンロード・ページで入手可能な) Basicパッケージをダウンロードします: Oracle Instant Client Downloads。
または、Basic Lightのグローバリゼーション制限が用途に合っていれば、目的のアーキテクチャのダウンロード・ページからBasic Lightパッケージをダウンロードします。
-
ソース・コードから言語APIまたはドライバを構築する場合は、Instant Client SDKもダウンロードする必要があります: Oracle Instant Client
-
選択したベース・パッケージを解凍します。たとえば、
C:\instantclient_12_2または/home/myuser/instantclient_18_5に解凍します。SDKもダウンロードする場合は、それを同じディレクトリに解凍します。 -
Windowsでは、「環境変数」ペインの「システム変数」セクションで、
PATH変数にパスを追加します(たとえば、C:\instantclient_12_2を追加します)。Windows 8では、「コントロール パネル」→「システム」→「システムの詳細設定」→「環境変数」に移動して、PATH変数設定領域にアクセスします。複数のバージョンのOracleライブラリがインストールされている場合は、必ず新しいディレクトリをパスの最初に配置してください。 -
Windows以外のプラットフォームでは、シンボリック・リンクが存在していなければ作成します。たとえば:
cd /home/myuser/instantclient_18_5 ln -s libclntsh.so.18.1 libclntsh.soシステムに影響を受けるOracleソフトウェアが他になければ、Instant Clientをランタイム・リンク・パスに追加します。たとえば:
sudo sh -c "echo /home/myuser/instantclient_18_5 > /etc/ld.so.conf.d/oic.conf" sudo ldconfigまたは、アプリケーションを実行する各シェル内にライブラリ・パスを設定します。たとえば:
export LD_LIBRARY_PATH=/home/myuser/instantclient_18_5:$LD_LIBRARY_PATHノート
Linux Instant Clientのダウンロード・ファイルは、.zipファイルまたは.rpmファイルとして入手できます。いずれのバージョンも使用できます。
-
-
Oracle Databaseに関連する言語ドライバをインストールします:
-
Node.js: Node.js用のnode-oracledbをインストールするには、次のページの手順を使用します: node-oracledbのインストール。
-
ROracle: R用のROracleをインストールするには、次のページの手順を使用します: ROracle
-
PHP: PHP用のPHP OCI8をインストールするには、次のページの手順を使用します: OCI8を使用したPHPの構成。
Windows DLLはhttp://php.net/downloads.phpで入手可能です。また、PECL oci8からも入手可能です。
-
PHP PDO_OCI: PHP用のPHP PDO_OCIをインストールするには、次のページの手順を使用します: Oracle Functions (PDO_OCI)。
Windows DLLは、PHPに含まれているhttp://php.net/downloads.phpで入手可能です。
-
Ruby: Ruby用のruby-oci8をインストールするには、次のページの手順を使用します: Oracle Instant Clientのインストール
-
Perl用のDBD: Perl用のDBD::Oracleをインストールするには、
ORACLE_HOMEおよびライブラリ検索パス(Instant ClientディレクトリへのLD_LIBRARY_PATHやPATHなど)を設定し、次のページの手順を使用します: DBD-Oracleのインストール。 -
Python: Pythonアプリケーションを接続する手順は、PythonアプリケーションとWallet (mTLS)の接続を参照してください
-
Oracle Network Connectivityの有効化およびセキュリティ資格証明(Oracle Wallet)の取得
-
クライアント・セキュリティ資格証明を取得して、Autonomous AI Databaseに接続します。データベースへのアクセスに必要なクライアント・セキュリティ資格証明およびネットワーク構成設定を含むzipファイルを取得します。不正なデータベース・アクセスを防ぐために、このファイルとそのコンテンツを保護する必要があります。次のようにして、クライアント・セキュリティ資格証明ファイルを取得します:
-
ADMINユーザー: 「データベース接続」をクリックします。「クライアント資格証明(ウォレット)のダウンロード」を参照してください。
-
他のユーザー(非管理者): Autonomous AI Databaseの管理者からOracle Walletを取得します。
-
-
クライアント資格証明(ウォレット)ファイルを抽出します:
-
クライアント資格証明zipファイルを解凍します。
-
Instant Clientを使用している場合は、必要に応じてInstant Clientディレクトリ下に
network/adminサブディレクトリ階層を作成します。次に、ファイルをこのサブディレクトリに移動します。たとえば、アーキテクチャやクライアント・システム、およびInstant Clientをインストールした場所に応じて、ファイルは次のディレクトリにあります:C:\instantclient_12_2\network\adminまたは
/home/myuser/instantclient_18_5/network/adminまたは
/usr/lib/oracle/18.5/client64/lib/network/admin-
フルOracle Clientを使用している場合は、ファイルを
$ORACLE_HOME/network/adminに移動します。
-
-
または、解凍したウォレット・ファイルを安全なディレクトリに配置し、
TNS_ADMIN環境変数をそのディレクトリ名に設定します。
ノート
zipファイルからの必要なファイルは次のファイルのみです:tnsnames.ora、sqlnet.ora、cwallet.ssoおよびewallet.p12。 -
-
プロキシの内側にいる場合は、「Oracle Call Interface、ODBCおよびJDBC OCI接続とウォレット(mTLS)の準備」の「HTTPプロキシでの接続」のステップに従います。
アプリケーションの実行
-
データベース・ユーザー名、パスワード、および解凍した
tnsnames.oraファイルで指定されているOracle Net接続名を使用して接続するようにアプリケーションを更新します。たとえば、接続文字列としてユーザー、adb_user、passwordおよびdb2022adb_lowです。 -
または、
tnsnames.oraの接続文字列を、アプリケーションで使用される文字列と一致するように変更します。 -
アプリケーションを実行します。