Configurar o Acesso Google particular no Firestore com compatibilidade com o MongoDB

Nesta página, descrevemos como ativar e configurar o Acesso privado do Google no Firestore com compatibilidade com o MongoDB.

Sobre o Acesso restrito do Google no Firestore com compatibilidade com o MongoDB

Por padrão, quando uma VM do Compute Engine não tem um endereço IP externo atribuído à interface de rede dela, ela só pode enviar pacotes para outros destinos de endereço IP interno. Permita que essas VMs se conectem ao conjunto de endereços IP externo usados pelo serviço do Firestore com compatibilidade com o MongoDB. Para isso, ative o Acesso privado do Google na sub-rede usada pela interface de rede da VM.

Serviços e protocolos aplicáveis

  • As instruções neste guia são válidas apenas para o Firestore com compatibilidade com o MongoDB.

  • Os domínios padrão e VIP usados pelo Firestore com compatibilidade com o MongoDB e os intervalos de IP só oferecem suporte ao protocolo TcpProxy MongoDB. Todos os outros protocolos não são compatíveis.

Requisitos de rede

Se todas as condições abaixo forem atendidas, uma interface de VM poderá enviar pacotes para os endereços IP externos dos serviços e das APIs do Google usando o Acesso privado do Google:

  • A interface da VM está conectada a uma sub-rede em que o Acesso privado do Google está ativado.

  • A interface da VM não tem um endereço IP externo atribuído a ela.

  • O endereço IP de origem dos pacotes enviados da VM corresponde a um dos seguintes endereços IP.

    • O endereço IPv4 interno principal da interface da VM
    • Um endereço IPv4 interno de um intervalo de IP do alias

Uma VM com um endereço IPv4 externo atribuído à interface de rede não precisa do Acesso privado do Google para se conectar às APIs e serviços do Google. No entanto, a rede VPC precisa atender aos requisitos para acessar as APIs e os serviços do Google.

Permissões do IAM

Proprietários de projetos, editores e principais do IAM com o papel de Administrador de rede podem criar ou atualizar sub-redes e atribuir endereços IP.

Para mais informações sobre papéis, leia a documentação dos papéis do IAM.

Logging

O Cloud Logging captura todas as solicitações de API feitas de instâncias de VM em sub-redes com Acesso privado do Google ativado. As entradas de registro identificam a origem da solicitação de API como um endereço IP interno da instância de chamada.

É possível configurar para que relatórios de uso diário e de acúmulo mensal sejam entregues em um bucket do Cloud Storage. Consulte a página Como ver relatórios de uso para mais detalhes.

Resumo da configuração

A tabela a seguir resume as diferentes maneiras de configurar o Acesso privado do Google no Firestore com compatibilidade com o MongoDB. Para instruções mais detalhadas, consulte Configuração de rede.

Opção de domínio Intervalos de IP Configuração do DNS Configuração de roteamento Configuração do firewall

Domínio padrão (firestore.goog)

Os domínios padrão são usados quando você não configura registros DNS para restricted.firestore.goog.

136.124.0.0/23 Você acessa o serviço do Firestore com compatibilidade com o MongoDB pelos endereços IP públicos dele. Portanto, nenhuma configuração especial de DNS é necessária.

Verifique se a rede VPC pode rotear o tráfego para os intervalos de endereços IP usados pelo serviço do Firestore com compatibilidade com o MongoDB.

  • Configuração básica: confirme se você tem rotas padrão com o próximo salto default-internet-gateway e um intervalo de destino 0.0.0.0/0. Crie essas rotas se elas estiverem ausentes.
  • Configuração personalizada: crie rotas para o intervalo de endereços IP 136.124.0.0/23.

Verifique se as regras de firewall permitem o envio da saída ao intervalo de endereços IP 136.124.0.0/23.

A regra de firewall de permissão de saída padrão permite esse tráfego, se não houver uma regra de prioridade mais alta que o bloqueie.

restricted.firestore.goog

Use restricted.firestore.goog para acessar o serviço do Firestore com compatibilidade com o MongoDB usando um conjunto de endereços IP somente roteáveis de dentro do Google Cloud. Pode ser usado em cenários do VPC Service Controls.

199.36.153.2/31 Configure os registros DNS para enviar solicitações ao intervalo de endereços IP 199.36.153.2/31. Verifique se a rede VPC tem rotas para o intervalo de endereços IP 199.36.153.2/31. Verifique se as regras de firewall permitem o envio da saída ao intervalo de endereços IP 199.36.153.2/31.

Configuração de rede

Nesta seção, descrevemos como configurar sua rede para acessar o Firestore com compatibilidade com o MongoDB usando o Acesso privado do Google.

Configuração do DNS

