Controle de acesso com o IAM

Nesta página, você verá como usar o gerenciamento de identidade e acesso para controlar o acesso aos recursos do AutoML Tables, incluindo origens de dados e destinos de resultados.

Visão geral do gerenciamento de identidade e acesso

Ao usar o AutoML Tables, é possível gerenciar o acesso aos recursos com o gerenciamento de identidade e acesso (IAM). Com o IAM, você tem acesso mais granular a recursos específicos do Google Cloud e impede o acesso indesejado a outros recursos. Nesta página, descrevemos as permissões e os papéis do IAM para o AutoML Tables. Para uma descrição detalhada do IAM, consulte 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 controlar quem (usuário) tem qual (papel) tipo de acesso a quais recursos, por meio da atribuição de um ou mais papéis fornecer permissões específicas. Por exemplo, é possível conceder a um usuário o papel de leitor do AutoML (roles.automl.viewer), para que ele possa ver recursos no projeto. Se esse usuário precisar criar ou atualizar recursos, será possível conceder a ele o papel de editor do AutoML (roles.automl.editor).

Papéis

O AutoML Tables utiliza a API AutoML, que fornece um conjunto de papéis predefinidos para ajudar a controlar o acesso aos recursos do AutoML.

Você também pode criar papéis personalizados próprios, caso os predefinidos não forneçam os conjuntos de permissões necessários.

Além disso, os papéis básicos mais antigos (editor, leitor e proprietário) também estão disponíveis para você, embora não forneçam o mesmo controle minucioso dos papéis do AutoML. Se possível, evite usar os papéis básicos antigos. Eles fornecem acesso a recursos no Google Cloud, em vez de apenas ao AutoML. Saiba mais sobre papéis básicos.

Papéis predefinidos

Os papéis predefinidos fornecidos pelo AutoML estão resumidos nesta seção.

Role Permissions

(roles/automl.admin)

Full access to all AutoML resources

Lowest-level resources where you can grant this role:

  • Dataset
  • Model

automl.*

  • automl.annotationSpecs.create
  • automl.annotationSpecs.delete
  • automl.annotationSpecs.get
  • automl.annotationSpecs.list
  • automl.annotationSpecs.update
  • automl.annotations.approve
  • automl.annotations.create
  • automl.annotations.list
  • automl.annotations.manipulate
  • automl.annotations.reject
  • automl.columnSpecs.get
  • automl.columnSpecs.list
  • automl.columnSpecs.update
  • automl.datasets.create
  • automl.datasets.delete
  • automl.datasets.export
  • automl.datasets.get
  • automl.datasets.getIamPolicy
  • automl.datasets.import
  • automl.datasets.list
  • automl.datasets.setIamPolicy
  • automl.datasets.update
  • automl.examples.delete
  • automl.examples.get
  • automl.examples.list
  • automl.examples.update
  • automl.files.delete
  • automl.files.list
  • automl.humanAnnotationTasks.create
  • automl.humanAnnotationTasks.delete
  • automl.humanAnnotationTasks.get
  • automl.humanAnnotationTasks.list
  • automl.locations.get
  • automl.locations.getIamPolicy
  • automl.locations.list
  • automl.locations.setIamPolicy
  • automl.modelEvaluations.create
  • automl.modelEvaluations.get
  • automl.modelEvaluations.list
  • automl.models.create
  • automl.models.delete
  • automl.models.deploy
  • automl.models.export
  • automl.models.get
  • automl.models.getIamPolicy
  • automl.models.list
  • automl.models.predict
  • automl.models.setIamPolicy
  • automl.models.undeploy
  • automl.operations.cancel
  • automl.operations.delete
  • automl.operations.get
  • automl.operations.list
  • automl.tableSpecs.get
  • automl.tableSpecs.list
  • automl.tableSpecs.update

resourcemanager.projects.get

resourcemanager.projects.list

serviceusage.services.get

serviceusage.services.list

(roles/automl.editor)

Editor of all AutoML resources

Lowest-level resources where you can grant this role:

  • Dataset
  • Model

automl.annotationSpecs.*

  • automl.annotationSpecs.create
  • automl.annotationSpecs.delete
  • automl.annotationSpecs.get
  • automl.annotationSpecs.list
  • automl.annotationSpecs.update

automl.annotations.*

  • automl.annotations.approve
  • automl.annotations.create
  • automl.annotations.list
  • automl.annotations.manipulate
  • automl.annotations.reject

automl.columnSpecs.*

  • automl.columnSpecs.get
  • automl.columnSpecs.list
  • automl.columnSpecs.update

automl.datasets.create

automl.datasets.delete

automl.datasets.export

automl.datasets.get

automl.datasets.import

automl.datasets.list

automl.datasets.update

automl.examples.*

  • automl.examples.delete
  • automl.examples.get
  • automl.examples.list
  • automl.examples.update

automl.files.*

  • automl.files.delete
  • automl.files.list

automl.humanAnnotationTasks.*

  • automl.humanAnnotationTasks.create
  • automl.humanAnnotationTasks.delete
  • automl.humanAnnotationTasks.get
  • automl.humanAnnotationTasks.list

