Proteger aplicativos cliente-servidor

Proteger aplicativos cliente-servidor com o conector de cliente

Visão geral

O Chrome Enterprise Premium é a solução de confiança zero do Google Cloud que fornece acesso seguro a aplicativos particulares com proteção integrada de dados e contra ameaças. O Chrome Enterprise Premium usa o Chrome para fornecer acesso seguro a todos os aplicativos baseados na Web (HTTPS).

O conector de cliente do Chrome Enterprise Premium estende o suporte a aplicativos que não são da Web criando uma conexão segura para aplicativos executados em ambientes do Google Cloud e de outros provedores com acesso total com reconhecimento de contexto e identidade.

Como funciona

O diagrama a seguir fornece uma visão geral da arquitetura do conector de cliente.

Componentes do conector de cliente do Chrome Enterprise Premium

Veja a seguir os principais componentes que compõem o conector de cliente:

Verificação de endpoints e agente do cliente: o conector do cliente se integra à Verificação de endpoints, uma extensão do Chrome com um agente leve nativo que é executado nos laptops ou computadores dos usuários e gera relatórios de informações do dispositivo. A Verificação de endpoints também atua como o plano de controle para o usuário final iniciar e interromper conexões com gateways do cliente.

Gateways do cliente: componentes regionais do lado do servidor aos quais os clientes podem se conectar. Os gateways do cliente são implantados pelos administradores. Os gateways se comunicam com o sistema de aplicação do Chrome Enterprise Premium para aplicar verificações baseadas no contexto. O sistema de aplicação do Chrome Enterprise Premium usa o Identity-Aware Proxy e o Access Context Manager, um mecanismo de política de confiança zero flexível do Chrome Enterprise Premium.

O conector do cliente envia tráfego para os aplicativos protegidos de dispositivos de usuários finais e clientes por meio de um canal seguro, um gateway. É possível se conectar a aplicativos da Web e que não sejam da Web em execução no Google Cloud ou fora dele. É possível usar o Cloud VPN ou o Cloud Interconnect para se conectar aos aplicativos que não estão no Google Cloud.

Antes de começar

Antes de ativar o conector de cliente do Chrome Enterprise Premium, verifique se você tem:

Ativar o conector de cliente do Chrome Enterprise Premium

Configurar o Acesso a serviços particulares

O conector de cliente usa o acesso a serviços particulares para ativar a conectividade entre a rede VPC gerenciada pelo Google e a rede VPC do consumidor. Isso garante que o tráfego dos usuários seja roteado para a rede VPC do consumidor.

Console

  1. O acesso a serviços particulares exige que você reserve um intervalo de endereços IP para que não haja colisões de endereços IP entre sua rede VPC e a rede VPC gerenciada pelo Google. Conclua as etapas a seguir para alocar um intervalo de IP:

    1. Acesse a página "Redes VPC" no Console do Google Cloud.
      Acesse Redes VPC

    2. Selecione a rede VPC conectada ao seu aplicativo.

    3. Selecione a guia Conexão de serviço privado.

    4. Na guia Conexão de serviço privado, selecione Intervalos de IP alocados para serviços.

    5. Clique em Alocar intervalo de IP.

    6. Insira um Nome e uma Descrição para o intervalo de IP a ser alocado.

    7. Especifique um intervalo de IP para a alocação:

      • Para especificar um intervalo de endereços IP, selecione Personalizado e insira um bloco CIDR, como 192.168.0.0/16.
      • Para especificar o tamanho de um prefixo e permitir que o Google selecione um intervalo disponível, selecione Automático e insira um tamanho de prefixo, como 16.

      Especifique uma rede de, no mínimo, /24.

    8. Clique em Alocar para criar o intervalo alocado.

  2. Crie uma conexão de peering de rede VPC concluindo as seguintes etapas:

    1. Acesse a página "Redes VPC" no Console do Google Cloud.
      Acesse Redes VPC
    2. Selecione a rede VPC conectada ao seu aplicativo.
    3. Selecione a guia Conexão de serviço privado.
    4. Na guia Conexão de serviço privado, selecione a guia Conexões privadas com os serviços.
    5. Clique em Criar conexão para criar uma conexão particular entre sua rede e o serviço do conector de cliente.
    6. Na janela que se abre, deixe o padrão para Produtor de serviços conectado. Em Alocação atribuída, selecione o intervalo alocado que você criou na etapa anterior.
    7. Clique em Conectar para criar a conexão.
  3. Crie uma regra de firewall.

    1. No Console do Google Cloud, acesse a página Firewall.
      Acessar a página "Firewall"
    2. Clique em Criar regra de firewall.
    3. Digite um Nome para a regra do firewall.
      O nome do projeto precisa ser exclusivo.
    4. Opcional: é possível ativar o registro de regras de firewall:
      • Clique em Registros > Ativado.
      • Para omitir metadados, expanda Detalhes dos registros e limpe Incluir metadados.
    5. Especifique a Rede conectada ao seu aplicativo.
    6. Especifique a Prioridade da regra. Quanto menor o número, mais alta a prioridade.
    7. Em Direção de tráfego, selecione Entrada.
    8. Em Ação se houver correspondência, selecione Permitir.
    9. Em Destinos, selecione Todas as instâncias na rede.
    10. Em Filtro de origem, selecione Intervalos IPv4 e insira os valores address e prefixLength da Etapa 1 para representar o intervalo de IP alocado no formato CIDR. Use o formato 0.0.0.0/0 para qualquer origem IPv4.
    11. Em Protocolos e portas, selecione Permitir todos para que a regra se aplique a todos os protocolos e portas de destino.
    12. Clique em CRIAR.

