Choisir une option de connectivité

Pour sélectionner la topologie de réseau et la méthode de connexion adaptées à votre charge de travail AlloyDB pour PostgreSQL, comparez l'adresse IP privée (accès aux services privés ou Private Service Connect), l'adresse IP publique, les connexions directes, le proxy d'authentification AlloyDB et les connecteurs de langage AlloyDB :

  • Quel type de configuration réseau utiliser avec AlloyDB.
  • Comment se connecter de manière sécurisée ?
  • Bonnes pratiques concernant les connexions.
  • L'impact de l'emplacement de votre charge de travail sur vos exigences de connectivité.

Pour en savoir plus, consultez la présentation des connexions.

Options recommandées pour se connecter à AlloyDB

Utilisez le tableau suivant pour découvrir les options de connectivité recommandées pour vos charges de travail :

Évaluer votre charge de travail

Avant de choisir une option de connectivité, évaluez votre charge de travail. AlloyDB est compatible avec la connectivité de votre environnement de charge de travail pour les éléments suivants :

  • Cloud Run, Cloud Shell et produits SaaS non Google
  • Fonctions Cloud Run
  • Environnement flexible App Engine et environnement standard App Engine
  • Google Kubernetes Engine et Compute Engine
  • Environnements sur site

    Environnement de charge de travail Adresse IP privée Adresse IP publique Description
    Direct Connecteur Direct Connecteur
    Ordinateur portable de développeur ❌️ ❌️ ✅ ✅ Nous vous recommandons d'utiliser la commande gcloud beta alloydb connect. Vous pouvez également utiliser le proxy d'authentification avec une adresse IP publique. Il est possible de se connecter à une adresse IP privée, mais cela nécessite une configuration supplémentaire.
    Cloud Shell ❌ ❌ ✅ ✅ Nous vous recommandons d'utiliser la commande gcloud beta alloydb connect. Vous pouvez également utiliser le proxy d'authentification avec une adresse IP publique depuis Cloud Shell. Il est possible de se connecter à une adresse IP privée, mais cela nécessite une configuration supplémentaire.
    Cloud Run, Cloud Run Functions ✅ ✅ ✅ ✅ Nécessite un connecteur d'accès au VPC sans serveur ou une sortie VPC directe.
    Environnements standard et flexible App Engine ✅ ✅ ✅ ✅ Nécessite un connecteur d'accès au VPC sans serveur.
    GKE, Compute Engine ✅ ✅ ✅ ✅ Nous vous recommandons d'utiliser une adresse IP privée. Utilisez l'accès aux services privés lorsque vous n'avez pas besoin d'un appairage de réseaux VPC transitif. Sinon, utilisez Private Service Connect.
    Sur site ✅ ✅ ✅ ✅ L'adresse IP privée nécessite un chemin d'accès réseau entre l'environnement sur site et l'instance cible. L'adresse IP publique avec des connecteurs de langage ou avec le proxy d'authentification est une alternative sécurisée qui ne nécessite pas de configuration réseau complexe.

Bonnes pratiques de connectivité en fonction de votre charge de travail

Lorsque vous vous connectez à AlloyDB, tenez compte des points suivants en fonction de votre environnement de charge de travail.

Cloud Shell

  • Utilisez le proxy d'authentification avec une adresse IP publique pour vous connecter à Cloud Shell. Cloud Shell n'est pas compatible avec la connexion à un réseau cloud privé virtuel (VPC). Il n'est pas connecté aux instances d'accès aux services privés ni à Private Service Connect. De plus, Cloud Shell ne dispose pas d'une adresse IP sortante stable à utiliser dans les réseaux externes autorisés. Si vous n'utilisez pas le proxy d'authentification ni les connecteurs de langage, vous devez autoriser toutes les plages d'adresses IP, par exemple 0.0.0.0/0. Nous ne recommandons pas cette approche pour les instances de production.

Cloud Run et Cloud Run Functions

  • Pour les adresses IP privées, les connexions directes et les connecteurs de langage ou le proxy d'authentification doivent utiliser la sortie VPC directe.
  • Pour les adresses IP publiques, vous devez utiliser des connecteurs de langage ou le proxy d'authentification. Vous pouvez également autoriser toutes les plages d'adresses IP (par exemple, 0.0.0.0/0) dans les réseaux externes autorisés, mais cette approche n'est pas recommandée pour les instances de production en raison du risque de sécurité.

Environnement standard App Engine et environnement flexible App Engine

  • Utilisez un connecteur d'accès au VPC sans serveur pour l'adresse IP privée, que vous utilisiez un connecteur de langage ou le proxy d'authentification.
  • Pour les adresses IP publiques, vous devez utiliser des connecteurs de langage ou le proxy d'authentification. Vous pouvez également autoriser toutes les plages d'adresses IP (par exemple, 0.0.0.0/0) dans les réseaux externes autorisés. Toutefois, en raison des risques de sécurité, nous ne recommandons pas cette approche pour les instances de production.

GKE et Compute Engine

  • Vous pouvez utiliser à la fois des connexions directes et des connecteurs de langage ou le proxy d'authentification pour vous connecter à AlloyDB.

