Préparer les connexions avec l'interface d'appel Oracle, ODBC et l'interface d'appel Oracle JDBC à l'aide de portefeuilles (mTLS)

La préparation de tout type de connexion Oracle Call Interface (OCI) avec l'authentification mTLS nécessite l'installation du logiciel client, le téléchargement des données d'identification du client et la configuration de certains fichiers et variables d'environnement.

Cette rubrique décrit les étapes pour préparer une application à se connecter à l'aide de l'authentification mTLS avec un portefeuille que vous téléchargez à partir d'une instance de base de données du service d'intelligence artificielle autonome. Voir Préparer les connexions OCI Oracle Call Interface, ODBC et JDBC à l'aide de l'authentification TLS pour plus d'informations sur les étapes de préparation à l'authentification TLS avec ces types de connexion.

Installation d'un nouveau client Oracle

Les étapes suivantes supposent que le logiciel client Oracle n'a pas déjà été installé sur l'ordinateur client. Si le logiciel client Oracle a déjà été installé et qu'il existe des copies de travail de sqlnet.ora et tnsnames.ora, voir Mise à jour d'une installation client Oracle existante.

Avant d'établir une connexion Oracle Call Interface (OCI), ODBC ou JDBC OCI, procédez comme suit :

  1. Installez le logiciel client Oracle sur votre ordinateur.

    • Oracle Instant Client/Oracle Database Client : 18.19 (ou version ultérieure), 19.2 (ou version ultérieure) ou 21 (version de base ou version ultérieure). Le client instantané contient le logiciel minimal nécessaire pour établir une connexion à Oracle Call Interface.

  2. Téléchargez les données d'identification du client et stockez le fichier dans un dossier sécurisé sur votre ordinateur client. Voir Télécharger des données d'identification de client (portefeuilles).

  3. Décompressez/décompressez le fichier de données d'identification dans un dossier sécurisé sur votre ordinateur client.

  4. Modifiez le fichier sqlnet.ora dans le dossier où vous décompressez le fichier de données d'identification, en remplaçant "?/network/admin" par le nom du dossier contenant les données d'identification du client.

    Par exemple, modifiez sqlnet.ora comme suit :

    WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="?/network/admin")))
    SSL_SERVER_DN_MATCH=yes

    La valeur modifiée sur UNIX/Linux est :

    WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/home/adb_credentials")))
    SSL_SERVER_DN_MATCH=yes
    

    La valeur modifiée pour Windows est :

    WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="D:\\myapp\\adb_credentials")))
    SSL_SERVER_DN_MATCH=yes
    
  5. Créez la variable d'environnement TNS_ADMIN et réglez-la à l'emplacement du fichier de données d'identification.

    Utilisez cette variable d'environnement pour modifier le chemin d'accès au répertoire des fichiers de configuration Oracle Net Services de l'emplacement par défaut de ORACLE_HOME\network\admin à l'emplacement du dossier sécurisé contenant le fichier de données d'identification que vous avez enregistré à l'étape 2. Réglez la variable d'environnement TNS_ADMIN au répertoire où se trouvent les fichiers de données d'identification décompressés, et non au fichier de données d'identification lui-même.

    Par exemple, sous UNIX/Linux, réglez TNS_ADMIN au chemin complet du répertoire où vous avez décompressé les données d'identification du client :

    export TNS_ADMIN=/home/adb_credentials

    Par exemple, sous Windows :

    set TNS_ADMIN=d:\myapp\adb_credentials

Connexions avec un mandataire HTTP

Si le client est derrière un pare-feu et que votre configuration réseau nécessite un mandataire HTTP pour se connecter à Internet, effectuez les étapes suivantes pour mettre à jour les fichiers sqlnet.ora et tnsnames.ora. Les connexions au moyen d'un mandataire HTTP ne sont disponibles qu'avec le logiciel client Oracle version 12.2.0.1 ou ultérieure.

Note

Pour éviter les mises à jour manuelles dans les fichiers sqlnet.ora et tnsnames.ora, vous pouvez utiliser SQLcl et spécifier le mandataire HTTP sur la ligne de commande. Pour plus d'informations, voir Connecter Oracle SQLcl Cloud avec un portefeuille (mTLS).
  1. Ajoutez la ligne suivante au fichier sqlnet.ora pour activer les connexions au moyen d'un mandataire HTTP :

    SQLNET.USE_HTTPS_PROXY=on
  2. Ajoutez le nom d'hôte et le port du mandataire HTTP aux définitions de connexion dans tnsnames.ora. Vous devez ajouter les paramètres https_proxy et https_proxy_port dans la section d'adresse des définitions de connexion. Par exemple, ce qui suit règle le mandataire HTTP à proxyhostname et le port mandataire HTTP à 80; remplacez ces valeurs par vos informations de mandataire 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))
                 )
           )

Note

La configuration de sqlnet.ora et tnsnames.ora pour le mandataire HTTP peut ne pas être suffisante en fonction de la configuration du réseau et des politiques de sécurité de votre organisation. Par exemple, certains réseaux nécessitent username et password pour le mandataire HTTP. Dans ce cas, communiquez avec l'administrateur de réseau pour ouvrir des connexions sortantes vers les hôtes du domaine oraclecloud.com à l'aide du port 1522 sans passer par un mandataire HTTP.

Pour plus d'informations sur SQLNET.USE_HTTPS_PROXY, consultez Informations de référence sur les services NetSuite.

Pour plus d'informations sur HTTPS_PROXY et HTTPS_PROXY_PORT, voir Section Adresse du protocole.

Mise à jour d'une installation client Oracle existante

Si vous disposez d'une installation de client Oracle, vous disposez déjà des fichiers sqlnet.ora et tnsnames.ora et de la variable d'environnement TNS_ADMIN. Dans ce cas, procédez comme suit :

  1. Mettez à jour votre fichier sqlnet.ora en ajoutant les éléments suivants :

    WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="/home/adb_credentials")))
  2. Copiez les entrées du fichier tnsnames.ora fourni dans le portefeuille de la base de données du service d'intelligence artificielle autonome dans votre fichier tnsnames.ora existant.