Les connecteurs Cloud SQL sont des bibliothèques qui fournissent le chiffrement et l'autorisation basée sur IAM (Identity and Access Management) lors de la connexion à une instance Cloud SQL. Ils ne peuvent pas fournir de chemin d'accès réseau vers une instance Cloud SQL s'il n'en existe pas déjà un.
Vous pouvez également vous connecter à une instance Cloud SQL à l'aide d'un client de base de données ou du proxy d'authentification Cloud SQL. Pour plus d'informations sur la connexion à une instance Cloud SQL, consultez la page À propos des options de connexion.
Cette page traite des connecteurs Cloud SQL suivants :
- Connecteur Java Cloud SQL
- Connecteur Python Cloud SQL (ouvert dans Colab)
- Connecteur Go Cloud SQL
- Connecteur Node.js Cloud SQL
Avantages
L'utilisation d'un connecteur Cloud SQL présente les avantages suivants :
- Autorisation IAM : utilise les autorisations IAM pour contrôler les utilisateurs et les services qui peuvent se connecter à vos instances Cloud SQL.
- Commodité : supprime l'obligation de gérer les certificats SSL, de configurer les règles de pare-feu ou d'activer les réseaux autorisés.
- Authentification IAM pour les bases de données : compatible avec la fonctionnalité d'authentification automatique pour les bases de données de Cloud SQL.
Avant de commencer
- Activez l'API Cloud SQL Admin.
- Créez une instance Cloud SQL et configuré l'utilisateur par défaut.
Pour en savoir plus sur la création d'instances, consultez la section Créer des instances.
Pour en savoir plus sur la configuration de l'utilisateur par défaut, consultez la section Définir le mot de passe du compte utilisateur par défaut.
- configuré les rôles et autorisations requis pour se connecter à une instance Cloud SQL.
Préparation
Java
Le connecteur Java Cloud SQL est une bibliothèque qui fournit une autorisation basée sur IAM et un chiffrement lors de la connexion à une instance Cloud SQL. Il ne peut pas fournir de chemin d'accès réseau à une instance Cloud SQL s'il n'en existe pas déjà un.
Installation
Pour obtenir des instructions sur la création et l'utilisation des pilotes pour JDBC et R2DBC avec le connecteur Java Cloud SQL, consultez les liens suivants :
- JDBC : Se connecter à Cloud SQL à l'aide de JDBC.
- R2DBC : Se connecter à Cloud SQL à l'aide de R2DBC.
Pour obtenir des exemples d'utilisation de cette bibliothèque dans le contexte d'une application, consultez ces exemples d'applications.
Authentification
Cette bibliothèque utilise les identifiants par défaut de l'application pour authentifier la connexion au serveur Cloud SQL.
Pour activer les identifiants localement, exécutez la commande gcloud suivante :
gcloud auth application-default login
Connexion avec IntelliJ
Pour connecter IntelliJ à votre instance Cloud SQL, vous devez ajouter la bibliothèque en tant que fichier JAR avec des dépendances dans la section Fichiers supplémentaires de la page des paramètres des pilotes. Par exemple, vous pouvez trouver des fichiers Fat JAR prédéfinis sur la page Versions du connecteur Java pour Cloud SQL à cet effet.
Python
Le connecteur Python Cloud SQL est une bibliothèque qui peut être utilisée avec un pilote de base de données pour permettre aux utilisateurs disposant des autorisations suffisantes de se connecter à une base de données Cloud SQL, sans avoir à ajouter manuellement les adresses IP à la liste d'autorisation ni à gérer les certificats SSL.
Pour obtenir des exemples interactifs d'utilisation du connecteur Python Cloud SQL, ouvrez le notebook du connecteur Python Cloud SQL.
Le pilote actuellement compatible avec PostgreSQL est pg8000.
Installation
Pour installer la dernière version, suivez ces instructions.
Authentification
Cette bibliothèque utilise les identifiants par défaut de l'application pour authentifier la connexion au serveur Cloud SQL.
Pour activer les identifiants localement, exécutez la commande gcloud suivante :
gcloud auth application-default login
Go
Cloud SQL Go est un connecteur Cloud SQL conçu pour être utilisé avec le langage Go. Pour renforcer la sécurité, ce connecteur utilise un chiffrement TLS 1.3 robuste et authentifié manuellement entre le connecteur client et le proxy côté serveur, indépendamment du protocole de base de données.
Installation
Vous pouvez installer ce dépôt à l'aide de go get
:
go get cloud.google.com/go/cloudsqlconn
Node.js
Le connecteur Node.js est une bibliothèque conçue pour être utilisée avec l'environnement d'exécution Node.js qui vous permet de vous connecter à votre instance Cloud SQL de façon sécurisée.
Installation
Vous pouvez installer la bibliothèque avec npm install
:
npm install @google-cloud/cloud-sql-connector
Utilisation
Java
Pour afficher cet extrait dans le contexte d'une application Web, consultez le fichier README sur GitHub.
Python
Pour obtenir des instructions détaillées sur l'utilisation de la bibliothèque, consultez la page Utiliser ce connecteur. Affichez l'exemple de code de test de connectivité sur GitHub.
Go
Consultez la page Utilisation pour obtenir des instructions détaillées sur l'utilisation de la bibliothèque. Affichez l'exemple de code de test de connectivité sur GitHub.
Node.js
Pour obtenir des instructions détaillées sur l'utilisation de la bibliothèque, consultez la section Utilisation.
Résoudre les problèmes
Versions des pilotes
Assurez-vous que vous utilisez la dernière version des connecteurs Cloud SQL et de vos pilotes de base de données pour éviter les incompatibilités. Certaines versions anciennes de pilotes ne sont pas compatibles
Chemins d'accès de connexion
Les connecteurs Cloud SQL fournissent l'autorisation pour les connexions, mais ils ne fournissent pas de nouveaux chemins d'accès à la connectivité. Par exemple, pour se connecter à une instance Cloud SQL à l'aide d'une adresse IP privée, votre application doit déjà disposer d'un accès VPC.
Déboguer les problèmes de connexion
Pour obtenir une aide supplémentaire concernant les problèmes de connexion, consultez les pages Dépannage et Déboguer les problèmes de connexion.
Étapes suivantes
- Consultez la page d'accueil du connecteur Java pour Cloud SQL sur GitHub.
- Consultez la page d'accueil du connecteur Python pour Cloud SQL sur GitHub.
- Apprenez-en plus sur le proxy d'authentification Cloud SQL.
- Apprenez-en plus sur IAM.
- Apprenez-en plus sur les Options de support.