Papéis e permissões

OGoogle Cloud oferece o gerenciamento de identidade e acesso (IAM), que permite conceder um acesso mais granular a recursos Google Cloud específicos e impede o acesso indesejado a outros recursos. Esta página descreve os papéis da API Service Directory. Para uma descrição detalhada do IAM, leia a documentação do IAM.

Com o IAM, é possível adotar o princípio de segurança do menor privilégio para conceder apenas o acesso necessário aos recursos.

O IAM permite que você defina políticas para controlar quem tem quais permissões em quais recursos. As políticas do IAM concedem papéis específicos a um usuário, que recebe determinadas permissões.

Permissões e papéis

Todos os métodos da API Service Directory exigem que o autor da chamada tenha as permissões de IAM necessárias. É possível atribuir permissões ao conceder papéis a um usuário, grupo ou conta de serviço. Além dos papéis básicos de proprietário, editor e leitor, é possível conceder papéis da API Service Directory aos usuários do projeto.

Permissões

Descubra quais permissões são necessárias para cada método na documentação de referência da API do Diretório de serviços.

Papéis

Role Permissions

(roles/servicedirectory.admin)

Full control of all Service Directory resources and permissions.

resourcemanager.projects.get

resourcemanager.projects.list

servicedirectory.endpoints.*

  • servicedirectory.endpoints.create
  • servicedirectory.endpoints.delete
  • servicedirectory.endpoints.get
  • servicedirectory.endpoints.getIamPolicy
  • servicedirectory.endpoints.list
  • servicedirectory.endpoints.setIamPolicy
  • servicedirectory.endpoints.update

servicedirectory.locations.*

  • servicedirectory.locations.get
  • servicedirectory.locations.list

servicedirectory.namespaces.*

  • servicedirectory.namespaces.associatePrivateZone
  • servicedirectory.namespaces.create
  • servicedirectory.namespaces.delete
  • servicedirectory.namespaces.get
  • servicedirectory.namespaces.getIamPolicy
  • servicedirectory.namespaces.list
  • servicedirectory.namespaces.setIamPolicy
  • servicedirectory.namespaces.update

servicedirectory.networks.attach

servicedirectory.services.*

  • servicedirectory.services.bind
  • servicedirectory.services.create
  • servicedirectory.services.delete
  • servicedirectory.services.get
  • servicedirectory.services.getIamPolicy
  • servicedirectory.services.list
  • servicedirectory.services.resolve
  • servicedirectory.services.setIamPolicy
  • servicedirectory.services.update

(roles/servicedirectory.editor)

Edit Service Directory resources.

resourcemanager.projects.get

resourcemanager.projects.list

servicedirectory.endpoints.create

servicedirectory.endpoints.delete

servicedirectory.endpoints.get

servicedirectory.endpoints.getIamPolicy

servicedirectory.endpoints.list

servicedirectory.endpoints.update

servicedirectory.locations.*

  • servicedirectory.locations.get
  • servicedirectory.locations.list

servicedirectory.namespaces.associatePrivateZone

servicedirectory.namespaces.create

servicedirectory.namespaces.delete

servicedirectory.namespaces.get

servicedirectory.namespaces.getIamPolicy

servicedirectory.namespaces.list

servicedirectory.namespaces.update

servicedirectory.networks.attach

servicedirectory.services.bind

servicedirectory.services.create

servicedirectory.services.delete

servicedirectory.services.get

servicedirectory.services.getIamPolicy

servicedirectory.services.list

servicedirectory.services.resolve

servicedirectory.services.update

(roles/servicedirectory.networkAttacher)

Gives access to attach VPC Networks to Service Directory Endpoints

resourcemanager.projects.get

resourcemanager.projects.list

servicedirectory.networks.attach

(roles/servicedirectory.pscAuthorizedService)

Gives access to VPC Networks via Service Directory

resourcemanager.projects.get

resourcemanager.projects.list

servicedirectory.networks.access

(roles/servicedirectory.viewer)

View Service Directory resources.

resourcemanager.projects.get

resourcemanager.projects.list

servicedirectory.endpoints.get

servicedirectory.endpoints.getIamPolicy

servicedirectory.endpoints.list

servicedirectory.locations.*

  • servicedirectory.locations.get
  • servicedirectory.locations.list

servicedirectory.namespaces.get

servicedirectory.namespaces.getIamPolicy

servicedirectory.namespaces.list

servicedirectory.services.get

servicedirectory.services.getIamPolicy

servicedirectory.services.list

servicedirectory.services.resolve

Controle de acesso usando o console do Google Cloud

É possível usar o console do Google Cloud para gerenciar o controle de acesso do registro.

Para definir os controles de acesso no nível do projeto:

Console

  1. No console do Google Cloud, abra a página IAM.

    Acessar IAM

  2. Selecione seu projeto no menu suspenso na parte superior.

  3. Clique em Add.

  4. Em Novos principais, digite o endereço de e-mail de um novo principal.

  5. Selecione o papel desejado no menu suspenso: servicedirectory.admin, servicedirectory.editor ou servicedirectory.viewer.

  6. Clique em Salvar.

  7. Verifique se o principal está listado com o papel concedido.

As zonas do Diretório de serviços substituem as restrições do IAM

Ao atribuir um namespace a uma zona do Diretório de serviços, os nomes de serviço ficam visíveis para todos os clientes em qualquer rede autorizada a consultar a zona particular. Não há controle de acesso do IAM para DNS, porque o protocolo DNS não oferece capacidade de autenticação.

A seguir

  • Para mais detalhes sobre o gerenciamento de identidade e acesso, consulte a documentação do IAM.
  • Consulte a Visão geral para entender o Diretório de serviços.