O Cloud Storage usa uma
conta de serviço gerida pela Google,
conhecida como um agente de serviço,
para mover dados para um contentor do Cloud Storage. Este agente de serviço é criado na primeira vez que chama o googleServiceAccounts.get.
O contentor de destino não tem de pertencer ao mesmo projeto que o agente do serviço. Os passos são os mesmos, independentemente do projeto em que o contentor se encontra.
Autorizações do utilizador
Para conceder as autorizações necessárias ao agente de serviço, tem de ter as autorizações relevantes no contentor de destino:
storage.buckets.getIamPolicystorage.buckets.setIamPolicy
A função Proprietário de contentores antigos do Storage (roles/storage.legacyBucketOwner) ou a função Administrador do Storage (roles/storage.admin) concedem as autorizações necessárias.
Concessão automática de autorizações na Google Cloud consola
Se estiver a usar a Google Cloud consola para criar a transferência e tiver as autorizações indicadas em Autorizações do utilizador, o agente de serviço recebe automaticamente as autorizações necessárias no seu contentor de destino.
Pode ignorar os passos nesta página. Se necessário, configure o acesso à sua origem, e crie uma transferência.
Autorizações necessárias
O agente do serviço tem de ter as seguintes autorizações para o contentor de destino:
| Autorização | Descrição |
|---|---|
storage.buckets.get |
Permite que a conta de serviço obtenha a localização do contentor. |
storage.objects.get |
Permite que a conta de serviço veja objetos e os respetivos metadados, exceto ACLs. Obrigatório se a transferência estiver configurada para [substituir objetos](/storage-transfer/docs/reference/rest/v1/TransferOptions#OverwriteWhen) no destino quando forem diferentes ou nunca. Não é necessário se a sua definição de transferência for para substituir sempre. |
storage.objects.create |
Permite que a conta de serviço adicione objetos ao contentor. |
storage.objects.delete |
Permite que a conta de serviço elimine objetos no contentor.
Obrigatório se definir Tenha em atenção que, se o contentor de destino tiver a
aplicação de versões de objetos
ativada, nem |
storage.objects.list |
Permite que a conta de serviço liste objetos no contentor. Obrigatório se
definir overwriteObjectsAlreadyExistingInSink como
false ou deleteObjectsUniqueInSink como
true. |
A seguinte função predefinida concede as autorizações necessárias:
- Storage Legacy Bucket Writer (
roles/storage.legacyBucketWriter)
Além disso, para transferências configuradas para