Options d'accès privé pour les services

Google Cloud propose plusieurs options d'accès privé. Chaque option permet aux instances de machine virtuelle (VM) disposant d'adresses IP internes d'accéder à certaines API et à certains services. Choisissez une option compatible avec les API et les services auxquels vous devez accéder.

Le tableau suivant résume chaque option. Vous pouvez configurer toutes ces options ou l'une d'entre elles. Elles fonctionnent indépendamment les unes des autres.

Option Clients Connexion Services compatibles Utilisation
Accès privé à Google
Instances de VM Google Cloud sans adresse IP externe. Connexion aux adresses IP externes standards ou aux domaines et adresses IP virtuelles de l'accès privé à Google pour les API et services Google, via la passerelle Internet par défaut du réseau cloud privé virtuel (VPC, Virtual Private Cloud). Compatible avec la plupart des API et services Google Également compatible avec l'accès aux applications App Engine. Utilisez cette option pour vous connecter aux API et services Google sans avoir à attribuer des adresses IP externes à vos ressources Google Cloud.
Accès privé à Google pour les hôtes sur site
Hôtes sur site associés ou non à des adresses IP externes. Connexion aux API et services Google depuis votre réseau sur site via un tunnel Cloud VPN ou Cloud Interconnect, avec l'un des domaines et l'une des adresses IP virtuelles spécifiques pour l'accès privé à Google. Les services Google auxquels vous pouvez accéder dépendent du domaine spécifique pour l'accès privé à Google que vous utilisez. Utilisez cette option pour vous connecter aux API et services Google via un réseau VPC. Vos hôtes sur site n'ont pas besoin d'adresses IP externes pour utiliser cette méthode.
Accès aux services privés
Instances de VM Google Cloud associées ou non à des adresses IP externes. Connectez-vous à un réseau VPC géré par Google ou un tiers via une connexion d'appairage de réseaux VPC. Compatible avec certains services Google ou tiers Utilisez cette option pour vous connecter à des services Google ou tiers spécifiques sans avoir à attribuer des adresses IP externes à vos ressources Google Cloud et vos ressources Google ou tierces.
Accès au VPC sans serveur
Instances de VM Google Cloud associées ou non à des adresses IP externes. Connectez-vous directement à partir de services Google sans serveur via une connexion VPC interne. Cloud Run (entièrement géré), environnement standard App Engine et Cloud Functions Utilisez cette option pour vous connecter directement depuis un environnement sans serveur sur Google Cloud aux ressources d'un réseau VPC à l'aide d'adresses IP internes.

Accès privé à Google

Les instances de VM ne disposant que d'adresses IP internes (pas d'adresses IP externes) peuvent utiliser l'accès privé à Google. Elles peuvent accéder aux adresses IP externes des API et services Google. L'adresse IP source du paquet peut être l'adresse IP interne principale de l'interface réseau ou une adresse d'une plage d'adresses IP d'alias attribuée à l'interface. Si vous désactivez l'accès privé à Google, les instances de VM ne peuvent plus accéder aux API et services Google. Elles ne peuvent qu'envoyer du trafic au sein du réseau VPC.

L'accès privé à Google n'a aucune répercussion sur les instances disposant d'adresses IP externes. Les instances ayant des adresses IP externes peuvent accéder à Internet selon les conditions d'accès à Internet. Elles n'ont pas besoin de configuration spéciale pour envoyer des demandes aux adresses IP externes des API et services Google.

Vous activez l'accès privé à Google sous-réseau par sous-réseau. Il s'agit d'un paramètre pour les sous-réseaux d'un réseau VPC. Pour activer l'accès privé à Google pour un sous-réseau et afficher les conditions requises, consultez Configurer l'accès privé à Google.

Services compatibles

L'accès privé à Google permet d'accéder aux API Cloud et de développement, ainsi qu'à la plupart des services Google Cloud, à l'exception des services suivants :

  • Memcache d'App Engine
  • Filestore
  • Memorystore
  • Cloud SQL

L'accès aux services privés peut être compatible avec un ou plusieurs de ces services.

Exemple

