ID da região
O REGION_ID
é um código abreviado que a Google atribui com base na região que seleciona quando cria a sua app. O código não corresponde a um país ou uma província, embora alguns IDs de regiões possam parecer semelhantes aos códigos de países e províncias usados frequentemente. Para apps criadas após
fevereiro de 2020, REGION_ID.r
está incluído nos
URLs do App Engine. Para apps existentes criadas antes desta data, o
ID da região é opcional no URL.
Saiba mais acerca dos IDs de regiões.
Esta secção descreve como usar as definições de entrada para restringir o acesso à rede à sua app do App Engine. Ao nível da rede, por predefinição, qualquer recurso na Internet pode aceder à sua app do App Engine no respetivo URL appspot ou num domínio personalizado configurado no App Engine. Por exemplo, o URL appspot.com
pode ter o seguinte formato:
SERVICE_ID.PROJECT_ID.REGION_ID.r.appspot.com
.
Pode alterar esta definição predefinida especificando uma definição diferente para a entrada. Todos os caminhos de entrada, incluindo o URL appspot.com
predefinido, estão sujeitos à sua definição de entrada. A entrada é definida ao nível do serviço.
Definições de entrada disponíveis
Estão disponíveis as seguintes definições:
Definição | Descrição |
---|---|
Internos |
Mais restritiva. Permite pedidos de recursos anexados às redes VPC do projeto, como:
appspot.com .
Os pedidos de outras origens, incluindo a Internet, não podem aceder ao seu serviço no URL appspot.com ou nos domínios personalizados. Não
existe suporte para multi-tenancy, ou seja, vários domínios de confiança
no mesmo projeto.
|
Interno e Cloud Load Balancing | Permite pedidos dos seguintes recursos:
appspot.com ignoram o Application Load Balancer externo, pelo que esta definição impede que os pedidos externos alcancem o URL appspot.com .
|
Tudo |
Menos restritivas. Permite todos os pedidos, incluindo pedidos diretamente da Internet para o URL appspot.com .
|
Aceder a serviços internos
Aplicam-se as seguintes considerações:
Para pedidos de uma VPC partilhada, o tráfego só é considerado interno se a app do App Engine for implementada no projeto anfitrião da VPC partilhada. Se a app do App Engine for implementada num projeto de serviço de VPC partilhada, apenas o tráfego de redes pertencentes ao próprio projeto da app é interno. Todo o outro tráfego, incluindo o tráfego de outras VPCs partilhadas, é externo.
Quando acede a serviços internos, chame-os como faria normalmente através dos respetivos URLs públicos, quer seja o URL
appspot.com
predefinido ou um domínio personalizado configurado no App Engine.Para pedidos de instâncias de VMs do Compute Engine ou outros recursos em execução numa rede VPC no mesmo projeto, não é necessária nenhuma configuração adicional.
Os pedidos de recursos em redes VPC no mesmo projeto são classificados como internos, mesmo que o recurso de origem tenha um endereço IP público.
Os pedidos de recursos no local ligados à rede VPC através da VPN do Google Cloud são considerados
internal
.
- Para pedidos de outros serviços do App Engine ou de funções do Cloud Run ou do Cloud Run no mesmo projeto, ligue o serviço ou a função a uma rede da VPC e encaminhe toda a saída através do conetor, conforme descrito no artigo Ligar a uma rede da VPC partilhada.
Veja as definições de carregamento
Consola
Aceda à página App Engine Services.
Localize a coluna Ingress. Para cada serviço, o valor nesta coluna mostra a definição de entrada como Tudo (predefinição), Interno + Equilíbrio de carga ou Interno.
gcloud
Para ver a definição de entrada de um serviço através da CLI gcloud:
gcloud app services describe SERVICE
Substitua SERVICE pelo nome do seu serviço.
Por exemplo, para ver as definições de entrada e outras informações para a execução do serviço predefinido:
gcloud app services describe default
Edite as definições de entrada
Consola
Aceda à página App Engine Services.
Selecione o serviço que quer editar.
Clique em Editar definição de entrada.
Selecione a definição de entrada pretendida no menu e clique em Guardar.
gcloud
Para atualizar a definição de entrada para um serviço através da CLI gcloud:
gcloud app services update SERVICE --ingress=INGRESS
Substituição:
- SERVICE: o nome do seu serviço.
- INGRESS: o controlo de entrada que quer aplicar. Uma das seguintes opções:
all
,internal-only
ouinternal-and-cloud-load-balancing
.
Por exemplo:
Para atualizar o serviço predefinido de uma app do App Engine para aceitar tráfego apenas do Cloud Load Balancing e das redes VPC que estão no mesmo projeto:
gcloud app services update default --ingress=internal-and-cloud-load-balancing
Para atualizar um serviço denominado "internal-requests" para aceitar tráfego apenas de redes VPC que estejam no mesmo projeto:
gcloud app services update internal-requests --ingress=internal-only
Definições de saída
Se usar o Acesso a VPC sem servidor, pode especificar a definição de saída para o seu serviço do App Engine.
Por predefinição, apenas os pedidos a endereços IP internos e nomes DNS internos são encaminhados através de um conetor de acesso a VPC sem servidor. Pode especificar a definição de saída para o seu serviço no ficheiro app.yaml
.
As definições de saída não são compatíveis com o serviço URL Fetch.
A utilização da biblioteca urlfetch
ignora as definições de saída e os pedidos não são encaminhados através de um conetor do Acesso a VPC sem servidor.
Para configurar o comportamento de saída do seu serviço do App Engine:
Adicione o atributo
egress_setting
ao campovpc_access_connector
do ficheiroapp.yaml
do serviço:vpc_access_connector: name: projects/PROJECT_ID/locations/REGION/connectors/CONNECTOR_NAME egress_setting: EGRESS_SETTING
Substituição:
PROJECT_ID
com o seu Google Cloud ID do projetoREGION
com a região em que o conector se encontraCONNECTOR_NAME
com o nome do conetorEGRESS_SETTING
com uma das seguintes opções:private-ranges-only
Predefinição. Apenas os pedidos aos intervalos de endereços IP RFC 1918 e RFC 6598 ou aos nomes DNS internos são encaminhados para a sua rede VPC. Todos os outros pedidos são encaminhados diretamente para a Internet.all-traffic
Todos os pedidos de saída do seu serviço são encaminhados para a sua rede VPC. Os pedidos ficam sujeitos às regras de firewall, DNS e encaminhamento da sua rede VPC. Tenha em atenção que o encaminhamento de todos os pedidos de saída para a sua rede VPC aumenta a quantidade de saída processada pelo conetor do Acesso a VPC sem servidor e pode incorrer em custos.
Implemente o serviço:
gcloud app deploy