Papéis e permissões

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

É possível conceder aos usuários ou às contas de serviço permissões ou papéis predefinidos, 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 para testar permissões do IAM com a API Network Management, consulte Como gerenciar as políticas de acesso.

Papéis

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

Para ver 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:

  • networkmanagement.admin: tem permissão para executar todas as operações em um recurso de teste.
  • networkmanagement.viewer: tem permissão para listar ou receber 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.

Role Permissions

(roles/networkmanagement.admin)

Full access to Network Management resources.

Lowest-level resources where you can grant this role:

  • Project

networkmanagement.*

  • networkmanagement.connectivitytests.create
  • networkmanagement.connectivitytests.delete
  • networkmanagement.connectivitytests.get
  • networkmanagement.connectivitytests.getIamPolicy
  • networkmanagement.connectivitytests.list
  • networkmanagement.connectivitytests.rerun
  • networkmanagement.connectivitytests.setIamPolicy
  • networkmanagement.connectivitytests.update
  • networkmanagement.locations.get
  • networkmanagement.locations.list
  • networkmanagement.operations.cancel
  • networkmanagement.operations.delete
  • networkmanagement.operations.get
  • networkmanagement.operations.list
  • networkmanagement.vpcflowlogsconfigs.create
  • networkmanagement.vpcflowlogsconfigs.delete
  • networkmanagement.vpcflowlogsconfigs.get
  • networkmanagement.vpcflowlogsconfigs.list
  • networkmanagement.vpcflowlogsconfigs.update

resourcemanager.organizations.get

resourcemanager.projects.get

resourcemanager.projects.list

(roles/networkmanagement.viewer)

Read-only access to Network Management resources.

Lowest-level resources where you can grant this role:

  • Project

networkmanagement.connectivitytests.get

networkmanagement.connectivitytests.getIamPolicy

networkmanagement.connectivitytests.list

networkmanagement.locations.*

  • networkmanagement.locations.get
  • networkmanagement.locations.list

networkmanagement.operations.get

networkmanagement.operations.list

networkmanagement.vpcflowlogsconfigs.get

networkmanagement.vpcflowlogsconfigs.list

resourcemanager.organizations.get

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.

Papéis do projeto

É possível usar papéis de projeto para definir permissões para recursos do Google Cloud. Como os testes de conectividade precisam ter acesso de leitura às configurações de recursos do Google Cloud na rede da nuvem privada virtual (VPC) para executar um teste, você precisa conceder pelo menos o papel de visualizador da rede do Compute roles/compute.networkViewer aos usuários ou às 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.

Se você não tiver permissão para criar ou atualizar um teste, os botões correspondentes estarão inativos. Isso inclui o botão Criar teste de conectividade e, na página Detalhes do teste de conectividade, o botão Editar. Em cada caso, quando você mantém o ponteiro sobre o botão inativo, os testes de conectividade exibem uma mensagem descrevendo a permissão necessária.

Permissões para executar um teste

Você precisa das seguintes funções e permissões para executar um teste:

  • Permissão networkmanagement.connectivitytests.create (ou networkmanagement.connectivitytests.rerun) em um projeto com um recurso de Testes de conectividade.
  • Papel de visualizador de rede do Compute (roles/compute.networkViewer) ou o papel de visualizador legado (roles/viewer) para todos os projetos incluídos no caminho de rastreamento.

Confira as seguintes considerações com diferentes tipos de opções de conectividade.

Peering de rede VPC, Network Connectivity Center ou conectividade do Cloud VPN

Se o caminho de rastreamento incluir o peering de rede VPC, o Network Connectivity Center ou a conectividade do Cloud VPN a uma rede em um projeto diferente, um caminho de pacote nessa rede só será simulado se você tiver permissões para esse projeto. Caso contrário, um resultado de teste incompleto é retornado (por exemplo, um rastro que termina com o estado final Forward).

Projetos de VPC compartilhada

Se um endpoint de origem ou de destino (como uma instância de máquina virtual) usar a VPC compartilhada, você precisará ter permissão para acessar os projetos de host e de serviço.

  • Se você tiver permissão para acessar os projetos host e de serviço, as informações de rastreamento incluem detalhes sobre todos os recursos relevantes.
  • Se você não tiver permissão para acessar um dos projetos, as informações sobre os recursos definidos neste projeto serão ocultas no trace. Um erro de permissão é exibido.
Exemplos
  • Você tem acesso ao projeto de instância de VM (projeto de serviço), mas não tem acesso ao projeto de rede (projeto host). Se você executar um teste com essa instância de VM como origem (especificada pelo nome), todas as etapas associadas ao projeto host (por exemplo, a aplicação de firewalls ou rotas) serão ocultas.

  • Você tem acesso ao projeto de rede (projeto host), mas não tem acesso ao projeto de VM (projeto de serviço). Se você executar um teste com essa instância de VM como origem (especificada pelo endereço IP), todas as etapas associadas ao projeto de serviço, por exemplo, uma etapa com os detalhes da instância da VM, serão ocultas.

Serviços publicados do Private Service Connect

Se o pacote for enviado para o serviço publicado do Private Service Connect (por um endpoint ou back-end do Private Service Connect), a parte do rastro no projeto do produtor só será mostrada se você tiver acesso a ele. Caso contrário, o rastreamento termina com um estado final geral, como Pacote entregue ao projeto de produtor do PSC ou Pacote descartado no projeto de produtor do PSC.

Serviços gerenciados pelo Google

Se o pacote for enviado para ou da rede gerenciada pelo Google associada a um serviço gerenciado pelo Google (como o Cloud SQL), as etapas dentro do projeto gerenciado pelo Google não serão mostradas. Uma etapa inicial geral ou final é mostrada.

Endereços IP públicos dos recursos do Google Cloud

Se você especificar um endereço IP público atribuído a um recurso em um dos seus projetos como uma origem ou um destino de teste, mas não tiver permissões para o projeto em que o recurso com esse endereço está definido, esse endereço IP será considerado um endereço IP da Internet. Nenhum detalhe sobre o recurso subjacente ou o caminho do pacote após esse recurso ser alcançado é mostrado.

Permissões para visualizar os resultados do teste

Para conferir os resultados do teste, observe o seguinte:

  • Para conferir os resultados de testes criados ou atualizados após outubro de 2024, você só precisa da permissão para acessar o recurso de teste (networkmanagement.connectivitytests.get). Não é necessário ter permissões para os recursos e projetos incluídos no caminho de rastreamento.
  • Para conferir os resultados dos testes executados antes de outubro de 2024, você precisa ter o papel de visualizador de rede do Compute ou o papel de visualizador legado (roles/viewer) para todos os projetos incluídos no caminho de rastreamento.

Políticas de firewall hierárquicas

Seu trace pode incluir uma política de firewall hierárquica que você não tem permissão para ver. No entanto, mesmo se você não tiver permissão para visualizar os detalhes da política, ainda poderá ver as regras de política que se aplicam à sua rede VPC. Para mais detalhes, consulte Papéis do IAM na visão geral "Políticas de firewall hierárquicas".

A seguir