Dans l'exemple suivant, le réseau VPC répond aux exigences de routage de l'accès privé à Google, car le saut suivant de ses routes vers les adresses IP externes des API et services Google est défini sur la passerelle Internet par défaut. L'accès privé à Google est activé pour le sous-réseau subnet-a, mais pas pour le sous-réseau subnet-b.

Mise en œuvre de l'accès privé à Google (cliquez pour agrandir)

La liste suivante fournit des précisions sur le diagramme ci-dessus :

  • Les règles de pare-feu du réseau VPC ont été configurées pour autoriser la sortie vers 0.0.0.0/0 (ou au moins vers les adresses IP des serveurs pour les API et services Google).
  • La machine virtuelle VM A1 peut accéder aux API et services Google, tels que Cloud Storage, car son interface réseau se trouve dans le sous-réseau subnet-a pour lequel l'accès privé à Google est activé. L'accès privé à Google s'applique à l'instance, car elle ne possède qu'une adresse IP privée.
  • La machine virtuelle VM B1 ne peut pas accéder aux API et services Google, car elle ne dispose que d'une adresse IP interne et l'accès privé à Google est désactivé pour le sous-réseau subnet-b.
  • Les machines virtuelles VM A2 et VM B2 peuvent toutes deux accéder aux API et services Google, tels que Cloud Storage, car elles ont chacune des adresses IP externes. L'accès privé à Google n'a aucune incidence sur les autorisations d'accès des instances aux API et services Google, car elles ont toutes les deux des adresses IP externes.

Accès privé à Google pour les hôtes sur site

Les hôtes sur site peuvent accéder aux API et services Google en utilisant Cloud VPN ou Cloud Interconnect depuis votre réseau sur site vers Google Cloud. Les hôtes sur site peuvent envoyer du trafic depuis les types d'adresses IP sources suivants :

  • Une adresse IP privée, telle qu'une adresse RFC 1918
  • Une adresse IP publique utilisée en mode privé, à l'exception des adresses IP publiques appartenant à Google (La fonctionnalité d'accès privé à Google pour les hôtes sur site ne permet pas de réutiliser des adresses IP publiques de Google comme sources au sein de votre réseau sur site.)

Pour activer l'accès privé Google pour les hôtes sur site, vous devez configurer le DNS, les règles de pare-feu et les routes pour vos réseaux sur site et VPC. Vous n'avez pas besoin d'activer l'accès privé à Google pour les sous-réseaux de votre réseau VPC, contrairement à ce que vous feriez pour activer l'accès privé à Google pour des instances de VM Google Cloud.

Les hôtes sur site doivent se connecter aux API et services Google à l'aide des adresses IP virtuelles des domaines restricted.googleapis.com ou private.googleapis.com. Pour plus d'informations, reportez-vous à la section Domaines et adresses IP virtuelles spécifiques pour l'accès privé à Google.

Google rend publics les enregistrements DNS A qui permettent la résolution des domaines vers une plage VIP. Même si les plages ont des adresses IP externes, Google ne publie pas de routes pour celles-ci. Par conséquent, vous devez ajouter une annonce de routage personnalisée sur un routeur Cloud Router et disposer d'une route statique personnalisée adéquate au sein de votre réseau VPC pour la destination de l'adresse IP virtuelle.

La route doit avoir une destination correspondant à l'une des plages d'adresses IP virtuelles, le saut suivant étant la passerelle Internet par défaut. Le trafic envoyé à la plage d'adresses IP virtuelles reste sur le réseau de Google sans traverser l'Internet public, car Google ne publie pas en externe de routes menant à ces plages.

Pour plus d'informations sur la configuration, consultez la page Configurer l'accès privé à Google pour les hôtes sur site.

Domaines et adresses IP virtuelles spécifiques pour l'accès privé à Google

Le tableau suivant décrit les noms de domaine et la plage VIP correspondante. Vous devez utiliser l'une de ces adresses IP virtuelles pour l'accès privé à Google pour les hôtes sur site.