gcloud

  1. O acesso a serviços particulares exige que você reserve um intervalo de endereços IP para que não haja colisões de endereços IP entre sua rede VPC e a rede VPC gerenciada pelo Google. Execute o seguinte comando para alocar um intervalo de IP:

    gcloud compute addresses create RESERVED_RANGE \
      --network=CONSUMER_NETWORK \
      --project=CONSUMER_PROJECT \
      --prefix-length=16 \
      --purpose=VPC_PEERING \
      --global
    

    Substitua:

    • RESERVED_RANGE: o nome do intervalo de endereços IP a ser reservado para peering de VPC. O nome só pode conter letras minúsculas, números e hifens.
    • CONSUMER_NETWORK: o nome da rede VPC conectada ao aplicativo.
    • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
  2. Crie a conexão de peering de VPC.

    gcloud services vpc-peerings connect \
      --network=CONSUMER_NETWORK \
      --project=CONSUMER_PROJECT \
      --ranges=RESERVED_RANGE \
      --service="servicenetworking.googleapis.com"
    

    Substitua:

    • CONSUMER_NETWORK: o nome da rede VPC conectada ao aplicativo.
    • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
    • RESERVED_RANGE: o nome do intervalo reservado para o peering de VPC.
  3. Confira os detalhes do intervalo de IP alocado.

    gcloud compute addresses describe RESERVED_RANGE \
      --global \
      --project=CONSUMER_PROJECT
    

    Substitua:

    • RESERVED_RANGE: o nome do intervalo reservado para o peering de VPC.
    • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
  4. Use os valores address e prefixLength da saída na etapa anterior para representar o intervalo de IP alocado no formato CIDR e, em seguida, crie uma regra de firewall.

    gcloud compute firewall-rules create "allow-peered-ingress" \
      --network=CONSUMER_NETWORK \
      --project=CONSUMER_PROJECT \
      --direction ingress \
      --action allow \
      --source-ranges={Allocated IP range in CIDR format i.e. address/prefixLength} \
      --rules=all
    

    Substitua:

    • CONSUMER_NETWORK: o nome da rede VPC conectada ao aplicativo.
    • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.

Saiba como configurar regras de firewall em Usar regras de firewall de VPC.

Configurar os recursos do conector de cliente

Há dois tipos de recursos que precisam ser configurados:

  • Serviço do conector do cliente: define uma configuração comum para um grupo de gateways de cliente.
  • Gateway do cliente: refere-se ao serviço do conector de cliente e controla as regiões em que você quer gerenciar o tráfego de usuários.

Só é permitido um serviço de conector de cliente por domínio e um gateway de cliente por região e por serviço de conector de cliente. Além disso, só é possível usar as seguintes regiões para hospedar seus recursos de gateway e serviço do conector do cliente: asia-east1, europe-west1, us-east1 e us-central1.

Criar o serviço do conector de cliente

