Projetos

Nesta página, você aprenderá sobre a relação entre os projetos do Console do Google Cloud Platform e os recursos do Cloud Storage. Para saber mais sobre os projetos do console do Google Cloud Platform em geral, consulte Projetos na visão geral do Google Cloud Platform.

O que é um projeto?

Um projeto organiza todos os seus recursos do Google Cloud Platform. Um projeto consiste em um conjunto de usuários, um conjunto de APIs e configurações de faturamento, autenticação e monitoramento dessas APIs. Por exemplo, todos os seus intervalos e objetos do Cloud Storage e as permissões de usuário para acessá-los residem em um projeto. É possível ter um projeto ou criar vários e usá-los para organizar os recursos do Google Cloud Platform, inclusive os dados do Cloud Storage, em grupos lógicos.

Quando especificar um projeto

Na maioria das vezes, não é necessário especificar um projeto para executar ações no Cloud Storage. No entanto, é preciso incluir o ID ou o número do projeto nos seguintes casos:

Console

  • Ao usar o Cloud Storage com o Console do GCP, você é automaticamente associado a um projeto. É possível alterar projetos usando o menu suspenso na parte superior da janela do Console do GCP.

  • Ao acessar pela primeira vez um intervalo com pagamentos do solicitante ativados, você receberá uma solicitação para selecionar um projeto para faturar as solicitações. Posteriormente, será possível alterar o projeto de faturamento usando o botão Alterar projeto, localizado acima da lista de objetos do intervalo.

gsutil

  • Os comandos gsutil mb, gsutil ls e gsutil kms exigem que você especifique um projeto, a menos que tenha definido um projeto padrão. Se você não definiu um projeto padrão ou quer usar um projeto diferente, use a sinalização -p para especificá-lo. Nenhum outro comando gsutil exige que você especifique um projeto.

  • Use a sinalização -u e um ID do projeto para indicar o projeto a ser cobrado pelo acesso ao intervalo. Isso é necessário para acessar um intervalo com pagamentos do solicitante ativados. Fora desse contexto, isso é opcional.

API JSON

  • Os métodos de listagem de intervalos e de inserção de intervalo exigem que você especifique um projeto. O projeto é enviado como um parâmetro no URL de solicitação, como neste exemplo:

    GET https://www.googleapis.com/storage/v1/b?project=[PROJECT_ID]
  • Para indicar um projeto de cobrança pelo acesso ao intervalo, use o parâmetro de consulta "userProject" e o ID do projeto, como neste exemplo:

    GET https://www.googleapis.com/storage/v1/b?userProject=[PROJECT_ID]

    Esse parâmetro de consulta é necessário para acessar um intervalo com pagamentos do solicitante ativados. Fora desse contexto, ele é opcional.

API XML

  • Especifique um projeto ao listar e inserir intervalos. O projeto associado a essas solicitações de API XML é especificado no cabeçalho HTTP x-goog-project-id, como neste exemplo:

    x-goog-project-id: [PROJECT_ID]

    O cabeçalho é opcional para outras solicitações da API XML ou se você definiu um projeto padrão para acesso interoperável.

  • Para indicar um projeto de cobrança pelo acesso ao intervalo, use o cabeçalho "x-goog-user-project" e um ID do projeto, como neste exemplo:

    x-goog-user-project: [PROJECT_ID]

    Esse cabeçalho é necessário para acessar um intervalo com pagamentos do solicitante ativados. Fora desse contexto, ele é opcional.

Membros e permissões do projeto

Para cada projeto, use o gerenciamento de identidade e acesso (IAM, na sigla em inglês) para adicionar membros da equipe que podem gerenciar e trabalhar no projeto. O IAM permite que você especifique um papel ou papéis de cada membro da equipe: papéis diferentes permitem que um membro realize ações distintas no projeto.