Domaine et adresses IP virtuelles Services compatibles Exemple d'utilisation
restricted.googleapis.com
199.36.153.4/30
Autorise l'accès API aux API et services Google compatibles avec VPC Service Controls.
Bloque l'accès aux API et services Google qui ne sont pas compatibles avec VPC Service Controls. Non compatible avec les applications Web G Suite ou les API G Suite.
Utilisez restricted.googleapis.com pour que seuls les services restreints de VPC Service Controls soient disponibles pour les hôtes de votre réseau VPC ou de votre réseau sur site.
private.googleapis.com
199.36.153.8/30
Autorise l'accès API à la plupart des API et services Google, qu'ils soient ou non compatibles avec VPC Service Controls. Inclut l'accès API à Google Maps, Google Ads, Google Cloud Platform et la plupart des autres API Google dont le nom se termine par googleapis.com. Non compatible avec les applications Web G Suite. Utilisez private.googleapis.com lorsque vous devez accéder aux API et services Google dans les cas suivants :
  • Vous n'utilisez pas VPC Service Controls.
  • Vous utilisez VPC Service Controls, mais vous devez également accéder à des services qui ne sont pas compatibles avec VPC Service Controls.

Services compatibles

Les services disponibles pour les hôtes sur site sont limités aux services acceptés par le nom de domaine et l'adresse IP virtuelle utilisés pour y accéder. Pour plus d'informations, consultez la section Domaines et adresses IP virtuelles spécifiques pour l'accès privé à Google.

Exemple

Dans l'exemple suivant, le réseau local est connecté à un réseau VPC via un tunnel Cloud VPN. Le trafic des hôtes locaux vers les API Google passe par le tunnel vers le réseau VPC. Une fois que le trafic atteint le réseau VPC, il est envoyé via une route utilisant la passerelle Internet par défaut comme saut suivant. Ce saut suivant permet au trafic de quitter le réseau VPC et d'être transmis à restricted.googleapis.com (199.36.153.4/30).

Accès privé à Google pour un cas d'utilisation de cloud hybride (cliquez pour agrandir)
  • La configuration DNS sur site mappe les requêtes *.googleapis.com avec restricted.googleapis.com, qui pointe vers la plage 199.36.153.4/30.
  • Cloud Router a été configuré pour annoncer la plage d'adresses IP 199.36.153.4/30 via le tunnel Cloud VPN à l'aide d'une annonce de routage personnalisée. Le trafic envoyé vers les API Google est acheminé via le tunnel vers le réseau VPC.
  • Une route statique personnalisée a été ajoutée au réseau VPC qui dirige le trafic ayant comme destination 199.36.153.4/30 vers la passerelle Internet par défaut (définie comme saut suivant). Google achemine ensuite le trafic vers l'API ou le service approprié.
  • Si vous avez créé une zone gérée privée Cloud DNS pour *.googleapis.com mappée avec la plage 199.36.153.4/30, et que vous avez autorisé cette zone à être utilisée par votre réseau VPC, toute requête vers une ressource du domaine googleapis.com est envoyée aux adresses IP utilisées par restricted.googleapis.com. Seules les API compatibles sont accessibles avec cette configuration, ce qui peut rendre d'autres services inaccessibles. Cloud DNS n'est pas compatible avec les remplacements partiels. Si vous avez besoin de remplacements partiels, utilisez BIND.

Accès aux services privés

Google et des tiers (appelés collectivement des producteurs de services) peuvent proposer des services avec des adresses IP internes hébergées sur un réseau VPC. L'accès aux services privés vous permet d'atteindre ces adresses IP internes. Cela est utile si vous souhaitez que les instances de machine virtuelle de votre réseau VPC utilisent des adresses IP internes au lieu d'adresses IP externes. Pour plus d'informations sur l'utilisation de l'accès aux services privés, consultez la page Configurer l'accès aux services privés.

L'accès aux services privés nécessite l'allocation d'une plage d'adresses IP internes, puis la création d'une connexion privée. Une plage allouée est un bloc CIDR réservé qui ne peut pas être utilisé sur votre réseau VPC local. Elle est réservée aux producteurs de services, et elle empêche les chevauchements entre votre réseau VPC et celui du producteur de services. Lorsque vous créez une connexion privée, vous devez spécifier une allocation.

