Controle de acesso com o IAM

Nesta página, descrevemos como controlar o acesso aos recursos do Cloud FTP.

O Cloud FTP usa o Identity and Access Management (IAM) para controlar o acesso aos recursos. O IAM é uma ferramenta para gerenciar a autorização refinada dos seus recursos do Google Cloud . Em outras palavras, o IAM permite controlar quem pode fazer o quê em quais recursos.

Para dar acesso a um recurso com o IAM, conceda papéis específicos aos usuários. Os papéis do IAM concedem aos principais permissões para realizar tarefas nos seus recursos do Cloud FTP.

Para informações detalhadas sobre o IAM e os recursos dele, consulte a documentação do IAM.

Gerenciar o acesso aos recursos do Cloud FTP

A maneira mais comum de gerenciar o acesso com o IAM é usar políticas de permissão. As políticas de permissão listam quais principais têm acesso ao recurso e quais ações podem ser realizadas nele.

As seções a seguir descrevem como gerenciar o acesso com políticas de permissão usando o console do Google Cloud e a Google Cloud CLI. Isso inclui procedimentos para tarefas comuns, como conceder e revogar uma única função. Também é possível conceder e revogar vários papéis ao mesmo tempo. Para mais informações, consulte Gerenciar o acesso a projetos, pastas e organizações na documentação do IAM.

Também é possível usar políticas de permissão anexadas a diferentes recursos do Google Cloud para gerenciar o acesso em outros níveis da hierarquia de recursos. Para saber mais, consulte Como usar a hierarquia de recursos para controle de acesso na documentação do IAM.

Nem todos os recursos são compatíveis com políticas de permissão. Para saber a quais recursos é possível anexar políticas de permissão, consulte Recursos que aceitam políticas de permissão na documentação do IAM.

Para saber mais sobre outras políticas que podem ser usadas para controlar o acesso com o IAM, como políticas de negação, consulte Tipos de políticas do IAM na documentação do IAM.

Conceder um único papel do IAM em um projeto, uma pasta ou uma organização

Esta seção descreve como conceder acesso no nível do projeto, da pasta ou da organização. Isso controla o acesso de um usuário ao projeto, à pasta ou à organização e a todos os recursos neles.

Para conceder um único papel a um principal em um projeto, pasta ou organização, faça o seguinte:

Console

  1. No console do Google Cloud , acesse a página IAM.

    Acessar IAM

  2. Selecione um projeto, pasta ou organização.
  3. Selecione um principal para conceder um papel:
    • Para conceder um papel adicional a um principal no recurso, encontre uma linha que contenha o principal, clique em Editar principal nessa linha e clique em Adicionar outro papel.

      Para conceder um papel a um agente de serviço, marque a caixa de seleção Incluir concessões de papel fornecidas pelo Google para ver o endereço de e-mail dele.

    • Para conceder um papel a um principal que ainda não tem papéis no recurso, clique em Conceder acesso e insira um identificador principal, por exemplo, my-user@example.com ou //iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com.
  4. Na lista suspensa, selecione um papel a ser concedido. Para práticas recomendadas de segurança, escolha um papel que inclua apenas as permissões necessárias ao principal.
  5. Opcional: adicione uma condição ao papel.
  6. Clique em Salvar. O principal recebe o papel no recurso.

gcloud

  1. No console do Google Cloud , ative o Cloud Shell.

    Ativar o Cloud Shell

    Na parte de baixo do console Google Cloud , uma sessão do Cloud Shell é iniciada e exibe um prompt de linha de comando. O Cloud Shell é um ambiente shell com a CLI do Google Cloud já instalada e com valores já definidos para o projeto atual. A inicialização da sessão pode levar alguns segundos.

  2. O comando add-iam-policy-binding permite que você conceda rapidamente um papel a um principal.

    Antes de usar os dados do comando abaixo, faça estas substituições:

    • RESOURCE_TYPE: o tipo de recurso ao qual você quer gerenciar o acesso. Use projects, resource-manager folders ou organizations.

    • RESOURCE_ID: o ID do projeto, da pasta ou da organização do Google Cloud . Os IDs de projeto são alfanuméricos, como my-project. Os IDs de pastas e organizações são numéricos, como 123456789012.

    • PRINCIPAL: um identificador do principal ou membro, que geralmente tem o seguinte formato: PRINCIPAL_TYPE:ID. Por exemplo, user:my-user@example.com ou principalSet://iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com. Para conferir uma lista completa dos valores que PRINCIPAL pode ter, consulte Identificadores principais.

      Para o tipo de principal user, o nome de domínio no identificador precisa ser do Google Workspace ou do Cloud Identity. Para saber como configurar um domínio do Cloud Identity, consulte a Visão geral do Cloud Identity.

    • ROLE_NAME: o nome do papel que você quer conceder. Use um dos seguintes formatos:

      • Papéis predefinidos: roles/SERVICE.IDENTIFIER
      • Papéis personalizados para envolvidos no projeto: projects/PROJECT_ID/roles/IDENTIFIER
      • Papéis personalizados no nível da organização: organizations/ORG_ID/roles/IDENTIFIER

      Para uma lista de papéis predefinidos, consulte Noções básicas sobre papéis.

    • CONDITION: a condição a ser adicionada à vinculação de papel. Se você não quiser adicionar uma condição, use o valor None. Para mais informações sobre as condições, consulte a visão geral das condições.

    Execute o seguinte comando:

    Linux, macOS ou Cloud Shell

    gcloud RESOURCE_TYPE add-iam-policy-binding RESOURCE_ID \
        --member=PRINCIPAL --role=ROLE_NAME \
        --condition=CONDITION

    Windows (PowerShell)

    gcloud RESOURCE_TYPE add-iam-policy-binding RESOURCE_ID `
        --member=PRINCIPAL --role=ROLE_NAME `
        --condition=CONDITION

    Windows (cmd.exe)

    gcloud RESOURCE_TYPE add-iam-policy-binding RESOURCE_ID ^
        --member=PRINCIPAL --role=ROLE_NAME ^
        --condition=CONDITION

    A resposta contém a política de permissão do IAM atualizada.