Console

  1. Acesse a página de administrador do IAP.

    Acessar o IAP

  2. Clique em Conectores > ATIVAR O CONECTOR DO CLIENTE.

  3. Informe a rede VPC que receberá o tráfego de clientes gerenciados.

  4. Selecione as regiões a que seus clientes podem se conectar. Observe que os gateways do cliente são criados nesta etapa, então você não precisa criar os gateways no procedimento Criar, verificar ou remover gateways do cliente.

  5. Insira o intervalo de endereços IP dos aplicativos que você quer que o conector de cliente alcance.

  6. Clique em ATIVAR O CONECTOR DO CLIENTE. A criação do conector pode levar vários minutos.

gcloud

Execute este comando:

gcloud beta beyondcorp client-connector services create CLIENT_CONNECTOR_SERVICE_NAME \
  --project=CONSUMER_PROJECT \
  --location=SERVICE_LOCATION \
  --config-from-file=/path/to/file/config.json

em que config.json é:

   {
     "ingress": {
       "config": {
         "transportProtocol": "TCP",
         "destinationRoutes": [{
           "address": "DESTINATION_ADDRESS",
           "netmask": "DESTINATION_MASK"
         }]
       }
     },
     "egress": {
       "peeredVpc": {
         "networkVpc": "projects/CONSUMER_PROJECT/global/networks/CONSUMER_NETWORK"
       }
     }
   }

Substitua:

  • CLIENT_CONNECTOR_SERVICE_NAME: o nome do serviço de conector do cliente.
  • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
  • SERVICE_LOCATION: a região em que o serviço de conector de cliente será criado. É possível especificar uma das seguintes regiões compatíveis: asia-east1, europe-west1, us-east1 e us-central1.
  • DESTINATION_ADDRESS: o endereço do host da sub-rede de destino que hospeda o aplicativo. Por exemplo, se o aplicativo usa 10.0.0.0/28, o endereço é 10.0.0.0.
  • DESTINATION_MASK: a máscara de rede da sub-rede de destino que hospeda o aplicativo. Por exemplo, se o aplicativo usar 10.0.0.0/28, a máscara será 255.255.255.240.
  • CONSUMER_NETWORK: o nome da rede VPC conectada ao aplicativo.

API

Execute este comando:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d @config.json \
https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/SERVICE_LOCATION/clientConnectorServices?client_connector_service_id=CLIENT_CONNECTOR_SERVICE_NAME

em que config.json é:

   {
     "ingress": {
       "config": {
         "transportProtocol": "TCP",
         "destinationRoutes": [{
           "address": "DESTINATION_ADDRESS",
           "netmask": "DESTINATION_MASK"
         }]
       }
     },
     "egress": {
       "peeredVpc": {
         "networkVpc": "projects/CONSUMER_PROJECT/global/networks/CONSUMER_NETWORK"
       }
     }
   }

Substitua:

  • DESTINATION_ADDRESS: o endereço do host da sub-rede de destino que hospeda o aplicativo. Por exemplo, se o aplicativo usa 10.0.0.0/28, o endereço é 10.0.0.0.
  • DESTINATION_MASK: a máscara de rede da sub-rede de destino que hospeda o aplicativo. Por exemplo, se o aplicativo usar 10.0.0.0/28, a máscara será 255.255.255.240.
  • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
  • CONSUMER_NETWORK: o nome da rede VPC conectada ao aplicativo.
  • SERVICE_LOCATION: a região em que o serviço de conector de cliente será criado.
  • CLIENT_CONNECTOR_SERVICE_NAME: o nome do serviço de conector do cliente.

Liste o serviço para verificar se o serviço do conector de cliente foi criado.

Console

  1. Acesse a página de administrador do IAP.

    Acessar o IAP

  2. Clique em Conectores. O conector está listado na seção Conector de cliente e tem uma marca de seleção verde para o status.

gcloud

Execute o comando a seguir.

gcloud beta beyondcorp client-connector services list \
  --project=CONSUMER_PROJECT \
  --location=SERVICE_LOCATION

Substitua:

  • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
  • SERVICE_LOCATION: a região em que o serviço de conector de cliente será criado.

API

Execute este comando:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/SERVICE_LOCATION/clientConnectorServices

Substitua:

  • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
  • SERVICE_LOCATION: a região em que o serviço do conector do cliente está localizado.

Opcional: atualizar um serviço do conector de cliente

Console

