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

Before you set up your project and IAP, you need an up-to-date version of the gcloud CLI. For instructions on how to install the gcloud CLI, see Install the gcloud CLI.

  1. To authenticate, use the Google Cloud CLI and run the following command.
    gcloud auth login
  2. To sign in, follow the URL that appears.
  3. After you sign in, copy the verification code that appears and paste it in the command line.
  4. Run the following command to specify the project that contains the resource that you want to protect with IAP.
    gcloud config set project PROJECT_ID
  5. To enable IAP, run either the globally or regionally scoped command.

    Global scope
    gcloud compute backend-services update BACKEND_SERVICE_NAME --global --iap=enabled
    Regional scope
    gcloud compute backend-services update BACKEND_SERVICE_NAME --region REGION_NAME --iap=enabled

After you enable IAP, you can use the gcloud CLI to modify the IAP access policy using the IAM role roles/iap.httpsResourceAccessor. Learn more about managing roles and permissions.

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.