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

È possibile utilizzare i 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 esegue la connessione utilizzando le seguenti versioni client:
  • Oracle Instant Client/Oracle Database Client: 18.19 (o versioni successive), 19.2 (o versioni successive) o 21 (release di base o successive).

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

Per ulteriori dettagli, vedere il video seguente:

Installazione del driver della 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 versioni successive), 19.2 (o versioni successive) o 21 (release di base o successive).

    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 pacchetto di base (disponibile nella pagina di download): Download di Oracle Instant Client.

      In alternativa, scaricare il pacchetto Basic Light dalla pagina di download per l'architettura desiderata se le limitazioni della globalizzazione Basic Light si adattano al vostro utilizzo.

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

    3. Decomprimere il package di 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 d'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 di ambiente. Se sono installate più versioni delle librerie Oracle, assicurarsi che la nuova directory si trovi prima nel percorso.

    5. Su 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 nel sistema non sono presenti altri software Oracle 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 sotto forma di file .zip o .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 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.

    • Utente ADMIN: fare clic su Connessione al database. Vedere Scarica credenziali client (wallet).

    • Altro utente (non amministratore): ottenere Oracle Wallet dall'amministratore per Autonomous Database.

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

    1. Estrarre 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

      In alternativa

      /home/myuser/instantclient_18_5/network/admin

      In alternativa

      /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 del wallet decompressi in una directory sicura e impostare la variabile di ambiente TNS_ADMIN su tale nome di directory.

    Nota

    Dal file zip sono necessari solo i seguenti file: 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" nella sezione Prepara per Oracle Call Interface, ODBC e connessioni OCI JDBC con wallet (mTLS).

Esecuzione dell'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 decompresso. 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.