Atualize as rotas de destino seguindo estas etapas:

  1. Acesse a página de administrador do IAP.

    Acessar o IAP

  2. Clique em Conectores.

  3. Na seção Conector de cliente, clique no ícone de lápis ao lado do conector de cliente que você quer atualizar.

  4. Insira os novos endereços de host e máscaras de rede das sub-redes de destino que hospedam os aplicativos e clique em ATUALIZAR CONECTOR DE CLIENTE.

gcloud

Atualize as rotas de destino executando o seguinte comando:

gcloud beta beyondcorp client-connector services update CLIENT_CONNECTOR_SERVICE_NAME \
  --project=CONSUMER_PROJECT \
  --location=SERVICE_LOCATION \
  --config-from-file=/path/to/file/config.json

em que config.json é:

{
  "ingress":{
    "config":{
      "destinationRoutes":[
        {
          "address":"NEW_DESTINATION_ADDRESS1",
          "netmask":"NEW_DESTINATION_MASK1"
        },
        {
          "address":"NEW_DESTINATION_ADDRESS2",
          "netmask":"NEW_DESTINATION_MASK2"
        }
      ]
    }
  }
}

Substitua:

  • CLIENT_CONNECTOR_SERVICE_NAME: o nome do serviço de conector do cliente.
  • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
  • SERVICE_LOCATION: a região em que o serviço do conector do cliente está localizado.
  • NEW_DESTINATION_ADDRESS1, NEW_DESTINATION_ADDRESS2: os novos endereços de host das sub-redes de destino que hospedam os aplicativos.
  • NEW_DESTINATION_MASK1, NEW_DESTINATION_MASK2: as novas máscaras de rede das sub-redes de destino.

API

Para atualizar as rotas de destino, execute o seguinte comando:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d @update.json \
https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/SERVICE_LOCATION/clientConnectorServices/CLIENT_CONNECTOR_SERVICE_NAME?update_mask=ingress.config.destinationRoutes

Onde update.json é:

{
  "ingress":{
    "config":{
      "destinationRoutes":[
        {
          "address":"NEW_DESTINATION_ADDRESS1",
          "netmask":"NEW_DESTINATION_MASK1"
        },
        {
          "address":"NEW_DESTINATION_ADDRESS2",
          "netmask":"NEW_DESTINATION_MASK2"
        }
      ]
    }
  }
}

Substitua:

  • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
  • SERVICE_LOCATION: a região em que o serviço do conector do cliente está localizado.
  • CLIENT_CONNECTOR_SERVICE_NAME: o nome do serviço de conector do cliente.
  • NEW_DESTINATION_ADDRESS1, NEW_DESTINATION_ADDRESS2: os novos endereços de host das sub-redes de destino que hospedam os aplicativos.
  • NEW_DESTINATION_MASK1, NEW_DESTINATION_MASK2: as novas máscaras de rede das sub-redes de destino.

Opcional: remover um serviço do conector de cliente

Console

  1. Acesse a página de administrador do IAP.

    Acessar o IAP

  2. Clique em Conectores.

  3. Na seção Conector do cliente, clique no ícone de lixeira para remover o serviço do conector do cliente e os gateways. Isso pode levar alguns minutos.

gcloud

Execute o comando a seguir.

gcloud beta beyondcorp client-connector services delete CLIENT_CONNECTOR_SERVICE_NAME \
  --project CONSUMER_PROJECT \
  --location SERVICE_LOCATION

Substitua:

  • CLIENT_CONNECTOR_SERVICE_NAME: o nome do serviço de conector do cliente.
  • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
  • SERVICE_LOCATION: a região em que o serviço do conector do cliente está localizado.

API

Execute o comando a seguir.

curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/SERVICE_LOCATION/clientConnectorServices/CLIENT_CONNECTOR_SERVICE_NAME

Substitua:

  • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
  • SERVICE_LOCATION: a região em que o serviço do conector do cliente está localizado.
  • CLIENT_CONNECTOR_SERVICE_NAME: o nome do serviço de conector do cliente.

Criar, verificar ou remover gateways do cliente

Console

  1. Se estiver usando o console para configurar o conector de cliente, os gateways de cliente serão criados quando você criar o serviço do conector de cliente em uma etapa anterior.

  2. Para verificar se os gateways do cliente estão em execução:

    1. Acesse a página de administrador do IAP.

      Acessar o IAP

    2. Clique em Conectores. O conector e os gateways associados devem estar listados na seção Conector do cliente e ter uma marca de seleção verde para o status.
  3. Opcional: para remover um gateway do cliente, conclua as etapas a seguir.

    1. Acesse a página de administrador do IAP.

      Acessar o IAP

    2. Clique em Conectores.

    3. Na seção Conector de cliente, clique no ícone de lápis ao lado do conector de cliente do qual você quer remover um gateway.

    4. Remova uma região do serviço de conector desmarcando a caixa de seleção da região na lista suspensa Regiões de gateway e clique em ATUALIZAR CONECTOR DE CLIENTE.

