Connettere Node.js e altri linguaggi di scripting (mTLS)

È possibile utilizzare programmi in diversi linguaggi, tra cui Python, Node.js, PHP, Ruby, R, Go e Perl per connettersi a un'istanza di Autonomous Database utilizzando mTLS (con wallet). La sicurezza viene applicata utilizzando le credenziali client.

Questi linguaggi di scripting dispongono di API o driver di accesso al database che utilizzano le librerie di Oracle Call Interface.

Nota

I client Oracle Call Interface (OCI) supportano l'autenticazione mTLS con un wallet se si sta eseguendo la connessione utilizzando le versioni client riportate di seguito.
  • Oracle Instant Client/Oracle Database Client: 18.19 (o versione successiva), 19.2 (o versione successiva) o 21 (versione di base o versione successiva).

Per informazioni dettagliate sulla connessione di Node.js o di altri linguaggi di scripting senza wallet, vedere Connetti Node.js e altri linguaggi di scripting senza wallet.

Per ulteriori dettagli, vedere il seguente video:

Installazione del driver lingua e delle librerie client

Per connettersi ad Autonomous Database dal linguaggio di scripting, installare prima il driver della lingua e le librerie client come indicato di seguito.

  1. Installare Oracle Instant Client/Oracle Database Client: 18.19 (o versione successiva), 19.2 (o versione successiva) o 21 (release di base o versione successiva).

    Instant Client funziona bene per la maggior parte delle applicazioni. Per installare Instant Client, effettuare le operazioni riportate di seguito.

    1. Selezionare l'architettura desiderata dalla pagina Download di Instant Client e scaricare un package di base (disponibile nella pagina di download): Download di Oracle Instant Client.

      In alternativa, scaricare il Basic Light Package dalla pagina di download per l'architettura desiderata se le limitazioni della globalizzazione Basic Light si adattano all'uso.

    2. Se si sta creando un'API o un driver della lingua dal codice sorgente, potrebbe essere necessario anche scaricare l'SDK Instant Client: Oracle Instant Client

    3. Decomprimere il package base selezionato. Ad esempio, decomprimere in C:\instantclient_12_2 o /home/myuser/instantclient_18_5. Se si scarica anche l'SDK, decomprimerlo nella stessa directory.

    4. In Windows, aggiungere il percorso alla variabile PATH nella sezione "Variabili di sistema" del riquadro Variabili di ambiente (ad esempio aggiungere C:\instantclient_12_2). In Windows 8 accedere all'area di impostazione delle variabili PATH passando a Pannello di controllo>Sistema>Impostazioni di sistema avanzate>Variabili d'ambiente. Se sono installate più versioni delle librerie Oracle, assicurarsi che la nuova directory si verifichi prima nel percorso.

    5. Nelle piattaforme non Windows, creare un collegamento simbolico se non esiste. Ad esempio:

      cd /home/myuser/instantclient_18_5
      ln -s libclntsh.so.18.1 libclntsh.so

      Se non vi sono altri software Oracle sul sistema che saranno interessati, aggiungere Instant Client al percorso del collegamento runtime. Ad esempio:

      sudo sh -c "echo /home/myuser/instantclient_18_5 > /etc/ld.so.conf.d/oic.conf"
      sudo ldconfig
      

      In alternativa, impostare il percorso della libreria in ogni shell che esegue l'applicazione. Ad esempio:

      export LD_LIBRARY_PATH=/home/myuser/instantclient_18_5:$LD_LIBRARY_PATH
      Nota

      I file di download di Linux Instant Client sono disponibili come file .zip o file .rpm. È possibile utilizzare una delle due versioni.
  2. Installare il driver della lingua pertinente per Oracle Database:

Abilitare la connettività di Oracle Network e ottenere le credenziali di sicurezza (Oracle Wallet)

  1. Ottenere le credenziali di sicurezza del client per connettersi ad Autonomous Database. Si ottiene un file zip contenente le credenziali di sicurezza client e le impostazioni di configurazione di rete necessarie per accedere al database. È necessario proteggere questo file e il relativo contenuto per impedire l'accesso non autorizzato al database. Ottenere il file delle credenziali di sicurezza del client come indicato di seguito.

  2. Estrarre i file delle credenziali client (wallet):

    1. Decomprimere il file zip delle credenziali client.

    2. Se si utilizza Instant Client, creare una gerarchia di sottodirectory network/admin nella directory Instant Client, se necessario. Quindi spostare i file in questa sottodirectory. Ad esempio, a seconda dell'architettura o del sistema client e della posizione in cui è stato installato Instant Client, i file devono trovarsi nella directory:

      C:\instantclient_12_2\network\admin

      o

      /home/myuser/instantclient_18_5/network/admin

      o

      /usr/lib/oracle/18.5/client64/lib/network/admin
      • Se si utilizza un client Oracle completo, spostare il file in $ORACLE_HOME/network/admin.

    3. In alternativa, inserire i file wallet decompressi in una directory sicura e impostare la variabile di ambiente TNS_ADMIN sul nome della directory.

    Nota

    Dal file zip sono necessari solo i file seguenti: tnsnames.ora, sqlnet.ora, cwallet.sso e ewallet.p12.
  3. Se si è dietro un proxy, attenersi alla procedura descritta in "Connessioni con un proxy HTTP", in Preparazione per le connessioni OCI Oracle Call Interface, ODBC e JDBC con wallet (mTLS).

Esegui applicazione

  1. Aggiornare l'applicazione per connettersi utilizzando il nome utente del database, la password e il nome di connessione di Oracle Net specificato nel file tnsnames.ora non compresso. Ad esempio, utente, adb_user, password e db2022adb_low come stringa di connessione.

  2. In alternativa, modificare la stringa di connessione in tnsnames.ora in modo che corrisponda alla stringa utilizzata dall'applicazione.

  3. Eseguire l'applicazione.