Connexion d'applications Go avec un portefeuille (mTLS)

Vous pouvez connecter des applications Go à votre instance Autonomous Database avec un portefeuille.

Sujets

Télécharger un fichier Oracle Wallet

Vous devez télécharger un fichier Oracle Wallet (mTLS) pour obtenir les informations d'identification de sécurité client qui vous permettent de vous connecter à une instance Autonomous Database.

  1. Téléchargez un fichier de portefeuille à partir de l'instance Autonomous Database pour obtenir un fichier ZIP qui contient les informations d'identification de sécurité client et les paramètres de configuration réseau requis pour accéder à une instance Autonomous Database.

    Selon que vous êtes un administrateur ou non, obtenez les informations d'identification de sécurité client (fichier wallet.zip) comme suit :

    • Utilisateur ADMIN : sur la console Oracle Cloud Infrastructure, cliquez sur Connexion à la base de données. Reportez-vous à Téléchargement des informations d'identification client (portefeuilles).

    • Autre utilisateur (non administrateur) : obtenez Oracle Wallet auprès de l'administrateur pour votre instance Autonomous Database.

      Remarque

      Protégez le fichier wallet.zip et son contenu pour éviter tout accès non autorisé à la base de données.
  2. Décompressez le fichier d'informations d'identification client (wallet.zip).

Exécuter des applications Go avec un portefeuille (mTLS)

Vous pouvez connecter des applications Go à votre instance Autonomous Database avec un portefeuille. Vous devez télécharger un fichier de portefeuille compressé à partir de l'instance Autonomous Database qui contient les informations d'identification de sécurité du client.

Le pilote godror requiert des bibliothèques client Oracle. Reportez-vous à Install Oracle Client Library to use Godror. Les bibliothèques client Oracle sont installées où vous exécutez l'application Go.

Le fichier de portefeuille est au format d'archive ZIP. Les noms de service de base de données se trouvent dans le fichier tnsnames.ora du fichier ZIP de portefeuille. Dans l'exemple ci-dessous, vous allez utiliser le nom de service réseau mydb_high trouvé dans le fichier tnsnames.ora.

Les trois fichiers suivants du fichier ZIP de portefeuille sont requis :
  • tnsnames.ora : contient les noms de service réseau utilisés pour les chaînes de connexion d'application et met en correspondance les chaînes avec les services de base de données.

  • sqlnet.ora : indique la configuration côté client SQLNet.

  • cwallet.sso : contient le portefeuille SSO ouvert automatiquement.

Pour connecter votre application Go à une instance Autonomous Database à l'aide d'un portefeuille (mTLS), procédez comme suit :

  1. Placez les fichiers tnsnames.ora, sqlnet.ora et cwallet.sso dans le répertoire facultatif (opt) de votre système Linux. Le répertoire /opt permet d'installer des packages logiciels facultatifs ou complémentaires qui ne font pas partie du système d'exploitation principal. Vous pouvez placer les fichiers n'importe où sur votre système d'exploitation Microsoft Windows. Par exemple, sous-répertoire sur le lecteur C (C:) de votre système d'exploitation Microsoft Windows.

    Vous pouvez déplacer les fichiers vers n'importe quel répertoire accessible.

    Par exemple, sous Linux, déplacez les fichiers vers le répertoire /opt/OracleCloud/MYDB et modifiez sqlnet.ora pour remplacer le répertoire d'emplacement du portefeuille par le répertoire contenant le fichier cwallet.sso.

    Par exemple, sous Linux, modifiez sqlnet.ora comme suit :

    WALLET_LOCATION = (SOURCE = (METHOD=file) (METHOD_DATA = (DIRECTORY="/opt/OracleCloud/MYDB")))
    SSL_SERVER_DN_MATCH=yes

    Lorsque les fichiers de configuration ne se trouvent pas à l'emplacement par défaut, votre application Go doit indiquer où ils se trouvent avec le paramètre config_dir.

    Remarque

    Aucun de ces paramètres n'est nécessaire et vous n'avez pas besoin de modifier sqlnet.ora si vous placez tous les fichiers de configuration dans le répertoire network/admin.
  2. Dans votre application Go, définissez les paramètres de connexion suivants pour la connexion à l'instance Autonomous Database :
    • user : indique l'utilisateur de base de données cloud.
    • password : indique le mot de passe de l'utilisateur de base de données cloud.
    • config_dir : indique le répertoire de configuration dans lequel vous placez les fichiers tnsnames.ora et sqlnet.ora. Cette opération est requise lorsque les fichiers de configuration sont placés dans un répertoire situé en dehors du répertoire de configuration client instantané network/admin.
    • dsn : indique l'alias réseau souhaité dans le fichier tnsnames.ora.

    Par exemple, pour vous connecter en tant qu'utilisateur ADMIN et avec le nom de service réseau mydb_high (où le nom de service se trouve dans /opt/OracleCloud/MYDB/tnsnames.ora), procédez comme suit :

    
    dsn := `user="admin"       
          password="password"       
          connectString="mydb_high"             
          configDir="/opt/OracleCloud/MYDB"` 
    db, _ := sql.Open("godror", dsn)
         

    Vous pouvez utiliser le code ci-dessus dans votre application Go pour créer une chaîne de connexion et vous connecter à Autonomous Database.