gcloud

  1. Crie um gateway do cliente.

    gcloud beta beyondcorp client-connector gateways create CLIENT_GATEWAY_NAME \
      --project CONSUMER_PROJECT \
      --location GATEWAY_LOCATION \
      --client-connector-service \
      projects/CONSUMER_PROJECT/locations/SERVICE_LOCATION/clientConnectorServices/CLIENT_CONNECTOR_SERVICE_NAME
    

    Substitua:

    • CLIENT_GATEWAY_NAME: o nome do gateway do cliente.
    • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
    • GATEWAY_LOCATION: a região em que o gateway do cliente será criado.
    • SERVICE_LOCATION: a região em que o serviço do conector do cliente está localizado.
    • CLIENT_CONNECTOR_SERVICE_NAME: o nome do serviço de conector do cliente.
  2. Verifique se os gateways do cliente estão em execução.

    gcloud beta beyondcorp client-connector gateways list \
      --project CONSUMER_PROJECT \
      --location GATEWAY_LOCATION
    

    Substitua:

    • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
    • GATEWAY_LOCATION: a região em que o gateway do cliente está localizado.
  3. Opcional: remova um gateway do cliente.

    gcloud beta beyondcorp client-connector gateways delete CLIENT_GATEWAY_NAME \
      --project CONSUMER_PROJECT \
      --location GATEWAY_LOCATION
    

    Substitua:

    • CLIENT_GATEWAY_NAME: o nome do gateway do cliente.
    • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
    • GATEWAY_LOCATION: a região em que o gateway do cliente está localizado.

API

  1. Execute o comando a seguir.

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -d "{client_connector_service: \"projects/CONSUMER_PROJECT/locations/SERVICE_LOCATION/clientConnectorServices/CLIENT_CONNECTOR_SERVICE_NAME\"}" \
    https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/GATEWAY_LOCATION/clientGateways?client_gateway_id=CLIENT_GATEWAY_NAME
    

    Substitua:

    • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
    • SERVICE_LOCATION: a região em que o serviço do conector do cliente está localizado.
    • CLIENT_CONNECTOR_SERVICE_NAME: o nome do serviço de conector do cliente.
    • GATEWAY_LOCATION: a região em que o gateway do cliente será criado.
    • CLIENT_GATEWAY_NAME: o nome do gateway do cliente.

    Esta etapa pode levar vários minutos para ser concluída.

  2. Verifique se os gateways do cliente estão em execução.

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/GATEWAY_LOCATION/clientGateways
    

    Substitua:

    • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
    • GATEWAY_LOCATION: a região em que o gateway do cliente está localizado.
  3. Opcional: remova um gateway do cliente.

    curl -X DELETE \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/GATEWAY_LOCATION/clientGateways/CLIENT_GATEWAY_NAME
    

    Substitua:

    • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
    • GATEWAY_LOCATION: a região em que o gateway do conector de cliente está localizado.
    • CLIENT_GATEWAY_NAME: o nome do gateway do cliente.

Configurar políticas de acesso baseado no contexto

  1. Determine os principais ou crie um grupo de usuários. Identifique os usuários que precisam de acesso aos aplicativos protegidos que não são da Web. Como alternativa, você pode criar um grupo de usuários para simplificar a configuração e o gerenciamento.

  2. Opcional: crie um nível de acesso no Access Context Manager para definir uma regra baseada no contexto, que pode ser usada para restringir o acesso ao aplicativo.

  3. Configure uma política do IAM para o recurso de serviço de conector de cliente e conceda ao principal ou ao grupo de usuários o papel de usuário do serviço de conector de cliente do Cloud BeyondCorp (roles/beyondcorp.clientConnectorServiceUser) necessário para acessar os apps que não são da Web. Opcionalmente, especifique uma condição do IAM para provisionar o papel somente quando um nível de acesso for atendido. Para atualizar a política do IAM de um recurso, use o console ou a API.

    No console, siga estas etapas:

    1. Acesse a página de administrador do IAP.

      Acessar o IAP

    2. Clique em APLICATIVOS.
    3. Se você ainda não configurou uma tela de permissão OAuth, faça isso para concluir esta etapa. Na seção CONECTAR NOVO APLICATIVO, selecione seu conector em Aplicativos que não são da Web.
    4. Na janela aberta, clique em ADICIONAR PRINCIPAL.
    5. Conceda ao principal ou ao grupo de usuários o papel Cloud BeyondCorp Client Connector Service User (roles/beyondcorp.clientConnectorServiceUser), necessário para acessar os apps que não são da Web. Opcionalmente, especifique um nível de acesso para provisionar o papel somente quando o nível de acesso for atendido. Para especificar um nível de acesso, é necessário ser um administrador da organização ou ter as permissões view e edit para os níveis de acesso da organização.
    6. Clique em SALVAR.

