Choisir comment se connecter à Cloud SQL

Cette page présente les différentes manières de se connecter à votre instance Cloud SQL.

Avant de pouvoir vous connecter à une instance Cloud SQL, vous devez décider comment déployer et configurer votre instance Cloud SQL et les ressources réseau compatibles. Si votre instance Cloud SQL est déjà configurée et déployée, cette page peut vous aider à comprendre les différentes manières de connecter vos clients à l'instance existante.

Type d'adresse IP : privée ou publique

Lorsque vous créez votre instance Cloud SQL, vous pouvez choisir de la configurer avec une adresse IP publique, une adresse IP privée ou une combinaison des deux.

Vous choisissez la configuration d'adresse IP de votre instance en fonction des exigences de votre application. Ensuite, après avoir configuré votre instance, vous spécifiez une adresse IP publique, une adresse IP privée ou, dans certains cas, un nom DNS dans votre chaîne de connexion client.

Adresse IP privée Adresse IP publique
Description Adresse IP interne, réservée au réseau cloud privé virtuel (VPC) (privée) Adresse IP externe (publique) accessible par Internet
Points de décision

Devez-vous vous connecter à partir de clients hébergés sur des réseaux VPC dans Google Cloud ou à partir de clients ayant accès à ces réseaux VPC ?

Si oui, choisissez une adresse IP privée pour l'instance.

Devez-vous vous connecter à partir de clients situés en dehors du réseau VPC Google Cloudvia l'Internet public ?

Si oui, choisissez une adresse IP publique pour l'instance.

Options de configuration

Les types de configurations de mise en réseau privée suivants sont acceptés :

  • Private Service Connect : connectez-vous à des instances Cloud SQL à partir de plusieurs réseaux VPC appartenant à différents groupes, projets ou organisations. Private Service Connect est l'option de connectivité par adresse IP privée par défaut pour les nouveaux projets.
  • Accès aux services privés : connectez-vous aux instances Cloud SQL à partir d'un seul réseau VPC basé sur l'appairage de réseaux VPC.
  • Pour en savoir plus sur le choix d'une configuration de mise en réseau privée, consultez Options de configuration d'adresse IP privée.

Lorsque vous vous connectez directement à une instance à l'aide d'une adresse IP publique, vous devez configurer des réseaux autorisés.

Une autre alternative plus sécurisée pour se connecter à une instance Cloud SQL qui utilise une adresse IP publique consiste à utiliser un connecteur Cloud SQL (tel que le proxy d'authentification Cloud SQL ou l'un des connecteurs de langage Cloud SQL).

Pour obtenir des instructions sur l'ajout d'une adresse IP publique à votre instance, consultez Configurer une adresse IP publique.

Pour vous connecter à une instance Cloud SQL à l'aide d'une adresse IP publique, vous pouvez utiliser le client mysql ou un autre client disponible.

Résumé

Recommandation : Pour une sécurité renforcée, nous vous recommandons de configurer votre instance avec un type d'adresse IP privée, sauf si vous avez des exigences spécifiques pour une instance Cloud SQL accessible sur Internet ou si vous vous connectez depuis un client qui ne répond pas aux exigences d'un VPC.

Type de connexion : connecteur Cloud SQL ou direct

Lorsque vous vous connectez à une instance Cloud SQL, vous pouvez utiliser un connecteur Cloud SQL ou établir une connexion directe.

Un connecteur Cloud SQL est soit le proxy d'authentification Cloud SQL, soit l'un des connecteurs de langage Cloud SQL.

Connecteur Cloud SQL Connexion directe
Description Le proxy d'authentification Cloud SQL, un proxy côté client, et les connecteurs de langage Cloud SQL, des bibliothèques côté client, fournissent un accès simplifié et sécurisé à vos instances Cloud SQL, en particulier lorsque vous vous connectez à une instance à l'aide d'une adresse IP publique. Une connexion directe entre un client et une instance Cloud SQL offre une connexion à faible latence. Une connexion directe peut être établie à partir d'une adresse IP publique ou privée.
Points de décision

Les connecteurs Cloud SQL sont utiles dans les scénarios suivants :

  • Lorsque vous souhaitez vous connecter à une instance Cloud SQL à l'aide d'une adresse IP publique sans avoir à configurer de réseaux autorisés.
  • Lorsque vous souhaitez chiffrer automatiquement le trafic vers et depuis la base de données avec validation de l'identité du serveur et du client, sans avoir à gérer les certificats SSL.
  • Lorsque vous utilisez l'authentification IAM pour les bases de données et que vous souhaitez actualiser automatiquement vos jetons d'accès OAuth 2.0.
  • Lorsque vous vous connectez à partir d'un client ou d'une application qui utilise une adresse IP attribuée de manière dynamique ou éphémère. La configuration d'adresses IP dynamiques peut être courante pour les applications PaaS (Platform as a Service).

L'utilisation d'une connexion directe offre les avantages suivants :

  • Latence plus faible par rapport aux connexions utilisant des connecteurs Cloud SQL.
  • Aucune dépendance de package ou de bibliothèque supplémentaire, contrairement aux connecteurs Cloud SQL.
  • Lorsque vous utilisez une connexion directe, vous devez configurer les paramètres SSL/TLS.
Options de configuration