La connexion privée relie votre réseau VPC au réseau VPC du producteur de services. Cette connexion permet aux instances de VM de votre réseau VPC d'utiliser des adresses IP internes pour accéder aux ressources de services possédant de telles adresses. Vos instances peuvent avoir des adresses IP externes, mais les adresses IP externes ne sont pas obligatoires pour l'accès aux services privés et ne sont pas utilisées dans ce cadre.

Si un producteur de services propose plusieurs services, vous n'avez besoin que d'une seule connexion privée. Lorsque vous créez une connexion privée, vous utilisez l'API Service Networking pour la créer. Cependant, Google Cloud met en œuvre cette connexion en tant que connexion d'appairage de réseaux VPC entre votre réseau VPC et celui du producteur de services. Par exemple, votre réseau VPC l'affiche sous la forme d'une connexion d'appairage. Pour supprimer la connexion privée, vous devez supprimer la connexion d'appairage.

Vous ne pouvez utiliser l'accès aux services privés qu'avec les services compatibles. Vérifiez auprès du producteur de services la possibilité de créer une connexion privée.

Réseau de producteurs de services

Du côté du producteur de services de la connexion privée, il y a un réseau VPC où vos ressources de service sont provisionnées. Le réseau du producteur de services est créé exclusivement pour vous et ne contient que vos ressources.

Une ressource sur le réseau du producteur de services est semblable à une autre ressource de votre réseau VPC. Par exemple, elle est accessible via des adresses IP internes par d'autres ressources de votre réseau VPC. Vous pouvez également créer des règles de pare-feu dans votre réseau VPC afin de contrôler l'accès au réseau du producteur de services.

Pour en savoir plus sur les accès côté producteur de services, consultez la section Activer l'accès aux services privés dans la documentation de Service Infrastructure. Cette documentation est fournie à titre de référence seulement, et n'est pas nécessaire pour activer ou utiliser l'accès aux services privés.

Accès aux services privés et connectivité sur site

Dans les scénarios de mise en réseau hybride, un réseau sur site est connecté à un réseau VPC via une connexion Cloud VPN ou Cloud Interconnect. Par défaut, les hôtes sur site ne peuvent pas atteindre le réseau du producteur de services en utilisant l'accès aux services privés.

Dans le réseau VPC, vous pouvez disposer de routes statiques ou dynamiques personnalisées pour diriger correctement le trafic vers votre réseau sur site. Cependant, le réseau du producteur de services ne contient pas ces mêmes routes. Lorsque vous créez une connexion privée, le réseau VPC et le réseau du producteur de services n'échangent que des routes de sous-réseau.

Vous devez exporter les routes personnalisées du réseau VPC afin que le réseau du producteur de services puisse les importer et acheminer correctement le trafic vers votre réseau sur site.

Pour exporter des routes personnalisées, vous devez créer une connexion privée, puis modifier la configuration d'appairage de VPC sous-jacente pour exporter les routes personnalisées. Pour plus d'informations sur la création d'une connexion privée, reportez-vous à la section Configurer l'accès aux services privés. Pour plus d'informations sur l'exportation de routes personnalisées, consultez la section Mettre à jour une connexion d'appairage.

Services compatibles

Les services Google suivants sont compatibles avec l'accès aux services privés :

Exemple

Dans l'exemple suivant, le réseau VPC du client a alloué la plage d'adresses 10.240.0.0/16 aux services Google et a établi une connexion privée utilisant cette plage. Chaque service Google crée un sous-réseau à partir du bloc alloué pour fournir de nouvelles ressources dans une région donnée, telles que des instances Cloud SQL.

