Primeiros passos com o gateway de API e o App Engine
Nesta página, mostramos como configurar um gateway de API para gerenciar e proteger um serviço de back-end do App Engine.
Lista de tarefas
Ao seguir o tutorial, use a lista de tarefas abaixo. Todas as tarefas são necessárias para implantar um gateway de API para seu serviço de back-end do App Engine.
- Crie ou selecione um projeto do Google Cloud .
- Se você não implantou seu próprio App Engine, implante um aplicativo de amostra. Consulte Antes de começar.
- Ative os serviços de gateway de API obrigatórios.
- Configure o IAP para proteger seu aplicativo. Consulte Configurar o IAP.
- Crie uma descrição do OpenAPI que descreva sua API e configure as rotas para seu App Engine. Consulte Criar uma configuração de API.
- Implante um gateway de API usando a configuração de API. Consulte Como implantar um gateway de API.
- Rastreie as atividades nos aplicativos. Consulte Como rastrear a atividade da API.
- Para evitar cobranças na sua conta do Google Cloud . Consulte Limpeza.
Antes de começar
No console do Google Cloud , acesse a página Painel e selecione ou crie um projeto do Google Cloud .
Verifique se o faturamento foi ativado para o projeto.
Anote o ID do projeto que você quer usar neste tutorial. No restante desta página, esse ID de projeto é chamado de PROJECT_ID.
Faça o download e instale a Google Cloud CLI.
Atualize os componentes
gcloud:gcloud components update
Defina o projeto padrão. Substitua PROJECT_ID pelo ID do projeto Google Cloud :
gcloud config set project PROJECT_ID
Se você não tiver implantado seu próprio aplicativo do App Engine, siga as etapas no Guia de início rápido do App Engine para que sua linguagem use a Google Cloud CLI a fim de selecionar ou criar um projeto Google Cloud e implantar um app de exemplo. Anote o URL do aplicativo, bem como a região e o ID do projeto em que ele está implantado.
Ativar serviços obrigatórios
O gateway de API exige que você ative os seguintes serviços Google Cloud :
| Nome | Nome do serviço |
|---|---|
| API Gateway API | apigateway.googleapis.com |
| Service Management API | servicemanagement.googleapis.com |
| API Service Control | servicecontrol.googleapis.com |
Para ativar os serviços necessários:
Console do Google Cloud
No console do Google Cloud , acesse a página APIs e serviços > Biblioteca de APIs.
- Na página Biblioteca de APIs, digite o nome da API necessária na barra de pesquisa.
- Nos resultados da pesquisa, selecione a página da API.
- Na página da API, clique em Ativar.
- Repita essas etapas para cada um dos serviços listados na tabela anterior.
CLI do Google Cloud
Use os comandos a seguir para ativar os serviços:
gcloud services enable apigateway.googleapis.comgcloud services enable servicemanagement.googleapis.comgcloud services enable servicecontrol.googleapis.com
Para mais informações sobre os serviços do gcloud, consulte
serviços gcloud.
Configurar o IAP para proteger o aplicativo
Para proteger seu aplicativo do App Engine, você precisa usar o Identity Aware Proxy (IAP) para verificar se as solicitações são autenticadas. Esse processo inclui especificar os membros que precisam receber o papel IAP-secured Web App User necessário para o projeto.
Siga as etapas para Ativar o IAP e verifique se você consegue fazer login no seu aplicativo.
Criar uma configuração de API
Antes de usar o gateway de API para gerenciar o tráfego para o back-end implantado do App Engine, ele precisa de uma configuração de API.
Você pode criar uma configuração de API usando uma descrição OpenAPI que contenha anotações especializadas para definir o comportamento escolhido do gateway de API. É necessário adicionar um campo específico do Google que contenha o URL de cada aplicativo do App Engine para que o gateway de API tenha as informações necessárias para invocar um aplicativo.
Para mais detalhes sobre as extensões da OpenAPI compatíveis, consulte o seguinte:
Para criar a configuração da API:
- Crie um arquivo de texto chamado
openapi-appengine.yaml. Por conveniência, esta página se refere à descrição da OpenAPI por esse nome de arquivo, mas você pode nomear algo diferente, se preferir. - Copie o conteúdo do arquivo a seguir no seu arquivo
openapi-run.yaml:OpenAPI 2.0
# openapi-appengine.yaml swagger: '2.0' info: title: API_ID optional-string description: Sample API on API Gateway with an App Engine backend version: 1.0.0 schemes: - https produces: - application/json paths: /hello: get: