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:

  • Um projeto com o faturamento ativado no Console do Cloud
  • Um grupo com uma ou mais instâncias do Compute Engine, exibido por um balanceador de carga HTTPS
  • um nome de domínio registrado no endereço do balanceador de carga.
  • O código do aplicativo para verificar se todas as solicitações têm uma identidade

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.

Como ativar o IAP usando o Console do Cloud

Como configurar a tela de consentimento do OAuth

Se você ainda não configurou a tela de consentimento do OAuth do seu projeto, precisará fazê-lo. É necessário usar um endereço de e-mail e o nome do produto para isso.

  1. Acesse a tela de consentimento do OAuth.
    Configurar tela de consentimento
  2. Em E-mail de suporte, selecione o endereço de e-mail que você quer exibir como um contato público. Ele precisa ser seu endereço de e-mail ou um Grupo do Google que você tenha.
  3. Digite o Nome do aplicativo que você quer exibir.
  4. Adicione os detalhes opcionais que você quiser.
  5. Clique em Salvar.

Para alterar as informações na tela de consentimento do OAuth posteriormente, como o nome do produto ou o endereço de e-mail, repita as etapas anteriores.

Como criar credenciais do OAuth

  1. Acesse a página "Credenciais".
    Acessar a página "Credenciais"
  2. Na lista suspensa Criar credenciais, selecione ID do cliente OAuth.
  3. Em Tipo de aplicativo, selecione Aplicativo da Web.
  4. Insira um Nome para o ID do cliente OAuth.
  5. Clique em Criar. O ID e a chave secreta do cliente OAuth são gerados e exibidos na janela Cliente OAuth.
  6. Clique em OK.
  7. Selecione o cliente que você criou.
  8. Copie o ID do cliente para a área de transferência.
  9. Inclua o URL de redirecionamento universal no campo de URIs de redirecionamento autorizados, no seguinte formato:
    https://iap.googleapis.com/v1/oauth/clientIds/CLIENT_ID:handleRedirect

    em que CLIENT_ID é o ID do cliente OAuth.

  10. Próximo ao topo da página, clique em Fazer o download do JSON. Você usará essas credenciais em uma etapa posterior.

Como configurar o acesso do IAP

  1. Acesse a página do 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 em que você quer adicionar membros.
  4. No painel lateral à direita, clique em Adicionar membro.
  5. Na caixa de diálogo Adicionar membros que é 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 contas podem ser membros:

    • Conta do Google: user@gmail.com
    • Grupo do Google: admins@googlegroups.com
    • Conta de serviço: server@example.gserviceaccount.com
    • Domínio do G Suite: 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 Salvar.

Como ativar o IAP

  1. Na página do Identity-Aware Proxy, em Recursos HTTPS, encontre o balanceador de carga que exibe o 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.

Como ativar o IAP usando o SDK do Cloud

Nesta seção, você verá como usar a ferramenta de linha de comando gcloud para ativar o IAP para aplicativos do Compute Engine. Ainda não há suporte para o uso da ferramenta de linha de comando gcloud para ativar o IAP para o App Engine. Em vez disso, use o guia de início rápido do App Engine.

Como conseguir o SDK do Cloud

Antes de configurar o projeto e o Cloud IAP, você precisa de uma versão atualizada do SDK do Cloud. Faça o download do SDK do Cloud.

Como configurar o projeto

Selecione o projeto em que você quer ativar o IAP e configure-o da seguinte maneira:

  1. Acesse a página "Grupos de instâncias" para garantir que as instâncias estejam em um grupo.
  2. Defina os serviços de back-end.
  3. Configure o balanceamento de carga.
  4. Configure um cliente OAuth:
    1. Acesse API > Credenciais e selecione o projeto em que você quer ativar o IAP.
    2. Configure a tela de consentimento do OAuth:
      1. Acesse a tela de consentimento do OAuth.
        Configurar tela de consentimento
      2. Em E-mail de suporte, selecione o endereço de e-mail que você quer exibir como um contato público. Ele precisa ser seu endereço de e-mail ou um Grupo do Google que você tenha.
      3. Digite o Nome do aplicativo que você quer exibir.
      4. Adicione os detalhes opcionais que você quiser.
      5. Clique em Salvar.

      Para alterar as informações na tela de consentimento do OAuth posteriormente, como o nome do produto ou o endereço de e-mail, repita as etapas anteriores.

    3. Em Credenciais, clique em Criar credenciais> ID do cliente OAuth.
    4. Em Tipo de aplicativo, selecione Aplicativo da Web. Em seguida, adicione um Nome.
    5. Quando terminar de inserir detalhes, clique em Criar.
    6. Na janela Cliente OAuth, anote o ID do cliente e a chave secreta do cliente.
    7. Selecione o cliente novamente. Inclua o URL de redirecionamento universal no campo de URIs de redirecionamento autorizados no formato https://iap.googleapis.com/v1/oauth/clientIds/CLIENT_ID:handleRedirect, em que CLIENT_ID é o ID do cliente OAuth.

Como ativar o IAP

  1. Use a ferramenta de linha de comando gcloud para executar gcloud auth login.
  2. Siga o URL que aparece para fazer login.
  3. Depois de fazer login, copie o código de verificação que aparece e cole-o na linha de comando.
  4. Execute gcloud config set project project_id no projeto em que você quer ativar o IAP.
  5. Para ativar o IAP, use o ID e a chave secreta do cliente OAuth criados anteriormente e execute gcloud compute backend-services update backend_service_name --global --iap=enabled,oauth2-client-id=client_id,oauth2-client-secret=client_secret.

Depois de ativar o IAP, será possível usar a ferramenta de linha de comando gcloud para manipular a política de acesso do IAP usando o papel roles/iap.httpsResourceAccessor do Cloud IAM. Saiba mais sobre como gerenciar papéis e permissões.