Ao contrário de outras APIs do Google, a API do Firestore com compatibilidade com o MongoDB usa diferentes nomes de domínio e endereços IP para o Acesso privado do Google:

  • O restricted.firestore.goog permite o acesso à API do Firestore com compatibilidade com o MongoDB.

    • Endereços IP: 199.36.153.2 e 199.36.153.3.

    • Como o Firestore com compatibilidade com o MongoDB está em conformidade com o VPC Service Controls, você pode usar esse domínio em cenários do VPC Service Controls.

Para criar uma zona e registros do DNS para o Firestore com compatibilidade com o MongoDB:

  1. Crie uma zona do DNS particular para firestore.goog.

    Considere criar uma zona particular do Cloud DNS para essa finalidade.

  2. Na zona firestore.goog, crie os seguintes registros:

    1. Um registro A para restricted.firestore.goog que aponta para os seguintes endereços IP: 199.36.153.2 e 199.36.153.3.

    2. Um registro CNAME para *.firestore.goog que aponta para restricted.firestore.goog.

    Para criar esses registros no Cloud DNS, consulte Adicionar um registro.

Configuração de roteamento

A rede VPC precisa ter rotas apropriadas com os próximos saltos que são o gateway de Internet padrão. Google Cloud não é compatível com o tráfego de roteamento para APIs e serviços do Google por meio de outras instâncias de VM ou próximos saltos personalizados. Embora sejam chamados de gateway de Internet padrão, os pacotes enviados das VMs na sua rede VPC para APIs e serviços do Google permanecem na rede do Google.

  • Se você selecionar a opção de domínio padrão, suas instâncias de VM se conectarão ao serviço do Firestore com compatibilidade com o MongoDB usando o seguinte intervalo de endereços IP públicos: 136.124.0.0/23 . Esses endereços IP são roteados publicamente, mas o caminho de uma VM em uma rede VPC para esses endereços permanece na rede do Google.

  • O Google não divulga rotas na Internet para nenhum dos endereços IP usados pelo domínio restricted.firestore.goog. Consequentemente, esse domínio só pode ser acessado por VMs em uma rede VPC ou sistemas locais conectados a uma rede VPC.

Se sua rede VPC tiver uma rota padrão em que o próximo salto seja o gateway de Internet padrão, use essa rota para acessar o serviço do Firestore com compatibilidade com MongoDB sem precisar criar rotas personalizadas. Consulte Roteamento com uma rota padrão para mais detalhes.

Se você substituiu uma rota padrão (destino 0.0.0.0/0 ou ::0/0) por uma rota personalizada em que o próximo salto não é o gateway de Internet padrão, é possível atender aos requisitos de roteamento do Firestore com o serviço de compatibilidade com o MongoDB usando o roteamento personalizado.

Como rotear com uma rota padrão

Cada rede VPC contém uma rota padrão IPv4 (0.0.0.0/0) quando ela é criada.

A rota padrão fornece um caminho para os endereços IP dos seguintes destinos:

  • Domínio padrão (firestore.goog): 136.124.0.0/23
  • restricted.firestore.goog: 199.36.153.2/31

Para instruções do console do Google Cloud e da Google Cloud CLI sobre como verificar a configuração de uma rota padrão em uma determinada rede, consulte Configurar o Acesso privado do Google.

Como rotear com rotas personalizadas

Como alternativa a uma rota padrão, é possível usar rotas estáticas personalizadas, cada uma com um destino mais específico e cada uma usando o próximo salto de gateway de Internet padrão. Os endereços IP de destino das rotas dependem do domínio escolhido:

  • Domínio padrão (firestore.goog): 136.124.0.0/23
  • restricted.firestore.goog: 199.36.153.2/31

Para instruções do console do Google Cloud e da Google Cloud CLI sobre como verificar a configuração de rotas personalizadas em uma determinada rede, consulte Configurar o Acesso privado do Google.

Configuração do firewall

A configuração do firewall da rede VPC precisa permitir o acesso de VMs aos endereços IP usados pelo serviço do Firestore com compatibilidade com o MongoDB. A regra allow egress implícita atende a esse requisito.

Em algumas configurações de firewall, é preciso criar regras de permissão de saída específicas. Por exemplo, suponha que você tenha criado uma regra de negação de saída que bloqueia o tráfego para todos os destinos (0.0.0.0 para IPv4). Nesse caso, é preciso criar uma regra de firewall de permissão de saída com prioridade maior do que a regra de negação de saída para cada intervalo de endereços IP usado pelo domínio escolhido:

  • Domínio padrão (firestore.goog: 136.124.0.0/23
  • restricted.firestore.goog: 199.36.153.2/31

Para criar regras de firewall, consulte Como criar regras de firewall. É possível limitar as VMs às quais as regras de firewall se aplicam ao definir o destino de cada regra de permissão de saída.

Configuração do Acesso privado do Google

É possível ativar o Acesso privado do Google depois de atender aos requisitos de rede na sua rede VPC. Para instruções do console Google Cloud e da Google Cloud CLI, siga as etapas descritas em Ativar o Acesso privado do Google.

A seguir