Pour configurer des certificats SSL/TLS sur l'instance Cloud SQL et pour votre client, procédez comme suit :

  1. Choisissez un mode d'autorité de certification du serveur pour votre instance.
  2. Configurez votre instance pour appliquer le chiffrement SSL/TLS aux connexions sur l'instance.
  3. Créez des certificats clients.
  4. Téléchargez vos certificats de serveur et de client.
Résumé

Lorsque vous vous connectez à une instance Cloud SQL, vous pouvez utiliser un connecteur Cloud SQL ou vous connecter directement depuis des clients.

Recommandation générale : si vous vous connectez à une instance via une adresse IP privée, utilisez une connexion directe. Nous vous recommandons également d'appliquer SSL et de configurer des certificats SSL/TLS pour votre connexion.

Si vous vous connectez à une instance via une adresse IP publique, utilisez un connecteur Cloud SQL (le proxy d'authentification Cloud SQL ou l'un des connecteurs de langage Cloud SQL).

Type d'authentification de la base de données : IAM ou intégrée

Lorsque vous vous connectez à une instance, vous devez vous authentifier en tant qu'utilisateur de la base de données. Vous pouvez choisir entre l'authentification intégrée ou l'authentification IAM pour les bases de données.

Authentification IAM pour les bases de données Authentification intégrée
Description L'authentification IAM pour les bases de données vous permet de vous authentifier auprès des bases de données avec des comptes utilisateur et de service IAM Google Cloud à l'aide de jetons d'accès de courte durée au lieu de mots de passe. Vous pouvez gérer les droits sur les bases de données à l'aide de comptes principaux IAM tels que des utilisateurs, des comptes de service et des groupes. L'authentification intégrée utilise des noms d'utilisateur et des mots de passe locaux de la base de données pour authentifier les utilisateurs de la base de données.
Points de décision Préférez-vous centraliser la gestion des utilisateurs sur les services Google Cloudà l'aide d'IAM dans Google Cloud ? Si oui, utilisez l'authentification IAM pour les bases de données. Avez-vous des applications ou des workflows qui dépendent de l'authentification intégrée à la base de données ? Si oui, utilisez l'authentification intégrée.
Options de configuration

Vous pouvez utiliser l'authentification IAM pour les bases de données pour des utilisateurs IAM individuels, des comptes de service individuels et des groupes. Pour en savoir plus, consultez Gérer les utilisateurs avec l'authentification IAM pour les bases de données .

Si vous utilisez un connecteur Cloud SQL, celui-ci gère l'actualisation automatique des jetons d'accès IAM. Pour en savoir plus, consultez Authentification IAM automatique pour les bases de données.

Vous pouvez utiliser l'authentification intégrée à la base de données et configurer des règles de mot de passe au niveau de l'instance et de l'utilisateur. Pour en savoir plus, consultez Authentification intégrée.
Résumé Recommandation : Sauf si vous avez des applications ou des workflows qui dépendent de l'authentification intégrée à la base de données, utilisez l'authentification IAM pour les bases de données chaque fois que possible.

Supprimer les options de mise en réseau d'une instance

Cloud SQL permet de supprimer les options de mise en réseau suivantes d'une instance :

  • Adresse IP publique d'une instance disposant à la fois d'un accès aux services privés et d'une adresse IP publique
  • Adresse IP publique d'une instance avec adresse IP publique, accès aux services privés et Private Service Connect
  • Private Service Connect à partir d'une instance avec Private Service Connect et l'accès aux services privés
  • Private Service Connect à partir d'une instance avec Private Service Connect, l'accès aux services privés et une adresse IP publique

Activer les options de mise en réseau pour une instance

Cloud SQL permet d'activer les options de connexion suivantes pour les instances :

  • Accès aux services privés sur une instance avec adresse IP publique uniquement
  • Private Service Connect sur une instance avec accès aux services privés uniquement
  • Private Service Connect sur une instance avec accès aux services privés et adresse IP publique
  • Adresse IP publique sur une instance avec accès aux services privés uniquement

Limites

  • Vous ne pouvez pas créer d'instance avec une adresse IP publique et Private Service Connect.
  • Vous ne pouvez pas supprimer l'accès aux services privés d'une instance avec l'accès aux services privés et Private Service Connect.
  • Vous ne pouvez pas supprimer l'accès aux services privés d'une instance disposant de l'accès aux services privés et d'une adresse IP publique.
  • Si vous disposez d'une instance qui n'utilise qu'une adresse IP publique, vous ne pouvez pas activer à la fois l'accès aux services privés et Private Service Connect. Activez d'abord l'accès aux services privés, puis Private Service Connect.
  • Vous ne pouvez pas utiliser de réseaux autorisés pour ajouter des adresses IP à la liste d'autorisation pour les instances Private Service Connect.

Outils permettant de se connecter à Cloud SQL

Le tableau suivant contient des options permettant de se connecter à Cloud SQL :

Option de connexion En savoir plus
Proxy d'authentification Cloud SQL
gcloud CLI
Connecteurs de langage Cloud SQL
Cloud Shell
Apps Script
Cloud Code
Google Cloud Data Agent Kit
Se connecter à l'aide d'outils d'administration de bases de données tiers
MySQL Workbench
Toad pour MySQL
SQuirrel SQL
phpMyAdmin

Résoudre les problèmes

Si vous rencontrez des problèmes de connexion, consultez les pages suivantes pour obtenir des conseils de débogage ou de recherche de solutions à des problèmes connus :

Étape suivante