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.

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

  2. Scaricare le credenziali client e memorizzare il file in una cartella sicura sul computer client. Vedere Download delle credenziali client (wallet).

  3. Estrarre/annullare la compressione del file delle credenziali in una cartella sicura nel computer client.

  4. 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
    
  5. 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 ambiente TNS_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.

Nota

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).
  1. Aggiungere la riga seguente al file sqlnet.ora per abilitare le connessioni tramite un proxy HTTP:

    SQLNET.USE_HTTPS_PROXY=on
  2. Aggiungere il nome host e la porta proxy HTTP alle definizioni di connessione in tnsnames.ora. È necessario aggiungere i parametri https_proxy e https_proxy_port nella sezione dell'indirizzo delle definizioni di connessione. Ad esempio, il proxy HTTP viene impostato su proxyhostname e la porta proxy HTTP su 80; 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))
                 )
           )

Nota

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.

  1. Aggiornare il file sqlnet.ora aggiungendo quanto segue:

    WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/home/adb_credentials")))
  2. Copiare le voci nel file tnsnames.ora fornito nel wallet di Autonomous Database nel file tnsnames.ora esistente.