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.

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

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

  3. Decomprimere/decomprimere il file delle credenziali in una cartella sicura sul 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 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
    
  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 di 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 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.

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, vedere 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 del proxy HTTP alle definizioni di connessione in tnsnames.ora. È necessario aggiungere i parametri https_proxy e https_proxy_port nella sezione degli indirizzi delle definizioni di connessione. Ad esempio, quanto segue imposta il proxy HTTP su proxyhostname e la porta del proxy HTTP su 80; 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))
                 )
           )

Nota

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:

  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.