Como ativar o IAP para o Compute Engine

Nesta página, você aprenderá como proteger uma instância do Compute Engine com o Identity-Aware Proxy (IAP).

Antes de começar

Para ativar o IAP para o Compute Engine, você precisará destes elementos:

Se você ainda não configurou a instância do Compute Engine, consulte Como configurar o IAP para o Compute Engine para um tutorial completo.

O IAP usa um cliente OAuth gerenciado pelo Google para autenticar usuários. Somente usuários dentro da organização podem acessar o aplicativo habilitado para IAP. Se você quiser permitir o acesso a usuários de fora da organização, consulte Ativar o IAP para aplicativos externos.

Como ativar o IAP

Console

O cliente OAuth gerenciado pelo Google não está disponível ao ativar o IAP usando o console do Google Cloud.

Se você ainda não configurou a tela de permissão OAuth do seu projeto, será necessário fazer isso. Para configurar sua tela de permissão OAuth, consulte Como configurar a tela de permissão OAuth.

Como configurar o acesso do IAP

  1. Acesse a página Identity-Aware Proxy.
    Acessar a página "Identity-Aware Proxy"
  2. Selecione o projeto que você quer proteger com o IAP.
  3. Marque a caixa de seleção ao lado do recurso a que você quer conceder acesso.

    Se você não encontrar um recurso, verifique se ele foi criado e se o controlador de entrada BackendConfig do Compute Engine está sincronizado.

    Para verificar se o serviço de back-end está disponível, execute o seguinte comando gcloud:

    gcloud compute backend-services list
  4. No painel lateral à direita, clique em Adicionar principal.
  5. Na caixa de diálogo Adicionar principais que será exibida, insira os endereços de e-mail de grupos ou indivíduos que terão o papel Usuário do app da Web protegido pelo IAP no projeto.

    Os seguintes tipos de principais podem ter esse papel:

    • Conta do Google: user@gmail.com
    • grupo do Google: admins@googlegroups.com
    • Conta de serviço: server@example.gserviceaccount.com
    • Domínio do Google Workspace: example.com

    Inclua uma Conta do Google a que você tenha acesso.

  6. Selecione Cloud IAP > Usuário do app da Web protegido pelo IAP na lista suspensa Papéis.
  7. Clique em Save.

Como ativar o IAP

  1. Na página Identity-Aware Proxy, em Aplicativos, encontre o balanceador de carga que atende ao instance group a que você quer restringir o acesso. Para ativar o IAP para um recurso,
    Para ativar o IAP:
  2. Na janela Ativar IAP que é exibida, clique em Ativar para confirmar que você quer proteger seu recurso com o IAP. Depois disso, será necessário usar credenciais de login para todas as conexões com o balanceador de carga. O acesso será concedido apenas às contas com o papel usuário do app da Web protegido pelo IAP no projeto.

gcloud

Antes de configurar o projeto e o IAP, você precisa de uma versão atualizada da CLI gcloud. Para instruções sobre como instalar a CLI gcloud, consulte Instalar a CLI gcloud.

  1. Para autenticar, use a Google Cloud CLI e execute o comando a seguir.
    gcloud auth login
  2. Para fazer login, siga o URL exibido.
  3. Depois de fazer login, copie o código de verificação que aparece e cole-o na linha de comando.
  4. Execute o seguinte comando para especificar o projeto que contém o recurso que você quer proteger com o IAP.
    gcloud config set project PROJECT_ID
  5. Para ativar o IAP, execute o comando com escopo global ou regional.

    Escopo global
    gcloud compute backend-services update BACKEND_SERVICE_NAME --global --iap=enabled
    Escopo regional
    gcloud compute backend-services update BACKEND_SERVICE_NAME --region REGION_NAME --iap=enabled

Depois de ativar o IAP, use a CLI gcloud para modificar a política de acesso do IAP usando o papel roles/iap.httpsResourceAccessor do IAM. Saiba mais sobre como gerenciar papéis e permissões.

API

  1. Execute o seguinte comando para preparar um arquivo settings.json.

    cat << EOF > settings.json
    {
    "iap":
      {
        "enabled":true
      }
    }
    EOF
    

  2. Execute o seguinte comando para ativar o IAP.

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Accept: application/json" \
    -H "Content-Type: application/json" \
    -d @settings.json \
    "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/REGION/backendServices/BACKEND_SERVICE_NAME"
    

Depois de ativar o IAP, use a Google Cloud CLI para modificar a política de acesso do IAP usando o papel roles/iap.httpsResourceAccessor do IAM. Saiba mais sobre como gerenciar papéis e permissões.