Controle de acesso para o Connectivity Tests

Nesta página, descrevemos os papéis e as permissões de gerenciamento de identidade e acesso necessários para executar testes de conectividade.

Você pode conceder a usuários ou contas de serviço, um papel predefinido ou criar um papel personalizado que use as permissões especificadas.

As permissões do IAM usam um prefixo de networkmanagement.

Para receber ou definir políticas do IAM ou testar permissões do IAM com a API Network Management, consulte Como gerenciar o controle de acesso.

Papéis

Esta seção descreve como usar papéis predefinidos e personalizados ao conceder permissões para o Connectivity Tests.

Para uma explicação de cada permissão, consulte a tabela de permissões.

Para mais informações sobre papéis do projeto e recursos do Google Cloud, consulte a seguinte documentação:

Papéis predefinidos

O Connectivity Tests tem os seguintes papéis predefinidos:

  • Um networkmanagement.admin tem permissão para executar todas as operações em um recurso de teste.
  • Um networkmanagement.viewer tem permissão para listar ou conseguir um recurso de teste específico.

A tabela a seguir lista os papéis predefinidos e as permissões que se aplicam a cada papel.

Papel Nome Descrição Permissões Menor recurso
roles/networkmanagement.admin Administrador de gerenciamento de rede Acesso total aos recursos de gerenciamento de rede.
  • networkmanagement.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list
roles/networkmanagement.viewer Leitor do gerenciamento de rede Acesso somente leitura aos recursos de gerenciamento de rede.
  • networkmanagement.connectivitytests.get
  • networkmanagement.connectivitytests.getIamPolicy
  • networkmanagement.connectivitytests.list
  • networkmanagement.locations.*
  • networkmanagement.operations.*
  • resourcemanager.projects.get
  • resourcemanager.projects.list

Papéis personalizados

Você pode criar papéis personalizados selecionando uma lista de permissões na tabela de permissões para o Connectivity Tests.

Por exemplo, você pode criar um papel chamado reachabilityUsers e conceder as permissões list, get e rerun a esse papel. Um usuário com esse papel pode executar novamente o Connectivity Tests atual e exibir os resultados atualizados dos testes com base na configuração de rede mais recente.

Como usar papéis de projeto para definir permissões para os recursos do Google Cloud

Como o Connectivity Tests precisa ter acesso de leitura às configurações de recursos do Google Cloud na rede da nuvem privada virtual (VPC, na sigla em inglês) para executar um teste, você precisa conceder pelo menos o papel compute.networkViewer aos usuários ou contas de serviço que executam um teste nesses recursos. Você também pode criar um papel personalizado ou autorizar temporariamente as permissões associadas ao papel anterior para um usuário específico.

Como alternativa, você pode conceder a uma conta de usuário ou serviço um dos seguintes papéis predefinidos para projetos do Google Cloud:

Permissões

Esta seção descreve permissões para o Connectivity Tests e como usá-los ao testar diferentes tipos de configurações de rede.

Permissões do Connectivity Tests

Os Testes de conectividade têm as permissões a seguir do IAM:

Permissão Descrição
networkmanagement.connectivitytests.list Lista todos os testes configurados no projeto especificado.
networkmanagement.connectivityTests.get Consegue os detalhes de um teste específico.
networkmanagement.connectivitytests.create Cria um novo objeto de teste no projeto especificado com os dados que você especificar para o teste. Essa permissão inclui permissão para atualizar, executar novamente ou excluir testes.
networkmanagement.connectivitytests.update Atualiza um ou mais campos em um teste atual.
networkmanagement.connectivitytests.delete Exclui o teste especificado.
networkmanagement.connectivitytests.rerun Executa novamente uma verificação de acessibilidade única para um teste especificado.

Permissões para executar e visualizar testes

Se você não tiver permissão para criar ou atualizar um teste, verá uma mensagem permission denied.

Se você não tiver permissão para visualizar os recursos do Compute Engine no caminho da rede que está testando, ainda poderá ver o resultado geral do teste, mas os detalhes dos recursos testados estão ocultos e os resultados do teste mostram uma mensagem permission denied para cada recurso para o qual você não tem permissão.

Mesmo se você receber um final state de Deliver para o teste, os resultados do teste mostrarão permission denied se você não tiver permissões para as configurações que está testando.

Você pode descobrir para qual projeto precisa de permissões para ver os detalhes do recurso, mas não pode ver quais tipos de recursos estão ocultos.

Permissões em vários projetos

Se a configuração de rede que você testar usar o peering de rede VPC ou a VPC compartilhada, o Connectivity Tests terá permissões suficientes para acessar configurações nos vários projetos que essas redes usam.

Essas permissões permitem que o Connectivity Tests execute um ou mais traces completos do caminho do pacote em diferentes redes e projetos. Caso contrário, o Connectivity Tests pode acessar configurações somente nesse projeto.

Permissões para redes VPC compartilhadas

Ao executar um teste de um projeto de serviço em uma rede VPC compartilhada, você precisa ter a permissão read para a configuração da rede no projeto host. Isso ocorre porque as configurações de firewall e rota da rede estão localizadas no projeto host. Isso é verdade mesmo que os recursos que você está testando existam inteiramente em um único projeto de serviço.

Ao executar um teste de um projeto de host da VPC compartilhada para instâncias de máquina virtual (VM, na sigla em inglês) em um projeto de serviço, você precisa ter permissão para ler as configurações de VM no projeto de serviço.

Se você tiver permissões apenas para o projeto host e não fornecer o código do projeto de serviço ao Connectivity Tests, o resultado do teste mostrará um estado Final de Unreachable com uma mensagem unknown IP address.

Permissões para o peering de rede VPC, Cloud VPN e Cloud Interconnect

O Connectivity Tests precisa ter a permissão read para executar um teste para redes de peering de rede VPC em projetos que as contenham.

Se você tiver acesso a apenas uma rede em uma conexão de peering da rede VPC, os resultados do teste mostrarão que o pacote foi enviado para uma rede de peering de rede VPC. No entanto, o Connectivity Tests não pode fornecer informações adicionais para essa rede.

A seguir