Controle de acesso e permissões

Nesta página, descrevemos como controlar o acesso e as permissões do projeto do Memorystore para Memcached usando o gerenciamento de identidade e acesso (IAM, na sigla em inglês).

Visão geral

Com o IAM, você controla o acesso a recursos específicos do Google Cloud em um nível granular e também impede o acesso indesejado a esses recursos. Para uma descrição detalhada dos papéis e permissões, consulte a documentação do IAM.

O Memorystore para Memcached fornece um conjunto de papéis predefinidos projetados para ajudar você a controlar facilmente o acesso aos recursos do Memcached. Se os papéis predefinidos não fornecerem os conjuntos de permissões necessárias, você também poderá criar papéis personalizados. Além disso, os papéis primários legados (Editor, Leitor e Proprietário) ainda estão disponíveis para você, ainda que não forneçam o mesmo controle refinado que os papéis do Memorystore para Memcached. Especificamente, os papéis primários fornecem acesso a recursos no Google Cloud, e não apenas no Memorystore para Memcached. Para mais informações sobre papéis primários, consulte Papéis primários.

Permissões e papéis

Esta seção resume as permissões e papéis compatíveis com o Memorystore para Memcached.

Papéis predefinidos

O Memorystore para Memcached fornece papéis predefinidos que você pode usar para fornecer permissões mais refinadas aos membros do projeto. As ações realizadas por membros do projeto são controladas pelos papéis concedidos a eles. Os membros do projeto podem ser indivíduos, grupos ou contas de serviço.

Os proprietários do projeto podem conceder vários papéis ao mesmo membro do projeto e podem alterá-los a qualquer momento.

Os papéis mais amplos são definidos de forma mais restrita. Por exemplo, o papel Editor do Memcached inclui todas as permissões do papel Leitor do Memcached, além da adição de permissões para o papel Editor do Memcached. Da mesma forma, o papel Administrador do Memcached inclui todas as permissões do papel Editor do Memcached, junto com as permissões adicionais.

Os papéis primários (proprietário, editor, leitor) fornecem permissões no Google Cloud. Os papéis específicos do Memorystore para Memcached fornecem apenas permissões do Memorystore para Memcached, exceto as seguintes permissões do Google Cloud, que são necessárias para o uso geral do Google Cloud:

resourcemanager.projects.get
resourcemanager.projects.list

A tabela a seguir lista os papéis predefinidos disponíveis para o Memorystore para Memcached e as permissões do Memorystore para Memcached:

Role Nome Permissões do Memcached Descrição

roles/owner

Proprietário

memcache.*

Controle e acesso total a todos os recursos do Google Cloud, gerencie o acesso do usuário

roles/editor

Editor Todas as permissões memcache , exceto *.getIamPolicy e .setIamPolicy Acesso de leitura e gravação a todos os recursos do Google Cloud e do Memcached (controle total, exceto a capacidade de modificar permissões)

roles/viewer

Leitor

memcache.*.get memcache.*.list

Acesso somente leitura a todos os recursos do Google Cloud, incluindo recursos do Memcached

roles/memcache.admin

Administrador do Memcached

memcache.*

Controle total de todos os recursos do Memorystore para Memcached.

roles/memcache.editor

Editor do Memcached Todas as permissões memcache, exceto para

memcache.instances.create memcache.instances.delete

Gerencie as instâncias do Memorystore para Memcached. Não pode criar ou excluir instâncias.

roles/memcache.viewer

Leitor do Memcached Todas as permissões memcache, exceto para

memcache.instances.create memcache.instances.delete memcache.instances.update memcache.operations.delete memcache.instances.applyParameters memcache.instances.updateParameters

Acesso somente leitura a todos os recursos do Memorystore para Memcached.

Permissões e os papéis delas

A tabela a seguir lista as permissões compatíveis com o Memorystore para Memcached e os papéis do Memorystore para Memcached que incluem:

Permissão Papel do Memcached Papel legado

memcache.instances.list

Administrador do Memcached
Editor do Memcached
Leitor do Memcached
Leitor

memcache.instances.get

Administrador do Memcached
Editor do Memcached
Leitor do Memcached
Leitor