Atualizar uma política do IAM

Console

  1. Acesse a página de administrador do IAP.

    Acessar o IAP

  2. Clique na guia APLICATIVOS e, na lista de Recursos, expanda Aplicativos que não são da Web.
  3. Selecione seu conector de cliente. Uma seção com as permissões do IAM associadas ao seu conector será aberta.
  4. Atualize as políticas do IAM associadas ao seu conector de cliente na seção que será aberta.

gcloud

  1. Leia a política atual. O método getIamPolicy() lê a política do IAM atual para o recurso do serviço do conector do cliente em policy.json.

    gcloud beta beyondcorp client-connector services get-iam-policy CLIENT_CONNECTOR_SERVICE_NAME \
      --project=CONSUMER_PROJECT \
      --location=SERVICE_LOCATION > policy.json
    

    Substitua:

    • CLIENT_CONNECTOR_SERVICE_NAME: o nome do serviço de conector do cliente.
    • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
    • SERVICE_LOCATION: a região em que o serviço de conector do cliente está localizado.
  2. Edite a política retornada. Atualize as vinculações em policy.json para incluir a nova atribuição de papel do IAM. Você pode fazer isso em um editor de texto ou de forma programática. Exemplo:

    {
                "bindings": [
                  {
                    "role": "roles/beyondcorp.clientConnectorServiceUser",
                    "members": [
                      "user:EXAMPLE_USER@EXAMPLE.COM",
                      "group:EXAMPLE_GROUP@EXAMPLE.COM",
                    ],
                    "condition":
                     {
                       "expression":
            "'accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME' in
            request.auth.access_levels",
                      "title": "CONDITION_NAME"
                    }
                  }
                ]
    }
    

    Substitua:

    • POLICY_NAME: o nome numérico da sua política de acesso do Access Context Manager.
    • LEVEL_NAME: o nome do seu nível de acesso do Access Context Manager.
    • CONDITION_NAME: o texto do título da condição do IAM.
  3. Grave a política atualizada. É possível usar o método setIamPolicy() para gravar a política atualizada do IAM. Exemplo:

    gcloud beta beyondcorp client-connector services set-iam-policy CLIENT_CONNECTOR_SERVICE_NAME policy.json \
      --project=CONSUMER_PROJECT \
      --location=SERVICE_LOCATION

    Substitua:

    • CLIENT_CONNECTOR_SERVICE_NAME: o nome do serviço do conector do cliente.
    • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
    • SERVICE_LOCATION: a região em que o serviço do conector do cliente está localizado.

