Node.jsおよびその他のスクリプト言語の接続(mTLS)

mTLS (ウォレットあり)を使用してAutonomous Databaseインスタンスに接続するには、Python、Node.js、PHP、Ruby、R、Go、Perlなどの様々な言語のプログラムを使用できます。セキュリティはクライアント資格証明を使用して適用されます。

これらのスクリプト言語には、Oracle Call Interfaceライブラリを使用するデータベース・アクセスAPIまたはドライバが含まれます。

ノート

Oracle Call Interface (OCI)クライアントでは、次のクライアント・バージョンを使用して接続する場合、ウォレットでのmTLS認証がサポートされます:
  • Oracle Instant Client/Oracle Database Client: 18.19 (以上)、19.2 (以上)、または21 (ベース・リリース以上)。

ウォレットなしでのNode.jsまたはその他のスクリプト言語の接続の詳細は、「Walletを使用しないNode.jsおよびその他のスクリプト言語の接続」を参照してください。

詳細は、次のビデオを参照してください。

言語ドライバとクライアント・ライブラリのインストール

スクリプト言語からAutonomous Databaseに接続するには、最初に次のように言語ドライバとクライアント・ライブラリをインストールします:

  1. Oracle Instant Client/Oracle Database Clientをインストールします: 18.19 (以上)、19.2 (以上)、または21 (ベース・リリース以降)。

    ほとんどのアプリケーションでは、Instant Clientで問題ありません。Instant Clientをインストールするには、次を実行します:

    1. Instant Clientのダウンロード・ページから目的のアーキテクチャを選択し、(ダウンロード・ページで入手可能な) Basicパッケージをダウンロードします: Oracle Instant Clientのダウンロード

      または、Basic Lightのグローバリゼーション制限が用途に合っていれば、目的のアーキテクチャのダウンロード・ページからBasic Lightパッケージをダウンロードします。

    2. ソース・コードから言語APIまたはドライバを構築する場合は、Instant Client SDKもダウンロードする必要があります: Oracle Instant Client

    3. 選択したベース・パッケージを解凍します。たとえば、C:\instantclient_12_2または/home/myuser/instantclient_18_5に解凍します。SDKもダウンロードする場合は、それを同じディレクトリに解凍します。

    4. Windowsでは、「環境変数」ペインの「システム変数」セクションで、PATH変数にパスを追加します(たとえば、C:\instantclient_12_2を追加します)。Windows 8では、「コントロール パネル」→「システム」→「システムの詳細設定」→「環境変数」に移動して、PATH変数設定領域にアクセスします。複数のバージョンのOracleライブラリがインストールされている場合は、必ず新しいディレクトリをパスの最初に配置してください。

    5. 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ファイルとして入手できます。いずれのバージョンも使用できます。
  2. Oracle Databaseに関連する言語ドライバをインストールします:

Oracle Network Connectivityの有効化およびセキュリティ資格証明(Oracle Wallet)の取得

  1. Autonomous Databaseに接続するためのクライアント・セキュリティ資格証明を取得します。データベースへのアクセスに必要なクライアント・セキュリティ資格証明およびネットワーク構成設定が格納されているzipファイルを取得します。不正なデータベース・アクセスを防ぐために、このファイルとそのコンテンツを保護する必要があります。次のようにして、クライアント・セキュリティ資格証明ファイルを取得します:

  2. クライアント資格証明(ウォレット)ファイルを抽出します:

    1. クライアント資格証明zipファイルを解凍します。

    2. 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に移動します。

    3. または、解凍したウォレット・ファイルを安全なディレクトリに配置し、TNS_ADMIN環境変数をそのディレクトリ名に設定します。

    ノート

    zipファイルからの必要なファイルは次のファイルのみです: tnsnames.orasqlnet.oracwallet.ssoおよびewallet.p12
  3. プロキシを使用している場合は、ウォレット(mTLS)を使用したOracle Call Interface、ODBCおよびJDBC OCI接続の準備の「HTTPプロキシでの接続」のステップに従います。

アプリケーションを実行します

  1. データベース・ユーザー名、パスワード、および解凍したtnsnames.oraファイルで指定されているOracle Net接続名を使用して接続するようにアプリケーションを更新します。たとえば、ユーザーadb_userパスワードおよび接続文字列db2022adb_lowです。

  2. または、tnsnames.oraの接続文字列を、アプリケーションで使用される文字列と一致するように変更します。

  3. アプリケーションを実行します。