memcache.instances.create

Administrador do Memcached Editor

memcache.instances.update

Administrador do Memcached
Editor do Memcached
Editor

memcache.instances.delete

Administrador do Memcached Editor

memcache.instances.applyParameters

Administrador do Memcached
Editor do Memcached
Editor

memcache.instances.updateParameters

Administrador do Memcached
Editor do Memcached
Editor

memcache.locations.list

Administrador do Memcached
Editor do Memcached
Leitor do Memcached
Leitor

memcache.locations.get

Administrador do Memcached
Editor do Memcached
Leitor do Memcached
Leitor

memcache.operations.list

Administrador do Memcached
Editor do Memcached
Leitor do Memcached
Leitor

memcache.operations.get

Administrador do Memcached
Editor do Memcached
Leitor do Memcached
Leitor

memcache.operations.delete

Administrador do Memcached
Editor do Memcached
Editor

Papéis personalizados

Se os papéis predefinidos não atenderem aos requisitos exclusivos de sua empresa, defina papéis personalizados próprios e especifique as respectivas permissões. Ao criar papéis personalizados para o Memorystore para Memcached, inclua resourcemanager.projects.get e resourcemanager.projects.list. Para mais informações, consulte Dependências de permissão.

Permissões necessárias para tarefas comuns no Console do Cloud

Para permitir que um usuário trabalhe com o Memorystore para Memcached usando o Console do Cloud, o papel do usuário precisa incluir as permissões resourcemanager.projects.get e resourcemanager.projects.list.

A tabela a seguir fornece as outras permissões necessárias para algumas tarefas comuns no Console do Cloud:

Tarefa Permissões adicionais necessárias
Exibir a página de listagem de instâncias

memcache.instances.get
memcache.instances.list

Criar e editar uma instância

memcache.instances.create
memcache.instances.get
memcache.instances.list
memcache.instances.update
memcache.instances.applyParameters
memcache.instances.updateParameters
compute.networks.list

Excluir uma instância

memcache.instances.delete
memcache.instances.get
memcache.instances.list

Conectar-se a uma instância do Cloud Shell

memcache.instances.get
memcache.instances.list
memcache.instances.update

Exibir informações da instância

memcache.instances.get
monitoring.timeSeries.list

Permissões necessárias para comandos gcloud

Para permitir que um usuário trabalhe com o Memorystore para Memcached usando comandos gcloud, o papel do usuário precisa incluir as permissões resourcemanager.projects.get e resourcemanager.projects.list.

A tabela a seguir lista as permissões que o usuário que invoca um comando gcloud precisa ter para cada subcomando gcloud beta memcache:

Comando Permissões necessárias
gcloud beta memcache instances create

memcache.instances.get
memcache.instances.create

gcloud beta memcache instances delete

memcache.instances.delete

gcloud beta memcache instances update

memcache.instances.get
memcache.instances.update
memcache.instances.updateParameters

gcloud beta memcache instances list

memcache.instances.list

gcloud beta memcache instances describe

memcache.instances.get

gcloud beta memcache instances apply-parameters

memcache.instances.applyParameters

gcloud beta memcache operations list

memcache.operations.list

gcloud beta memcache operations describe

memcache.operations.get

gcloud beta memcache regions list

memcache.locations.list

gcloud beta memcache regions describe

memcache.locations.get

gcloud beta memcache zones list

memcache.locations.list

Permissões necessárias para métodos de API

A tabela a seguir lista as permissões que o usuário precisa ter para chamar cada método na API Memorystore para Memcached ou para executar tarefas usando ferramentas do Google Cloud que usam a API (como o Console do Cloud ou a ferramenta de linha de comando gcloud):

Método Permissões necessárias

locations.get

memcache.locations.get

locations.list

memcache.locations.list

instances.create

memcache.instances.create

instances.delete

memcache.instances.delete

instances.get

memcache.instances.get

instances.list

memcache.instances.list

instances.patch

memcache.instances.update

instances.updateParameters

memcache.instances.updateParameters

instances.applyParameters

memcache.instances.applyParameters

operations.get

memcache.operations.get

operations.list

memcache.operations.list

A seguir