API

  1. Leia a política atual. O método getIamPolicy() lê a política do IAM atual para o recurso do serviço do conector do cliente em policy.json.

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/SERVICE_LOCATION/clientConnectorServices/CLIENT_CONNECTOR_SERVICE_NAME:getIamPolicy > policy.json
    

    Substitua:

    • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
    • SERVICE_LOCATION: a região em que o serviço do conector do cliente está localizado.
    • CLIENT_CONNECTOR_SERVICE_NAME: o nome do serviço do conector do cliente.
  2. Edite a política retornada. Atualize as vinculações em policy.json para incluir a nova atribuição de papel do IAM. Você pode fazer isso em um editor de texto ou de forma programática. Exemplo:

     {
       "policy": {
          "bindings": [
            {
              "role": "roles/beyondcorp.clientConnectorServiceUser",
              "members": [
                "user:EXAMPLE_USER@EXAMPLE.COM",
                "group:EXAMPLE_GROUP@EXAMPLE.COM",
             ],
             "condition":
              {
                "expression":
     "'accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME' in
     request.auth.access_levels",
                "title": "CONDITION_NAME"
              }
           }
         ]
       }
     }
     

    Substitua:

    • POLICY_NAME: o nome numérico da sua política de acesso do Access Context Manager.
    • LEVEL_NAME: o nome do seu nível de acesso do Access Context Manager.
    • CONDITION_NAME: o texto do título da condição do IAM.
  3. Grave a política atualizada. É possível usar o método setIamPolicy() para gravar a política atualizada do IAM. Exemplo:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -d @policy.json \
    https://beyondcorp.googleapis.com/v1/projects/CONSUMER_PROJECT/locations/SERVICE_LOCATION/clientConnectorServices/CLIENT_CONNECTOR_SERVICE_NAME:setIamPolicy
     

    Substitua:

    • CONSUMER_PROJECT: o ID do projeto que hospeda o CONSUMER_NETWORK.
    • SERVICE_LOCATION: a região em que o serviço do conector do cliente está localizado.
    • CLIENT_CONNECTOR_SERVICE_NAME: o nome do serviço do conector do cliente.

Instalar o agente do conector do cliente em dispositivos de endpoint (Windows ou macOS)

  1. Ative a extensão Verificação de endpoints seguindo as etapas em Configurar a Verificação de endpoints nos seus dispositivos.

  2. Depois que a Verificação de endpoints estiver em execução, a extensão Verificação de endpoints do usuário atualizado mostrará um botão INICIAR CONEXÃO. Para acessar o aplicativo protegido que não é da Web, os usuários podem clicar no botão INICIAR CONEXÃO.

Quando um usuário inicia uma conexão pela primeira vez, a Verificação de endpoints solicita que ele faça o download e instale os binários do conector do cliente. Outra opção é fazer o download dos binários do conector do cliente nos seguintes URLs:

Depois que uma conexão é estabelecida, o usuário pode acessar o recurso protegido. Os usuários podem clicar no botão ENCERRAR CONEXÃO para encerrar a conexão.

Solução de problemas

Se você tiver problemas para usar o conector de cliente, as informações a seguir fornecem etapas de solução que podem resolver isso.

Não é possível acessar seu aplicativo

O gateway do conector do cliente está em execução e a conexão foi estabelecida, mas ainda não é possível acessar o aplicativo.

Confira a seguir os motivos mais comuns e as possíveis soluções para esse problema:

  • Você não anunciou o intervalo de IP alocado no Cloud VPN. Se você usa o Cloud VPN para se conectar a um aplicativo que não é do Google Cloud, também divulgue o intervalo de IP alocado para acesso a serviços particulares ao roteador de peering por meio do protocolo de gateway de borda (BGP). Para saber mais sobre como fazer isso, consulte Especificar anúncios em um Cloud Router.

  • Você especificou um endereço e uma máscara incorretos nas rotas de destino. Confira se os bits mascarados são zero ao fornecer o endereço. Por exemplo, 10.0.10.1 é um endereço inválido para fornecer com uma máscara de rede 255.255.255.0 (/24). O endereço correto é 10.0.10.0.

  • Possíveis conflitos de IP entre o intervalo de IP alocado para o Private Service Access e as sub-redes IP usadas pela rede que hospeda o aplicativo. Garanta que esses intervalos sejam mutuamente exclusivos. Esse problema ocorre com mais frequência quando o aplicativo está hospedado em uma rede que não é do Google Cloud.

Você recebe a mensagem Unable to connect to the network

Se você receber a mensagem Unable to connect to the network. Check your network connection and try again., significa que a conexão com a Internet no dispositivo não está ativa.

Resolução: verifique se sua conexão com a Internet está ativa e tente se conectar novamente.

Registros de auditoria

Se você for um administrador, poderá acessar os registros de auditoria do Chrome Enterprise Premium, incluindo os registros de auditoria do conector de cliente, na página Geração de registros do console do Google Cloud. Saiba mais em Registro de auditoria do serviço do Chrome Enterprise Premium.

Se você for um usuário final, poderá acessar os registros de conexão concluindo as seguintes etapas:

  1. Clique com o botão direito do mouse na extensão Verificação de endpoints no navegador.
  2. Clique em Opções.
  3. Selecione a granularidade do nível de registro. Por padrão, o nível de granularidade é definido como Informações.
  4. Clique em Mostrar registro.

A seguir