Preparati per le connessioni OCI Oracle Call Interface, ODBC e JDBC con wallet (mTLS)
La preparazione per qualsiasi tipo di connessione a Oracle Call Interface (OCI) con l'autenticazione mTLS richiede l'installazione del software client, il download delle credenziali client e la configurazione di determinati file e variabili di ambiente.
In questo argomento vengono descritti i passi per preparare un'applicazione a connettersi utilizzando l'autenticazione mTLS con un wallet scaricato da un'istanza di Autonomous Database. Per informazioni sui passi per preparare l'autenticazione TLS con questi tipi di connessione, vedere Prepara per le connessioni OCI Oracle Call Interface, ODBC e JDBC mediante l'autenticazione TLS.
Nuova installazione del Cliente Oracle
I passi seguenti presuppongono che il software client Oracle non sia già stato installato sul computer client. Se il software client Oracle è già stato installato e sono presenti copie di lavoro di sqlnet.ora
e tnsnames.ora
, vedere Aggiornamento di un'installazione client Oracle esistente.
Prima di effettuare una connessione a Oracle Call Interface (OCI), ODBC o JDBC OCI, effettuare le operazioni riportate di seguito.
-
Installare il software Oracle Client nel computer.
-
Oracle Instant Client/Oracle Database Client: 18.19 (o versione successiva), 19.2 (o versione successiva) o 21 (release di base o versione successiva). Il client istantaneo contiene il software minimo necessario per stabilire una connessione a Oracle Call Interface.
-
-
Scaricare le credenziali client e memorizzare il file in una cartella sicura sul computer client. Vedere Download delle credenziali client (wallet).
-
Estrarre/annullare la compressione del file delle credenziali in una cartella sicura nel computer client.
-
Modificare il file
sqlnet.ora
nella cartella in cui decomprimere il file delle credenziali, sostituendo"?/network/admin"
con il nome della cartella contenente le credenziali client.Ad esempio, modificare
sqlnet.ora
come indicato di seguito.WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="?/network/admin"))) SSL_SERVER_DN_MATCH=yes
Il valore modificato su UNIX/Linux è:
WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/home/adb_credentials"))) SSL_SERVER_DN_MATCH=yes
Il valore modificato per Windows è:
WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="D:\\myapp\\adb_credentials"))) SSL_SERVER_DN_MATCH=yes
-
Creare la variabile di ambiente
TNS_ADMIN
e impostarla sulla posizione del file delle credenziali.Utilizzare questa variabile di ambiente per modificare il percorso della directory dei file di configurazione di Oracle Net Services dalla posizione predefinita
ORACLE_HOME\network\admin
alla posizione della cartella sicura contenente il file delle credenziali salvato nel Passo 2. Impostare la variabile di ambienteTNS_ADMIN
sulla directory in cui si trovano i file delle credenziali decompressi, non sul file delle credenziali stesso.Ad esempio, in UNIX/Linux impostare
TNS_ADMIN
sul percorso completo della directory in cui sono state decompresse le credenziali client:export TNS_ADMIN=/home/adb_credentials
Ad esempio, in Windows:
set TNS_ADMIN=d:\myapp\adb_credentials
Connessioni con un proxy HTTP
Se il client è protetto da un firewall e la configurazione di rete richiede un proxy HTTP per la connessione a Internet, eseguire le operazioni riportate di seguito per aggiornare i file sqlnet.ora
e tnsnames.ora
. Le connessioni tramite un proxy HTTP sono disponibili solo con il software Oracle Client versione 12.2.0.1 o successiva.
Per evitare aggiornamenti manuali nei file
sqlnet.ora
e tnsnames.ora
, è possibile utilizzare SQLcl e specificare il proxy HTTP nella riga di comando. Per ulteriori informazioni, consulta la sezione Connetti Oracle SQLcl Cloud con un wallet (mTLS).
-
Aggiungere la riga seguente al file
sqlnet.ora
per abilitare le connessioni tramite un proxy HTTP:SQLNET.USE_HTTPS_PROXY=on
-
Aggiungere il nome host e la porta proxy HTTP alle definizioni di connessione in
tnsnames.ora
. È necessario aggiungere i parametrihttps_proxy
ehttps_proxy_port
nella sezione dell'indirizzo delle definizioni di connessione. Ad esempio, il proxy HTTP viene impostato suproxyhostname
e la porta proxy HTTP su80
; sostituire questi valori con le informazioni proxy HTTP:ADB1_high = (description= (address= (https_proxy=proxyhostname)(https_proxy_port=80)(protocol=tcps)(port=1522)(host=adb.example.oraclecloud.com) ) (connect_data=(service_name=adb1_high.adb.oraclecloud.com) ) (security=(ssl_server_dn_match=yes)) ) )
La configurazione di
sqlnet.ora
e tnsnames.ora
per il proxy HTTP potrebbe non essere sufficiente a seconda della configurazione di rete e dei criteri di sicurezza dell'organizzazione. Ad esempio, alcune reti richiedono username
e password
per il proxy HTTP. In questi casi, contattare l'amministratore di rete per aprire le connessioni in uscita agli host nel dominio oraclecloud.com utilizzando la porta 1522 senza passare attraverso un proxy HTTP.
Per ulteriori informazioni su SQLNET.USE_HTTPS_PROXY
, vedere Riferimento per i servizi di rete.
Per informazioni su HTTPS_PROXY
e HTTPS_PROXY_PORT
, vedere la sezione Protocol Address.
Aggiornamento di un'installazione di Oracle Client esistente
Se si dispone di un'installazione di Oracle Client esistente, si dispone già dei file sqlnet.ora
e tnsnames.ora
e della variabile di ambiente TNS_ADMIN
. In questo caso, effettuare le operazioni riportate di seguito.
-
Aggiornare il file
sqlnet.ora
aggiungendo quanto segue:WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/home/adb_credentials")))
-
Copiare le voci nel file
tnsnames.ora
fornito nel wallet di Autonomous Database nel filetnsnames.ora
esistente.