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.
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.
-
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.
-
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.
-
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
-
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. -
In Windows, aggiungere il percorso alla variabile
PATH
nella sezione "Variabili di sistema" del riquadro Variabili d'ambiente (ad esempio, aggiungereC:\instantclient_12_2
). In Windows 8 accedere all'area di impostazione delle variabiliPATH
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. -
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.
-
-
Installare il driver della lingua pertinente per Oracle Database:
-
Node.js: per installare node-oracledb per Node.js, utilizzare le istruzioni nella pagina seguente: Installazione di node-oracledb.
-
ROracle: per installare ROracle for R, utilizzare le istruzioni disponibili nella pagina seguente: ROracle
-
PHP: per installare PHP OCI8 per PHP, utilizzare le istruzioni riportate nella pagina seguente: Configurazione di PHP con OCI8.
Le DLL Windows sono disponibili sul sito http://php.net/downloads.php e sono disponibili anche su PECL oci8.
-
PHP PDO_OCI: per installare PHP PDO_OCI per PHP, utilizzare le istruzioni riportate nella pagina seguente: Oracle Functions (PDO_OCI).
Le DLL Windows sono disponibili sul sito http://php.net/downloads.php incluso in PHP.
-
Ruby: per installare ruby-oci8 per Ruby, utilizzare le istruzioni nella pagina seguente: Installa per Oracle Instant Client
-
DBD for Perl: per installare DBD::Oracle for Perl, impostare
ORACLE_HOME
e il percorso di ricerca della libreria, ad esempioLD_LIBRARY_PATH
oPATH
, nella directory Instant Client e utilizzare le istruzioni riportate nella pagina seguente: Installazione di DBD-Oracle. -
Python: per istruzioni sulla connessione delle applicazioni Python, vedere Connettere le applicazioni Python con un wallet (mTLS)
-
Abilitare la connettività di Oracle Network e ottenere le credenziali di sicurezza (Oracle Wallet)
-
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.
-
-
Estrarre i file delle credenziali client (wallet):
-
Estrarre il file zip delle credenziali client.
-
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
.
-
-
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
eewallet.p12
. -
-
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
-
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 edb2022adb_low
come stringa di connessione. -
In alternativa, modificare la stringa di connessione in
tnsnames.ora
in modo che corrisponda alla stringa utilizzata dall'applicazione. -
Eseguire l'applicazione.