Accès aux services privés (cliquez pour agrandir)
  • La connexion privée se voit attribuer la plage 10.240.0.0/16. À partir de cette allocation, les services Google peuvent créer des sous-réseaux où de nouvelles ressources sont provisionnées.
  • Du côté des services Google de la connexion privée, Google crée un projet pour le client. Le projet est isolé, ce qui signifie qu'il n'est partagé avec aucun autre client, et le client est facturé à hauteur des seules ressources qu'il fournit.
  • Chaque service Google crée un sous-réseau dans lequel le client peut provisionner des ressources. La plage d'adresses IP du sous-réseau est généralement un bloc CIDR de /24 choisi par le service et provenant de la plage d'adresses IP allouée. Vous ne pouvez pas modifier le sous-réseau du producteur de services. Un service provisionne de nouvelles ressources dans les sous-réseaux régionaux existants précédemment créés par ce service. Si un sous-réseau est saturé, le service crée un nouveau sous-réseau dans la même région.
  • Les instances de VM du réseau du client peuvent accéder aux ressources de service de n'importe quelle région si le service est compatible. Cependant, certains services peuvent ne pas être compatibles avec la communication interrégionale. Par exemple, les instances de VM ne peuvent communiquer qu'avec les instances Cloud SQL situées dans la même région. Consultez la documentation du service concerné pour plus d'informations.
  • Les coûts de sortie applicables au trafic interrégional, où une instance de VM communique avec des ressources situées dans une région différente, continuent de s'appliquer.
  • L'instance Cloud SQL se voit attribuer l'adresse IP 10.240.0.2. Dans le réseau VPC du client, les requêtes dont la destination est 10.240.0.2 sont acheminées vers la connexion privée via le réseau du producteur de services. Lorsque les requêtes ont atteint le réseau de service, ce dernier contient des routes qui les dirigent vers la ressource appropriée.
  • Le trafic entre les réseaux VPC circule en interne au sein du réseau de Google et non via l'Internet public.

Accès au VPC sans serveur

La fonctionnalité d'accès au VPC sans serveur vous permet de vous connecter directement à votre réseau VPC depuis un environnement sans serveur sur Google Cloud. L'environnement sans serveur peut ainsi accéder aux ressources de votre réseau VPC via des adresses IP internes.

L'accès au VPC sans serveur vous permet de créer un connecteur dans votre projet Google Cloud et de l'associer à un réseau VPC. Vous configurez ensuite vos services sans serveur (tels que les services Cloud Run, les applications App Engine ou Cloud Functions) pour utiliser le connecteur pour le trafic réseau interne.

Avec l'accès au VPC sans serveur, seul l'environnement sans serveur peut lancer des requêtes. Les requêtes lancées par une VM doivent utiliser l'adresse externe de votre service sans serveur. Pour en savoir plus, consultez la section Accès privé à Google.

L'accès au VPC sans serveur n'est pas compatible avec les anciens réseaux ni avec le VPC partagé. Pour plus d'informations, consultez la page Configurer l'accès au VPC sans serveur.

Services compatibles

Les services Google suivants prennent en charge les connecteurs d'accès VPC sans serveur :

  • Cloud Run (entièrement géré)
  • Environnement standard App Engine
    • Tous les environnements d'exécution, sauf PHP 5
  • Cloud Functions

Exemple

Dans l'exemple suivant, App Engine, Cloud Functions et Cloud Run utilisent un connecteur d'accès au VPC sans serveur pour envoyer des requêtes aux ressources internes du réseau VPC.

Exemple d'accès au VPC sans serveur (cliquez pour agrandir)
Exemple d'accès au VPC sans serveur (cliquez pour agrandir)
  • Le connecteur d'accès au VPC sans serveur se trouve dans le même projet et la même région que les services sans serveur.
  • Le connecteur est associé au réseau VPC qui contient les ressources de destination. Le connecteur peut accéder aux ressources situées dans différents réseaux VPC et projets Google Cloud si vous utilisez l'appairage de réseaux VPC.
  • La plage d'adresses IP 10.8.0.0/28 est attribuée au connecteur. Les requêtes envoyées du connecteur à la destination possèdent une adresse IP source dans cette plage.
  • App Engine, Cloud Functions et Cloud Run atteignent les ressources de destination en envoyant des requêtes à leurs adresses IP internes, 10.0.0.4 et 10.1.0.2. Les ressources de destination peuvent être situées dans n'importe quelle région. Les coûts de sortie s'appliquent au trafic envoyé du connecteur vers une ressource d'une autre région.
  • Les requêtes envoyées depuis les environnements sans serveur aux adresses IP internes sont acheminées en interne via le connecteur d'accès au VPC sans serveur vers la ressource de destination. Les requêtes envoyées à des adresses IP externes passent par Internet.

Étapes suivantes