Para criar, gerenciar ou monitorar transferências com o Serviço de transferência do Cloud Storage, é necessário ter permissões e papéis do IAM para sua conta de usuário, ferramenta de automação ou conta de serviço.
Essas permissões se aplicam a transferências com e sem agente. Para informações gerais sobre como conceder papéis do IAM, consulte Como conceder, alterar e revogar o acesso a recursos.
Permissões necessárias do Serviço de transferência do Cloud Storage
Para interagir com o Serviço de transferência do Cloud Storage, é preciso conceder um dos seguintes papéis predefinidos ou permissões personalizadas equivalentes à sua conta de usuário, grupo ou conta de serviço no projeto na nuvem do Google Cloud que está criando a transferência:
| Papel | Principais recursos |
|---|---|
|
Administrador do Storage Transfer ( roles/storagetransfer.admin)
|
Controle total sobre os recursos do Serviço de transferência do Cloud Storage:
|
|
Usuário de transferência do Storage ( roles/storagetransfer.user)
|
Criar, atualizar e executar jobs de transferência e pools de agentes sem permissões de
exclusão:
|
|
Leitor de transferência do Storage ( roles/storagetransfer.viewer)
|
Acesso somente leitura para inspecionar jobs de transferência, operações e pools de agentes. Recomendado para monitoramento e auditoria. |
Para uma lista detalhada de permissões individuais em cada papel, consulte a Referência de papéis e permissões. Se você configurar um job de transferência para delegar permissões a uma conta serviço gerenciado pelo usuário, sua conta de usuário também precisará ter o papel de Usuário da conta de serviço (roles/iam.serviceAccountUser) nessa conta de serviço. Consulte Delegar permissões de agente de serviço a uma serviço gerenciado pelo usuário.
Conceder um papel do Serviço de transferência do Cloud Storage no projeto
Console
No console do Google Cloud , acesse a página IAM.
Verifique se o projeto de transferência está selecionado e clique em Conceder acesso.
No campo Novos principais, insira o e-mail da sua conta de usuário ou conta de serviço.
Na lista suspensa Selecionar um papel, procure e selecione
Storage Transfer Admin,Storage Transfer UserouStorage Transfer Viewer.Opcional: para permitir que o console do Google Cloud verifique se há permissões de agente de serviço ausentes e solicite que você as conceda automaticamente durante a criação da transferência:
- Clique em + Adicionar outro papel.
- Pesquise e selecione Leitor de papel (
roles/iam.roleViewer), que concederesourcemanager.projects.getIamPolicy.
Clique em Salvar.
gcloud
Conceda o papel do Serviço de transferência do Cloud Storage:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="PRINCIPAL" \ --role="roles/storagetransfer.ROLE"
Substitua:
- PROJECT_ID: o projeto em que você vai executar as transferências.
- PRINCIPAL: sua conta formatada como
user:EMAILpara uma conta de usuário ouserviceAccount:SA_EMAILpara uma conta de serviço. - ROLE: um de
admin,userouviewer.
Opcional: para permitir que o console do Google Cloud verifique se há permissões de agente de serviço ausentes e solicite que você as conceda automaticamente durante a criação da transferência, conceda o papel de Leitor de papéis:
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="PRINCIPAL" \ --role="roles/iam.roleViewer"
Permissões necessárias do Cloud Storage
Para configurar uma transferência que use buckets do Cloud Storage como origem, coletor ou local de preparo intermediário, sua conta precisa ter permissão para visualizar e modificar a política do IAM do bucket para que você possa conceder os papéis necessários ao agente de serviço do Serviço de transferência do Cloud Storage ou à conta do agente de transferência.
Sua conta precisa ter:
storage.buckets.getIamPolicystorage.buckets.setIamPolicy
Qualquer um dos seguintes papéis predefinidos concede essas permissões:
- Administrador do Storage (
roles/storage.admin) - Proprietário de bucket legado do Storage (
roles/storage.legacyBucketOwner)
Conceder um papel do Cloud Storage em um bucket
Console
- No console do Google Cloud , acesse a página Buckets do Cloud Storage.
- Clique no menu flutuante do bucket () e selecione acesso de edição.
- Clique em + Adicionar principal.
- No campo Novos principais, insira o e-mail da sua conta de usuário ou de serviço.
- Na lista suspensa Selecionar um papel, procure e selecione
Storage Admin. - Clique em Salvar.
gcloud
Execute gcloud storage buckets add-iam-policy-binding:
gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME \
--member="PRINCIPAL" \
--role="roles/storage.admin"Substitua:
- BUCKET_NAME: o nome do bucket de origem, de coletor ou intermediário.
- PRINCIPAL: sua conta formatada como
user:EMAILpara uma conta de usuário ouserviceAccount:SA_EMAILpara uma conta de serviço.
A seguir
As próximas etapas dependem se a transferência exige agentes:
- Se a transferência for sem agente, como transferências entre buckets do Cloud Storage, do Amazon S3 para o Cloud Storage ou do Armazenamento de Blobs do Azure para o Cloud Storage, a configuração de acesso do usuário estará concluída. Prossiga para Configurar o acesso à origem e ao destino ou Criar uma transferência.
- Se a transferência for baseada em agentes, como as que envolvem sistemas de arquivos, HDFS ou armazenamento compatível com S3, acesse Permissões para envolvidos no projeto baseadas em agentes.