automl.locations.get

automl.locations.list

automl.modelEvaluations.*

  • automl.modelEvaluations.create
  • automl.modelEvaluations.get
  • automl.modelEvaluations.list

automl.models.create

automl.models.delete

automl.models.deploy

automl.models.export

automl.models.get

automl.models.list

automl.models.predict

automl.models.undeploy

automl.operations.*

  • automl.operations.cancel
  • automl.operations.delete
  • automl.operations.get
  • automl.operations.list

automl.tableSpecs.*

  • automl.tableSpecs.get
  • automl.tableSpecs.list
  • automl.tableSpecs.update

resourcemanager.projects.get

resourcemanager.projects.list

serviceusage.services.get

serviceusage.services.list

(roles/automl.predictor)

Predict using models

Lowest-level resources where you can grant this role:

  • Model

automl.models.predict

resourcemanager.projects.get

resourcemanager.projects.list

(roles/automl.viewer)

Viewer of all AutoML resources

Lowest-level resources where you can grant this role:

  • Dataset
  • Model

automl.annotationSpecs.get

automl.annotationSpecs.list

automl.annotations.list

automl.columnSpecs.get

automl.columnSpecs.list

automl.datasets.get

automl.datasets.list

automl.examples.get

automl.examples.list

automl.files.list

automl.humanAnnotationTasks.get

automl.humanAnnotationTasks.list

automl.locations.get

automl.locations.list

automl.modelEvaluations.get

automl.modelEvaluations.list

automl.models.get

automl.models.list

automl.operations.get

automl.operations.list

automl.tableSpecs.get

automl.tableSpecs.list

resourcemanager.projects.get

resourcemanager.projects.list

serviceusage.services.get

serviceusage.services.list

Como conceder permissões ao AutoML Tables no projeto inicial

Às vezes, é necessário conceder outros papéis a uma conta de serviço que o AutoML Tables cria automaticamente. Por exemplo, quando você usa tabelas externas do BigQuery compatíveis com fontes de dados do Bigtable, é necessário conceder outros papéis à conta de serviço criada automaticamente para que ela tenha as permissões necessárias para ler e gravar dados no BigQuery e no Bigtable.

Para conceder outros papéis à conta de serviço criada automaticamente para AutoML Tables no projeto inicial:

  1. Acesse a página "IAM" do console do Google Cloud para seu projeto inicial.

    Acessar a página do IAM

  2. Marque a caixa de seleção Incluir concessões de papel fornecidas pelo Google no canto superior direito.

  3. Clique no ícone de lápis, na conta de serviço com o nome AutoML Service Agent.

  4. Conceda os papéis necessários à conta de serviço e salve as alterações.

Como conceder permissões ao AutoML Tables em um projeto diferente

Ao usar fontes de dados ou destinos em um projeto diferente, é preciso fornecer as permissões da conta de serviço do AutoML Tables nesse projeto. A conta de serviço do AutoML Tables é criada automaticamente ao ativar a API AutoML Tables.

Para adicionar permissões ao AutoML Tables em um projeto diferente:

  1. Acesse a página do IAM no console do Google Cloud do seu projeto inicial (o projeto em que você está usando o AutoML Tables).

    Acessar a página do IAM

  2. Marque a caixa de seleção Incluir concessões de papel fornecidas pelo Google no canto superior direito.

  3. Encontre a conta de serviço com o nome AutoML Service Agent e copie o endereço de e-mail (listado em Principal).

  4. Mude os projetos para aquele em que você precisa conceder as permissões.

  5. Clique em Adicionar e insira o endereço de e-mail em Novos principais.

  6. Adicione todos os papéis necessários e clique em Salvar.

Como fornecer acesso ao Planilhas Google

Se você usa uma fonte de dados externa do BigQuery com backup pelo Planilhas Google, compartilhe suas planilhas com a conta de serviço do AutoML. A conta de serviço do AutoML Tables é criada automaticamente ao ativar a API AutoML Tables.

Para autorizar o acesso do AutoML Tables ao arquivo do Planilhas:

  1. Acesse a página "IAM" do console do Google Cloud.

    Acessar a página do IAM

  2. Marque a caixa de seleção Incluir concessões de papel fornecidas pelo Google no canto superior direito.

  3. Procure a conta de serviço com o nome AutoML Service Agent.

  4. Copie o nome do Principal para a área de transferência.

    O nome do Principal é um endereço de e-mail, semelhante a este exemplo:

    service-358517216@gcp-sa-automl.iam.gserviceaccount.com
    
  5. Abra o arquivo do Planilhas Google e compartilhe-o com esse endereço.

Como gerenciar papéis do IAM

É possível conceder, alterar e revogar papéis do IAM usando o console do Google Cloud, a API IAM ou a ferramenta de linha de comando gcloud. Para instruções detalhadas, consulte Como conceder, alterar e revogar acesso.

A seguir

Saiba mais sobre o gerenciamento de identidade e acesso.