Uma conta de serviço é um tipo especial de conta que normalmente é usada por um aplicativo ou carga de trabalho de computação, como uma instância do Compute Engine, em vez de uma pessoa. Essa conta é identificada pelo endereço de e-mail, que é exclusivo.
Os aplicativos usam contas de serviço para fazer chamadas de API autorizadas que autenticam como a própria conta de serviço ou como um usuário do Google Workspace ou do Cloud Identity por meio da delegação em todo o domínio. Quando um aplicativo é autenticado como uma conta de serviço, ele tem acesso a todos os recursos que a conta de serviço tem permissão para acessar.
É possível usar uma conta de serviço para identificar a origem do tráfego e configurar políticas do Secure Web Proxy, conforme necessário.
Neste guia, você aprende as seguintes ações com relação à verificação de tempo de atividade:
- Crie uma instância do Secure Web Proxy com uma política vazia.
- Crie e anexe contas de serviço a recursos.
- Use contas de serviço para criar uma política do Secure Web Proxy.
- Crie uma instância do Secure Web Proxy.
- Teste a conectividade das VMs.
Antes de começar
- Conclua as etapas de configuração inicial. 
- Um administrador da organização conceder acesso a uma conta de serviço. 
- Verifique se você tem a versão 406.0.0 ou mais recente da Google Cloud CLI instalada: - gcloud version | head -n1- Se você tiver uma versão anterior da CLI gcloud instalada, atualize a versão: - gcloud components update --version=406.0.0
Criar uma instância do Secure Web Proxy com uma política vazia
Para criar uma instância do Secure Web Proxy, primeiro crie uma política de segurança vazia e depois um proxy da Web.
Criar uma política de segurança vazia
Console
- No Google Cloud console, acesse a página Políticas do SWP. 
- Clique em Criar uma política. 
- Insira um nome para a política que você quer criar, como - myswppolicy.
- Insira uma descrição da política, como - My new swp policy.
- Na lista Regiões, selecione a região em que você quer criar a política. 
- Clique em Criar. 
Cloud Shell
- Use o editor de texto de sua preferência para criar o arquivo - POLICY_FILE.yaml. Substitua- POLICY_FILEpelo nome do arquivo que você quer para o arquivo de política.
- Adicione o seguinte ao arquivo YAML criado: - name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME description: POLICY_DESCRIPTION- Substitua: - PROJECT_NAME: o nome do projeto.
- REGION: a região a que esta política se aplica
- POLICY_NAME: o nome da política que você está criando
- POLICY_DESCRIPTION: a descrição da política que você está criando
 
