Невозможно скопировать из запрашивающей корзины в мою собственную корзину, используя модуль s3 aws cli, в то время как я могу скопировать на свой компьютер в порядке - PullRequest
0 голосов
/ 18 июня 2020
aws s3 cp s3://arxiv/pdf/arXiv_pdf_0001_001.tar s3://bucket --request-payer requester

завершается неудачно с

фатальная ошибка: Произошла ошибка (403) при вызове операции HeadObject: Запрещено

Но если я сделаю

aws s3 cp s3://arxiv/pdf/arXiv_pdf_0001_001.tar . --request-payer requester

работает нормально

Кроме того, это тоже работает, но копирует только один файл за раз:

aws s3api copy-object --copy-source arxiv/pdf/arXiv_pdf_0001_001.tar --request-payer requester --key arXiv_pdf_0001_001.tar --bucket arxivmanifest

Что происходит?

1 Ответ

0 голосов
/ 18 июня 2020

Когда я запустил первую команду, она выдала ошибку:

Произошла ошибка (AccessDenied) при вызове операции GetObjectTagging: Доступ запрещен

Это потому, что команда aws s3 cp делает больше , чем просто копирует файл, также пытаясь скопировать теги (кажется). Также может показаться, что корзине не предоставлены разрешения на вызов GetObjectTagging API.

Напротив, команда aws s3api copy-object выдает единственный вызов API. Фактически, все команды s3api отображаются на конкретный вызов c API. Команды aws s3 - это команды «более высокого уровня», которые выполняют больше функций, например, включают --recursive копию).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...