Muitos papéis do IAM podem ser definidos para envolvidos no projeto (aplicados a todos os intervalos do projeto) ou no nível do intervalo (aplicados apenas a um intervalo individual), mas há vários papéis que podem ser aplicados somente a um projeto. Esses são papéis primários. Os papéis primários têm as seguintes propriedades no Cloud Storage:

Papel Comportamento intrínseco Comportamento modificável
roles/viewer Os membros com esse papel podem listar os intervalos no projeto, além de listar e receber chaves HMAC no projeto.
  • Os membros com esse papel recebem, como um grupo, o papel roles/storage.legacyBucketReader para cada intervalo no projeto.
  • Os membros com esse papel têm permissão de READER na lista de controle de acesso de objetos padrão para cada intervalo no projeto.
  • Os membros com esse papel recebem, como um grupo, o papel de roles/storage.legacyObjectReader para todos os intervalos no projeto criados com a opção Somente política do intervalo ativada.
roles/editor Os membros com esse papel podem listar, criar e excluir intervalos no projeto, além de terem controle total sobre as chaves HMAC no projeto.
  • Os membros com esse papel recebem, como um grupo, o papel roles/storage.legacyBucketOwner para cada intervalo no projeto.
  • Os membros com esse papel têm permissão de OWNER na lista de controle de acesso de objetos padrão para cada intervalo no projeto.
  • Os membros com esse papel recebem, como um grupo, o papel de roles/storage.legacyObjectOwner para todos os intervalos no projeto criados com a opção Somente política do intervalo ativada.
roles/owner Os membros com esse papel podem listar, criar e excluir intervalos no projeto, além de terem controle total sobre as chaves HMAC no projeto. No Google Cloud Platform, normalmente os membros com roles/owner podem realizar tarefas administrativas como alterar papéis dos membros do projeto ou alterar o faturamento.
  • Os membros com esse papel recebem, como um grupo, o papel roles/storage.legacyBucketOwner para cada intervalo no projeto.
  • Os membros com esse papel têm permissão de OWNER na lista de controle de acesso de objetos padrão para cada intervalo no projeto.
  • Os membros com esse papel recebem, como um grupo, o papel de roles/storage.legacyObjectOwner para todos os intervalos no projeto criados com a opção Somente política do intervalo ativada.

Para uma lista de papéis disponíveis que se aplicam ao Cloud Storage, consulte Papéis do IAM do Cloud Storage.

Para instruções sobre como adicionar, visualizar e remover papéis de membros para envolvidos no projeto, consulte Como usar o IAM com projetos.

Conforme ilustrado na coluna Comportamento modificável acima, os membros da equipe do projeto podem ter acesso além do concedido intrinsecamente pelos papéis primários do IAM. Esse acesso extra tem duas origens:

Em ambos os casos, é possível conceder acesso a usuários individuais e a todos que têm um papel primário. Além disso, o acesso concedido pode ser mais abrangente do que o acesso que um usuário costuma ter para o projeto, mas não mais restrito.

Contas de serviço

As contas de serviço permitem que os aplicativos autentiquem e acessem recursos e serviços do GCP. Por exemplo, é possível criar uma conta de serviço que as instâncias do Compute Engine usam para acessar objetos armazenados em intervalos do Cloud Storage.

As contas de serviço são criadas dentro de um projeto e têm um endereço de e-mail exclusivo. Embora a maioria das contas de serviço seja criada e gerenciada por um usuário, algumas são criadas automaticamente e gerenciadas pelos serviços do GCP. O Cloud Storage cria uma dessas contas de serviço com um endereço de e-mail no seguinte formato:

service-[PROJECT_NUMBER]@gs-project-accounts.iam.gserviceaccount.com

Em que [PROJECT_NUMBER] é o número do projeto da conta de serviço.

Usos com o Cloud Storage

Os seguintes recursos usam contas de serviço do Cloud Storage:

As contas de serviço que não são do Cloud Storage podem realizar ações que usam recursos do Cloud Storage. Veja alguns exemplos:

A seguir

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Precisa de ajuda? Acesse nossa página de suporte.