- Importe a política de segurança: - gcloud network-security gateway-security-policies import POLICY_NAME \ --source=POLICY_FILE.yaml \ --location=REGION
Criar um proxy da Web
Console
- No console Google Cloud , acesse a página Proxys da Web. 
- Clique em Criar um proxy da Web seguro. 
- Insira um nome para o proxy da Web que você quer criar, como - myswp.
- Insira uma descrição do proxy da Web, como - My new swp.
- Na lista Regiões, selecione a região em que você quer criar o proxy da Web. 
- Na lista Rede, selecione a rede em que você quer criar o proxy da Web. 
- Na lista Sub-rede, selecione a sub-rede em que você quer criar o proxy da Web. 
- Opcional: insira o endereço IP do Secure Web Proxy. É possível inserir um endereço IP do intervalo de endereços IP do proxy da Web seguro que residem na sub-rede criada na etapa anterior. Se você não inserir o endereço IP, a instância do Secure Web Proxy vai escolher automaticamente um endereço IP da sub-rede selecionada. 
- Na lista Certificado, selecione o certificado que você quer usar para criar o proxy da Web. 
- Na lista Política, selecione a política que você criou para associar o proxy da Web. 
- Clique em Criar. 
Cloud Shell
- Use o editor de texto de sua preferência para criar o arquivo - GATEWAY_FILE.yaml. Substitua- GATEWAY_FILEpelo nome de arquivo que você quer para o arquivo de proxy da Web.
- Adicione o seguinte ao arquivo YAML criado: - name: projects/PROJECT_NAME/locations/REGION/gateways/GATEWAY_NAME type: SECURE_WEB_GATEWAY ports: [GATEWAY_PORT_NUMBERS] certificateUrls: [CERTIFICATE_URLS] gatewaySecurityPolicy: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME network: projects/PROJECT_NAME/global/networks/NETWORK_NAME subnetwork: projects/PROJECT_NAME/regions/REGION/subnetworks/SUBNET_NAME addresses: [GATEWAY_IP_ADDRESS] scope: samplescope- Substitua: - GATEWAY_NAME: o nome dessa instância
- GATEWAY_PORT_NUMBERS: uma lista de números de porta para esse gateway, como- [80,443]
- CERTIFICATE_URLS: uma lista de URLs de certificados SSL
- SUBNET_NAME: o nome da sub-rede que contém- GATEWAY_IP_ADDRESS
- GATEWAY_IP_ADDRESS: uma lista opcional de endereços IP para suas instâncias do Secure Web Proxy nas sub-redes de proxy criadas anteriormente nas etapas de configuração inicial.- Se você não quiser listar endereços IP, omita o campo para que o proxy da Web escolha um endereço IP para você. 
 
- Crie uma instância do Secure Web Proxy: - gcloud network-services gateways import GATEWAY_NAME \ --source=GATEWAY_FILE.yaml \ --location=REGION
testar a conectividade
Para testar a conectividade, use o comando curl em qualquer VM na sua
rede de nuvem privada virtual (VPC):
  curl -x https://GATEWAY_IP_ADDRESS:PORT_NUMBER https://www.example.com --proxy-insecure
Um erro 403 Forbidden é esperado.
Criar e anexar contas de serviço a recursos
Siga estas etapas para criar e anexar contas de serviço:
Criar regras do Secure Web Proxy
Para criar regras do Secure Web Proxy, faça o seguinte:
- Use o editor de texto de sua preferência para criar um arquivo - RULE_FILE.yaml. Substitua- RULE_FILEpelo nome de arquivo escolhido.
- Para permitir o acesso a um URL da conta de serviço escolhida, adicione o seguinte ao arquivo YAML: - name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME/rules/RULE_NAME description: RULE_DESCRIPTION enabled: true priority: RULE_PRIORITY sessionMatcher: CEL_EXPRESSION basicProfile: ALLOW- Substitua: - RULE_NAME: um nome para essa regra
- RULE_DESCRIPTION: uma descrição da regra que você está criando
- RULE_PRIORITY: a prioridade dessa regra. Um número menor corresponde a uma prioridade maior.
- CEL_EXPRESSION: uma expressão da linguagem de expressão comum (CEL, na sigla em inglês)- Para mais informações, consulte a referência de linguagem do comparador de CEL. - Por exemplo, para permitir o acesso a - example.comdo recurso com a conta de serviço desejada anexada, adicione o seguinte ao arquivo YAML criado para o- sessionMatcher:- sessionMatcher: "source.matchServiceAccount('SERVICE_ACCOUNT') && host() == 'example.com'"- Substitua - SERVICE_ACCOUNTpela conta de serviço que você quer permitir. Ele precisa ser o endereço de e-mail da conta de serviço.
 
- Importe as regras que você criou: - gcloud network-security gateway-security-policies rules import RULE_NAME \ --source=RULE_FILE.yaml \ --location=REGION \ --gateway-security-policy=POLICY_NAME
testar a conectividade
Para testar a conectividade, use o comando curl do recurso com o
SERVICE_ACCOUNT anexado:
curl -x https://IPv4_ADDRESS:443 http://example.com 
--proxy-insecure
Substitua IPv4_ADDRESS pelo endereço IPv4 da sua
instância do Secure Web Proxy.