Transfira pastas geridas do Cloud Storage

As pastas geridas do Cloud Storage oferecem controlo de acesso detalhado a objetos em contentores do Cloud Storage. As autorizações podem ser definidas ao nível da pasta em contentores que usam o acesso universal ao nível do contentor. Quando transfere objetos entre contentores do Cloud Storage com o Serviço de transferência de armazenamento, estas autorizações de pastas geridas podem ser retidas.

Limitações

As seguintes limitações aplicam-se às transferências de pastas geridas:

  • O contentor de destino tem de usar o acesso uniforme ao nível do contentor.
  • As transferências de pastas geridas não suportam as opções deleteObjectsUniqueInSink nem deleteObjectsFromSourceAfterTransfer.
  • Não podem existir condições de IAM no contentor de destino ou no respetivo projeto que usem o tipo de recurso bucket (storage.googleapis.com/Bucket) ou o tipo de recurso object (storage.googleapis.com/Object). Se algum contentor num projeto tiver uma condição de IAM que use qualquer um destes tipos de recursos, não é possível transferir pastas geridas para nenhum dos contentores nesse projeto, mesmo que a condição seja removida posteriormente.
  • As transferências baseadas em eventos não são suportadas.
  • As transferências de manifestos não são suportadas.

Autorizações de IAM

As seguintes autorizações de Google Cloud gestão de identidade e de acesso (IAM) são necessárias para a conta de serviço gerida pela Google.

Tanto para a origem como para o destino, as autorizações podem ser definidas ao nível do contentor ou definidas na pasta gerida. Para definir autorizações numa pasta gerida de destino, essa pasta já tem de existir.

Não recomendamos a definição de autorizações de pastas geridas ao nível do projeto; consulte as Considerações de segurança para ver informações adicionais.

No contentor de origem ou na pasta gerida:

  • storage.managedFolders.getIamPolicy
  • storage.managedFolders.list
  • storage.managedFolders.get

No contentor de destino ou na pasta gerida:

  • storage.managedFolders.setIamPolicy
  • storage.managedFolders.list
  • storage.managedFolders.create

Estas autorizações são adicionais às autorizações padrão exigidas pelo Serviço de Transferência de Armazenamento:

Para conceder as autorizações necessárias para pastas geridas, crie uma função personalizada apenas com as autorizações necessárias.

Crie uma transferência de pasta gerida

Para criar uma transferência que contenha uma pasta gerida, especifique managedFolderTransferEnabled: true no seu transferSpec. Opcionalmente, pode especificar um valor path para transferir apenas uma pasta gerida específica.

POST https://storagetransfer.googleapis.com/v1/transferJobs
{
  "name": "transferjobs/NAME",
  "projectId": "PROJECT_ID",
  "transferSpec": {
    "gcsDataSource": {
      "bucketName": "SOURCE_BUCKET",
      "path": "SOURCE_PATH",
      "managedFolderTransferEnabled": true
    },
    "gcsDataSink": {
      "bucketName": "DESTINATION_BUCKET",
      "path": "DESTINATION_PATH",
    }
  },
  "status": "ENABLED"
}

Se as autorizações de transferência geridas corretas não estiverem definidas na origem e no destino, a transferência falha.

Consulte o artigo Crie transferências para ver detalhes sobre como criar uma transferência através da API REST ou consulte a referência transferJobs.create.

Considerações de segurança

A concessão de autorizações de pastas geridas a uma conta de serviço gerida pela Google permite que a conta modifique as políticas de IAM nas pastas de destino ou em todas as pastas se a função for concedida ao nível do projeto. Isto representa um risco de segurança: um utilizador com autorizações de edição de tarefas pode explorar esta situação para conceder privilégios a um ator malicioso. Para mitigar este risco, considere isolar as transferências de pastas geridas num Google Cloud projeto dedicado.

Cloud Logging

As ações de pastas geridas são registadas pelo Cloud Logging. Consulte o artigo Cloud Logging para o Serviço de transferência de armazenamento para ver detalhes.

Resolução de problemas

Para obter ajuda na criação e gestão de pastas geridas, consulte a página de resolução de problemas.