Revogar uma única função do IAM em um projeto, uma pasta ou uma organização

Esta seção descreve como revogar o acesso no nível do projeto, da pasta ou da organização. Isso controla o acesso de um usuário ao projeto, à pasta ou à organização e a todos os recursos neles.

Para revogar um único papel de um principal em um projeto, pasta ou organização, faça o seguinte:

Console

  1. No console do Google Cloud , acesse a página IAM.

    Acessar o IAM

  2. Selecione um projeto, pasta ou organização.
  3. Encontre a linha que contém o principal cujo acesso você quer revogar. Em seguida, clique em Editar principal nessa linha.
  4. Clique no botão Excluir do papel que você quer revogar e clique em Salvar.

gcloud

  1. No console do Google Cloud , ative o Cloud Shell.

    Ativar o Cloud Shell

    Na parte de baixo do console Google Cloud , uma sessão do Cloud Shell é iniciada e exibe um prompt de linha de comando. O Cloud Shell é um ambiente shell com a CLI do Google Cloud já instalada e com valores já definidos para o projeto atual. A inicialização da sessão pode levar alguns segundos.

  2. Para revogar um papel de um usuário, execute o comando remove-iam-policy-binding:

    gcloud RESOURCE_TYPE remove-iam-policy-binding RESOURCE_ID \
        --member=PRINCIPAL --role=ROLE_NAME

    Forneça os valores a seguir:

    • RESOURCE_TYPE: o tipo de recurso ao qual você quer gerenciar o acesso. Use projects, resource-manager folders ou organizations.

    • RESOURCE_ID: o ID do projeto, da pasta ou o ID da organização do Google Cloud . Os IDs de projeto são alfanuméricos, como my-project. Os IDs de pastas e organizações são numéricos, como 123456789012.

    • PRINCIPAL: um identificador do principal ou membro, que geralmente tem o seguinte formato: PRINCIPAL_TYPE:ID. Por exemplo, user:my-user@example.com ou principalSet://iam.googleapis.com/locations/global/workforcePools/example-pool/group/example-group@example.com.

      Para o tipo de principal user, o nome de domínio no identificador precisa ser do Google Workspace ou do Cloud Identity. Para saber como configurar um domínio do Cloud Identity, consulte a Visão geral do Cloud Identity.

    • ROLE_NAME: o nome do papel que você quer revogar. Use um dos seguintes formatos:

      • Papéis predefinidos: roles/SERVICE.IDENTIFIER
      • Papéis personalizados para envolvidos no projeto: projects/PROJECT_ID/roles/IDENTIFIER
      • Papéis personalizados no nível da organização: organizations/ORG_ID/roles/IDENTIFIER

      Para uma lista de papéis predefinidos, consulte Noções básicas sobre papéis.

    Por exemplo, para revogar o papel Criador de projetos da conta de serviço example-service-account@example-project.iam.gserviceaccount.com para o projeto example-project:

    gcloud projects remove-iam-policy-binding example-project \
          --member=serviceAccount:example-service-account@example-project.iam.gserviceaccount.com \
          --role=roles/resourcemanager.projectCreator

Para evitar a revogação de papéis necessários, ative as recomendações de risco de alteração. As recomendações de risco de mudança geram avisos quando você tenta revogar papéis para envolvidos no projeto que o Google Cloud identificou como importantes.

Acesso condicional

Com as condições do IAM, você pode tornar suas políticas mais granulares, concedendo acesso aos principais somente quando determinadas condições especificadas são atendidas. As condições são baseadas em atributos relacionados ao principal, ao recurso e à solicitação. Por exemplo, é possível conceder acesso a um principal somente se ele estiver acessando o recurso de um local ou em um horário específico.

As condições nas políticas de permissão são baseadas nos seguintes tipos de atributos:

  • Atributos de recurso: inclui o serviço, o tipo ou o nome do recurso. Esses atributos geralmente são usados para mudar o escopo de um acesso concedido por uma vinculação de função.
  • Atributos da solicitação: incluem detalhes da solicitação, como o horário ou o nível de acesso do principal que fez a solicitação. Esses atributos permitem criar condições que avaliam detalhes sobre a solicitação, como nível de acesso, data e hora, endereço IP e porta de destino ou o caminho do URL esperado.

Para mais informações sobre os atributos de condição compatíveis com o Cloud FTP, consulte a Referência de atributo para condições do IAM na documentação do IAM.

Não é possível conceder acesso condicional diretamente aos recursos do Cloud FTP. No entanto, é possível conceder acesso condicional a tipos de recursos do Cloud FTP atribuindo papéis a principais em um recurso de contêiner, como um projeto, uma pasta ou uma organização, e adicionando condições a essas vinculações de papéis. As condições adicionadas à política de permissão de um recurso de contêiner são herdadas pelos recursos incluídos nesse recurso de contêiner. Para mais informações sobre condições herdadas, consulte Suporte a condições herdadas na documentação do IAM.

Para saber como adicionar condições às vinculações de papéis, consulte Gerenciar vinculações de papéis condicionais na documentação do IAM.

A seguir