Controle de acesso com o IAM

O AI Platform Training usa o Identity and Access Management (IAM) para gerenciar o acesso aos recursos. Para conceder acesso a um recurso, atribua um ou mais papéis a um usuário, um grupo ou uma conta de serviço.

Há três tipos de papéis de IAM que podem ser usados no AI Platform Training:

  • Os papéis básicos (proprietário, leitor e editor) são comuns a todos os serviços do Google Cloud.

  • Papéis predefinidas do AI Platform Training fornecem um controle de acesso refinado para os recursos desse serviço nos níveis do modelo e do projeto.

  • Os papéis personalizados permitem escolher um conjunto específico de permissões, criar seu próprio papel com elas e concedê-lo aos usuários da organização.

Neste guia, você verá os papéis predefinidos do AI Platform Training, os casos de uso típicos deles e as permissões associadas.

Neste guia, você verá os papéis e as permissões necessários para acessar os recursos do AI Platform Training. Para saber mais sobre as permissões que esses recursos têm para acessar outros recursos do Google Cloud, leia sobre o agente de serviço do AI Platform e as contas de serviço personalizadas.

Papéis básicos

Os papéis de IAM legados do AI Platform Training são baseados nos papéis básicos comuns a todos os serviços do GCP: proprietário, leitor e editor.

O papel legado de Editor do projeto é equivalente ao papel administrador do AI Platform Training.

O papel legado de Leitor do projeto concede as mesmas permissões que o papel leitor do AI Platform Training, além do acesso para enviar solicitações de previsão on-line. A vantagem de usar o papel leitor do AI Platform Training é que o usuário tem acesso somente leitura aos recursos desse serviço.

Papéis predefinidos

Os papéis predefinidos concedem um grupo de permissões relacionadas. O AI Platform Training oferece papéis predefinidos não só para o projeto, mas também para operações, jobs e modelos individuais.

Para a lista completa de permissões, clique no nome do papel.

Papéis do projeto

Os papéis administrador, desenvolvedor e leitor do AI Platform Training concedem níveis variados de acesso a recursos no nível do projeto.

Para adicionar, atualizar ou remover esses papéis do seu projeto do AI Platform Training, consulte a documentação sobre como conceder, alterar e revogar acesso.

Título do papel Nome do papel Poderes
Administrador do AI Platform Training

roles/ml.admin

Controle total sobre o projeto do AI Platform Training, bem como sobre jobs, operações, modelos e versões dele.

Observação: o papel básico Editor do projeto equivale a roles/ml.admin.

Desenvolvedor do AI Platform Training

roles/ml.developer

Acesso para criar jobs de treinamento e predição, modelos e versões e para enviar solicitações de predição on-line.

Leitor do AI Platform Training

roles/ml.viewer

Acesso somente leitura aos recursos do AI Platform Training.

Papéis de job e de operação

Assim como o papel de proprietário do modelo, há papéis de proprietário no nível de recursos de job e de operação que são atribuídos automaticamente ao usuário que cria o job ou a operação. Com esses papéis, os usuários têm o controle total sobre qualquer job ou operação que criarem. Para mais informações, consulte as permissões dos papéis relacionados a jobs e operações.

Permissões e papéis

Nesta seção, você encontra uma lista completa das permissões concedidas em cada papel predefinido do AI Platform Training. Se esses papéis predefinidos não atenderem às suas necessidades, use esta seção como referência para criar seus próprios papéis personalizados.

Papel de Administrador

Nome do papel Descrição Permissões
roles/ml.admin Administrador do AI Platform Training

Acesso total ao projeto do AI Platform Training e aos respectivos jobs, operações, modelos e versões dele.

Observação: é bem simples migrar para este papel a partir do papel básico Editor do projeto. Se você já usou o papel básico Editor atribuído no nível do projeto, é possível utilizar o papel roles/ml.admin para conceder exatamente o mesmo conjunto de permissões ao usuário.

  • resourcemanager.projects.get
  • ml.projects.getConfig
  • ml.jobs.create
  • ml.jobs.list
  • ml.jobs.get
  • ml.jobs.getIamPolicy
  • ml.jobs.setIamPolicy
  • ml.jobs.cancel
  • ml.operations.list
  • ml.operations.get
  • ml.operations.cancel
  • ml.models.create
  • ml.models.list
  • ml.models.get
  • ml.models.setIamPolicy
  • ml.models.getIamPolicy
  • ml.models.predict
  • ml.models.delete
  • ml.models.update
  • ml.versions.create
  • ml.versions.list
  • ml.versions.get
  • ml.versions.predict
  • ml.versions.delete

Papel de desenvolvedor

Nome do papel Descrição Permissões
roles/ml.developer

Acesso que permite criar jobs de treinamento e predição, modelos e versões e enviar solicitações de predição on-line.

Observação: o desenvolvedor recebe as permissões ml.jobs.cancel e ml.jobs.update em todos os jobs que ele cria. O motivo disso é que o usuário que cria um job recebe automaticamente o papel de proprietário do job do AI Platform Training.

Recomendação: conceda ao desenvolvedor acesso somente leitura aos registros do AI Platform Training para que ele consiga solucionar problemas.

  • resourcemanager.projects.get
  • ml.projects.getConfig
  • ml.jobs.create
  • ml.jobs.list
  • ml.jobs.get
  • ml.jobs.getIamPolicy
  • ml.operations.list
  • ml.operations.get
  • ml.models.create
  • ml.models.list
  • ml.models.get
  • ml.models.getIamPolicy
  • ml.models.predict
  • ml.versions.list
  • ml.versions.get
  • ml.versions.predict

Papel de Leitor

Nome do papel Descrição Permissões
roles/ml.viewer

Acesso somente leitura aos recursos do AI Platform Training em um projeto específico.

Observação: o papel legado de Leitor do projeto concede ao usuário as mesmas permissões que o papel roles/ml.viewer, além do acesso para enviar solicitações de previsão on-line.

  • resourcemanager.projects.get
  • ml.projects.getConfig
  • ml.jobs.list
  • ml.jobs.get
  • ml.operations.list
  • ml.operations.get
  • ml.models.list
  • ml.models.get
  • ml.versions.list
  • ml.versions.get

Papel de Proprietário do job

Nome do papel Descrição Permissões
roles/ml.jobOwner

Acesso total a todas as permissões para um determinado recurso de job. Esse papel é concedido automaticamente ao usuário que cria o job.

Por exemplo, um usuário como papel desenvolvedor do AI Platform Training pode criar, listar e receber jobs em um determinado projeto. Ele tem permissão para cancelar apenas os jobs criados por ele.

  • ml.jobs.get
  • ml.jobs.getIamPolicy
  • ml.jobs.cancel

Papel de proprietário de operação

Nome do papel Descrição Permissões
roles/ml.operationOwner

Acesso total a todas as permissões para um determinado recurso de operação. Este papel é concedido ao usuário automaticamente em todas as operações que ele criar indiretamente durante a criação de uma versão ou um modelo, para que o usuário possa sempre ver e cancelar as próprias operações.

  • ml.operations.get
  • ml.operations.cancel

Permissões exigidas para métodos

Para facilitar, esta seção traz uma lista das permissões necessárias para chamar cada método no AI Platform Training:

Método Permissões necessárias
projects.getConfig ml.projects.getConfig
projects.jobs.cancel ml.jobs.cancel
projects.jobs.create ml.jobs.create
projects.jobs.get ml.jobs.get
projects.jobs.list ml.jobs.list
projects.operations.cancel ml.operations.cancel
projects.operations.get ml.operations.get
projects.operations.list ml.operations.list

A seguir