Preparati per le connessioni OCI Oracle Call Interface, ODBC e JDBC con i wallet (mTLS)
La preparazione per qualsiasi tipo di connessione 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 da seguire per prepararsi all'autenticazione TLS con questi tipi di connessione, vedere Preparare per Oracle Call Interface, ODBC e JDBC OCI Connections Using TLS Authentication.
Nuova installazione di Oracle Client
La procedura seguente presuppone che il software client Oracle non sia già stato installato nel 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 OCI (Oracle Call Interface), ODBC o JDBC OCI, effettuare le operazioni riportate di seguito.
-
Installare il software Oracle Client sul computer.
-
Oracle Instant Client/Oracle Database Client: 18.19 (o versioni successive), 19.2 (o versioni successive) o 21 (release di base o successive). Il client istantaneo contiene il software minimo necessario per effettuare una connessione a Oracle Call Interface.
-
-
Scaricare le credenziali client e memorizzare il file in una cartella sicura sul computer client. Vedere Scarica credenziali client (wallet).
-
Decomprimere/decomprimere il file delle credenziali in una cartella sicura sul 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 in 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 di
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 seguenti operazioni 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, vedere 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 del proxy HTTP alle definizioni di connessione in
tnsnames.ora
. È necessario aggiungere i parametrihttps_proxy
ehttps_proxy_port
nella sezione degli indirizzi delle definizioni di connessione. Ad esempio, quanto segue imposta il proxy HTTP suproxyhostname
e la porta del proxy HTTP su80
; sostituire questi valori con le informazioni sul 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 dei criteri di configurazione e sicurezza della rete dell'organizzazione. Ad esempio, alcune reti richiedono i caratteri 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 per un proxy HTTP.
Per ulteriori informazioni su SQLNET.USE_HTTPS_PROXY
, vedere Net Services Reference.
Per informazioni su HTTPS_PROXY
e HTTPS_PROXY_PORT
, vedere Sezione Indirizzo protocollo.
Aggiornamento di un'installazione di Oracle Client esistente
Se si dispone di un'installazione client Oracle esistente, si dispone già di file sqlnet.ora
e tnsnames.ora
e della variabile di ambiente TNS_ADMIN
. In questo caso:
-
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.