Conceda acesso às operações do Google Cloud Managed Lustre concedendo papéis do Identity and Access Management (IAM) aos usuários.
As permissões do IAM controlam apenas o acesso a operações do Google Cloud Managed Lustre, como a criação de uma instância do Google Cloud Managed Lustre. Para controlar o acesso a operações do sistema de arquivos na instância, como leitura ou gravação em um arquivo, use permissões de arquivo POSIX.
Permissões e papéis
O Managed Lustre usa as seguintes permissões:
| Permissão | Descrição |
|---|---|
lustre.instances.create |
Criar novas instâncias |
lustre.instances.delete |
Excluir instâncias |
lustre.instances.update |
Atualizar instâncias. Não permite a exclusão |
lustre.instances.get |
Descrever instâncias |
lustre.instances.list |
Listar todas as instâncias |
lustre.instances.exportData
|
Exportar dados do Managed Lustre para o Cloud Storage |
lustre.instances.importData
|
Importar dados do Cloud Storage para o Managed Lustre |
lustre.locations.get |
Acessar um local |
lustre.locations.list |
Listar todos os locais com suporte |
lustre.operations.list |
Listar operações |
lustre.operations.get |
Acessar uma operação |
lustre.operations.cancel |
Cancelar uma operação |
lustre.operations.delete |
Excluir uma operação |
Google Cloud não oferece suporte à concessão de permissões individuais diretamente. É necessário conceder um papel que contenha permissões. Os papéis predefinidos do Managed Lustre são:
- Administrador do Managed Lustre (
roles/lustre.admin) - Leitor do Managed Lustre (
roles/lustre.viewer)
A tabela a seguir lista as permissões concedidas pelos papéis predefinidos do Managed Lustre, bem como o papel básico de editor:
| Capacidade | Editor (roles/editor) |
Managed Lustre (roles/lustre.*)
|
|
|---|---|---|---|
admin |
viewer |
||
| Criar instâncias | |||
| Excluir instâncias | |||
| Atualizar instâncias | |||
| Acessar instâncias | |||
| Listar instâncias | |||
| Importar/exportar dados do/para o Cloud Storage | |||
| Acessar um local | |||
| Listar locais com suporte | |||
| Listar operações de longa duração | |||
| Acessar uma operação | |||
| Cancelar uma operação | |||
| Excluir uma operação | |||
Papéis personalizados
Se os papéis predefinidos disponíveis não atenderem aos requisitos de acesso da sua organização, crie e aplique papéis personalizados do IAM.
Ao criar papéis personalizados, recomendamos o uso de uma combinação de papéis predefinidos para garantir que as permissões corretas sejam incluídas juntas.
Agente de serviço do Managed Lustre
O Managed Lustre usa um agente de serviço para acessar outros Google Cloud recursos e realizar ações em seu nome. Um agente de serviço é uma conta serviço gerenciado pelo Google que é criada automaticamente na primeira vez que você cria uma instância do Managed Lustre em um projeto. Ele também pode ser criado manualmente.
A concessão de permissões ao agente de serviço só é necessária se você usar determinados recursos opcionais. Para a criação de instâncias padrão e operações do sistema de arquivos sem esses recursos, nenhuma configuração do agente de serviço é necessária.
Recursos que exigem permissões do agente de serviço
Os recursos a seguir exigem a concessão de papéis do IAM ao agente de serviço:
| Recurso | Papel necessário | Recurso de destino | Descrição |
|---|---|---|---|
| Chaves de criptografia gerenciadas pelo cliente (CMEK, na sigla em inglês) | roles/cloudkms.cryptoKeyEncrypterDecrypter |
Chave do Cloud KMS | Permite que o agente de serviço criptografe e descriptografe dados em repouso usando sua chave. |
| Transferir dados do Cloud Storage | roles/storage.objectViewer |
Bucket do Cloud Storage | Permite que o agente de serviço leia e importe objetos do bucket para a instância. |
| Transferir dados de e para o Cloud Storage | roles/storage.objectUser |
Bucket do Cloud Storage | Permite que o agente de serviço leia e grave objetos durante as operações de importação e exportação. |
Se você não estiver usando nenhum desses recursos, pule as etapas restantes nesta seção.
Criar ou recuperar a identidade do agente de serviço
Para conceder permissões ao agente de serviço, é necessário receber a identidade dele. O agente de serviço usa o seguinte formato:
service-PROJECT_NUMBER@gcp-sa-lustre.iam.gserviceaccount.com
Use uma das seguintes opções para criar ou determinar a identidade do agente de serviço:
Se você não criou uma instância do Managed Lustre: crie o agente de serviço manualmente executando o
services identity createcomando:gcloud beta services identity create \ --service=lustre.googleapis.com \ --project=PROJECT_NUMBER_OR_IDSubstitua PROJECT_NUMBER_OR_ID pelo número ou ID do projeto em que você quer criar a instância do Managed Lustre. O comando retorna uma saída semelhante a esta:
Service identity created: service-1234567890@gcp-sa-lustre.iam.gserviceaccount.comSe você já criou uma instância do Managed Lustre:para construir a identidade do agente de serviço, recupere o número do projeto usando o comando
gcloud projects describe:gcloud projects describe PROJECT_ID --format="value(projectNumber)"Substitua PROJECT_ID pela ID do seu projeto. Em seguida, substitua PROJECT_NUMBER no endereço de e-mail do agente de serviço:
service-PROJECT_NUMBER@gcp-sa-lustre.iam.gserviceaccount.com
Conceder permissões ao agente de serviço
Depois de receber a identidade do agente de serviço, consulte a documentação a seguir para conceder o papel necessário ao seu recurso:
- Chaves de criptografia gerenciadas pelo cliente (CMEK, na sigla em inglês)
- Transferir dados de e para o Cloud Storage
Outras permissões necessárias Google Cloud
Além das permissões lustre, você pode precisar de permissões em outros
Google Cloud serviços para realizar tarefas específicas:
| Tarefa | Permissão |
|---|---|
| Criar uma rede VPC | Consulte a seção Permissões necessárias de Configurar uma rede VPC |
| Criar VMs do Compute Engine | Administrador da instância do Compute (v1).
(roles/compute.instanceAdmin.v1)
Para mais informações, consulte a
documentação do Compute Engine. |
| Criar e gerenciar clusters do Google Kubernetes Engine | Administrador de contêineres.
(roles/container.admin)
Para mais informações, consulte a documentação do Google Kubernetes Engine. |