Sur site

  • Vous pouvez utiliser à la fois des connexions directes et des connecteurs de langage ou le proxy d'authentification pour vous connecter à AlloyDB. Les connecteurs de langage et le proxy d'authentification ne créent pas de chemin réseau. Assurez-vous qu'il existe un chemin réseau entre votre charge de travail et l'instance AlloyDB.

Sécuriser les connexions avec le proxy d'authentification AlloyDB et les connecteurs

Les connecteurs de langage AlloyDB et le proxy d'authentification AlloyDB offrent des fonctionnalités de sécurité améliorées, telles que l'authentification de base de données Identity and Access Management (IAM) et mTLS, mais ces fonctionnalités nécessitent une configuration supplémentaire. Les connexions directes, bien que chiffrées par défaut, ne sont pas compatibles avec les certificats clients ni avec les modes SSL plus élevés : verify-ca et verify-full. Nous vous recommandons d'utiliser les connecteurs de langage ou le proxy d'authentification avec une adresse IP publique, et d'utiliser des connexions directes pour une adresse IP privée uniquement lorsque les connecteurs de langage ou le proxy d'authentification ne sont pas possibles.

L'authentification IAM pour les bases de données accepte deux approches : l'authentification individuelle et l'authentification de groupe. L'authentification de groupe est compatible avec la version POSTGRES_15 de la base de données et les versions ultérieures, mais pas avec le regroupement de connexions géré.

Mode de connexion Connexion chiffrée Authentification IAM Autorisation IAM mTLS
Connexion directe ✅ ✅ ❌ ❌
Connecteurs de langage ou proxy d'authentification ✅ ✅ ✅ ✅

Bonnes pratiques pour une connectivité sécurisée

  • Lorsque vous créez un cluster, vous devez spécifier une interface IP privée pour que le cluster puisse être créé. Si vous souhaitez utiliser une adresse IP publique, nous vous recommandons de choisir Private Service Connect comme interface d'adresse IP privée.
  • Utilisez les connecteurs de langage ou le proxy d'authentification pour les fonctionnalités de sécurité telles que l'autorisation et l'authentification IAM, ainsi que mTLS, même si elles nécessitent une configuration. Par exemple, cette approche est bien adaptée si vous souhaitez exécuter le proxy d'authentification AlloyDB en tant que side-car ou si vous souhaitez utiliser un connecteur de langage AlloyDB. Si vous utilisez des connecteurs de langage ou le proxy d'authentification, la latence de votre connexion à la base de données peut augmenter légèrement.
  • Utilisez des connexions directes pour des performances optimales et lorsque les connecteurs de langage ou le proxy d'authentification ne sont pas possibles. Les connexions directes sont chiffrées par défaut (sslmode=require), mais elles ne sont pas compatibles avec les certificats clients ni les modes SSL supérieurs. N'utilisez des connexions directes que lorsque les connecteurs de langage ou le proxy d'authentification ne peuvent pas être utilisés.

Évaluer la topologie de votre réseau

Pour la topologie du réseau, nous vous recommandons d'utiliser l'accès aux services privés pour les connexions AlloyDB. Utilisez Private Service Connect pour éviter les problèmes d'appairage transitif avec plusieurs réseaux VPC. L'adresse IP publique convient aux connexions à partir de produits non-Google Cloud SaaS, en particulier lorsque l'adresse IP privée n'est pas pratique.

Network Topology Connexions multi-VPC Clients SaaS non Google Compatible avec les connexions sur site Description
Accès aux services privés ❌ ❌ ✅ La connectivité VPC transitive n'est pas acceptée par défaut. Vous pouvez exécuter manuellement un proxy SOCKS5 pour la connectivité entre VPC, mais cette approche est complexe.
Private Service Connect ✅ ❌ ✅ Fournit la configuration la plus simple lorsque vous souhaitez vous connecter à AlloyDB à partir de plusieurs réseaux VPC.
Adresse IP publique ✅ ✅ ✅ Pour éviter d'avoir à identifier les plages CIDR de la charge de travail source pour les réseaux externes autorisés, il est préférable d'associer l'adresse IP publique aux connecteurs de langage ou au proxy d'authentification.

Bonnes pratiques pour la connectivité en fonction de votre topologie réseau

  • Par défaut, utilisez l'accès aux services privés.
  • Lorsque vous gérez plusieurs réseaux VPC, utilisez Private Service Connect pour contourner les problèmes d'appairage transitif.
  • Pour les produits non-Google Cloud SaaS, choisissez une topologie de réseau public lorsque vous intégrez des produits SaaS (Software-as-a-Service) qui ne sont pas hébergés sur Google Cloud, en particulier si la connectivité IP privée n'est pas possible. L'adresse IP privée est activée par défaut. Vous devez donc configurer explicitement l'adresse IP publique dans ces scénarios.
  • Dans la mesure du possible, utilisez les connecteurs de langage ou le proxy d'authentification lorsque vous utilisez une adresse IP publique pour établir une connexion sécurisée sans avoir à configurer de réseaux externes autorisés.

Étapes suivantes