Article
· Jan 21 4m de lecture

Connexion à Cloud SQL avec DBeaver à l'aide de SSL/TLS

Avec la sortie d'InterSystems IRIS Cloud SQL, nous recevons des questions plus fréquentes sur la manière d'établir des connexions sécurisées via JDBC et d'autres technologies de pilotes.

Bien que nous ayons une belle documentation générale et détaillée sur les technologies de pilote elles-mêmes, notre documentation ne va pas aussi loin pour décrire les outils clients individuels, tels que notre DBeaver préféré.

Dans cet article, nous décrirons les étapes pour créer une connexion sécurisée de DBeaver à votre déploiement Cloud SQL.

Étape 0 : Création de votre déploiement

Tout d'abord, connectez-vous à Cloud Services Portal et créez un déploiement Cloud SQL. La seule chose à laquelle vous devez faire attention est de cocher la case pour activer les connexions externes. En dehors de cela, tous les paramètres par défaut devraient fonctionner correctement.

Étape 1 : Installation du certificat

Afin de nous connecter en toute sécurité, nous utiliserons des certificats pour chiffrer tout ce qui est envoyé via le réseau. Vous pouvez télécharger le certificat depuis la page de détails du déploiement via le bouton « Obtenir le certificat X.509 » :

Nous devons ensuite stocker ce certificat dans un trousseau approuvé à l'aide de l'utilitaire keytool. Il s'agit d'un élément standard de l'infrastructure Java, donc rien de spécifique à IRIS ou DBeaver à ce stade. Utilisez la commande ci-dessous pour importer le certificat. L'emplacement de votre fichier de certificat certificateSQLaaS.pem n'a pas d'importance après l'exécution de cette commande, vous pouvez donc le supprimer de votre dossier de téléchargements par la suite. L'emplacement du fichier keystore.jks est important, alors assurez-vous d'exécuter la commande à partir d'un dossier où cela a du sens, soit là où vous continuerez à l'utiliser à d'autres fins, soit dans votre dossier d'installation DBeaver si c'est le seul objectif. pour ce magasin de clés.

keytool -importcert -file path-to-cert/cert-file.pem -keystore keystore.jks

Pour plus de détails, voir the documentation.

Étape 2 : Créer un fichier SSLConfig.properties

Ensuite, nous devrons indiquer au pilote IRIS JDBC comment trouver ce magasin de clés, ce qui est accompli via un fichier SSLConfig.properties. Ce simple fichier texte doit être placé dans le répertoire de travail du programme Java qui ouvrira la connexion JDBC. Sous Windows, il s'agit de %LOCALAPPDATA%\DBeaver, ce qui se traduit par C:\Users\<you>\AppData\Local\DBeaver. Sur Mac, c'est généralement /Applications/DBeaverEE.app/Contents/MacOS. Comme alternative, vous pouvez également créer le fichier ailleurs et définir le chemin complet en tant que variable d'environnement nomméecom.intersystems.SSLConfigFile.

Dans sa forme la plus simple, ce fichier doit uniquement pointer vers le trousseau et inclure le mot de passe. Notez que le chemin d'accès à votre fichier keystore.jks doit être correctement échappé pour que Java puisse le lire, donc sous Windows, vous devrez utiliser des doubles barres obliques inverses.

trustStore=/path/to/keystore/keystore.jks
trustStorePassword=keystore-password

Il existe de nombreux paramètres supplémentaires que vous pouvez configurer via ce fichier décrit dans les docs, y compris les configurations nommées, mais ce qui précède est suffisant.

Étape 3 : Créez votre connexion DBeaver

Maintenant que nous avons installé notre certificat et spécifié où IRIS JDBC peut le trouver, nous pouvons créer notre connexion DBeaver. Tous les paramètres de l'onglet « principal » de la boîte de dialogue de création de connexion se trouvent dans l'écran des détails du déploiement comme collé ci-dessus :

La seule chose qui reste à faire est de dire à DBeaver d'activer le cryptage, ce qui se fait en définissant le « niveau de sécurité de connexion » sur 10 dans l'onglet « Propriétés du pilote » :

C'est ça! Si vous cliquez sur « Tester la connexion », vous devriez obtenir un pouce levé ou un message d'erreur utile. Dans ce dernier cas, consultez ce document de dépannage si vous ne savez pas quoi changer.

Remarque pour les utilisateurs Mac

Si vous utilisez un Mac, il semble y avoir un bug dans DBeaver où ce qui précède peut ne pas être suffisant. Le travail n'est pas conventionnel mais il fonctionne. Dans le champ Base de données/Schéma, où vous mettriez normalement « USER », mettez cette chaîne complète à la place :

USER:sslConnection=true;sslTrustStoreLocation=/pathToTruststore/truststore.jks;sslTrustStorePassword=123456;

Astuce et autres sagesses gracieuseté de @Richard Guidice

Discussion (0)1
Connectez-vous ou inscrivez-vous pour continuer