Назад | Перейти на главную страницу

Доступ запрещен для некоторых файлов при синхронизации сегментов

я использую awscli для синхронизации 2 ведер (одна и та же учетная запись):

aws s3 sync --only-show-errors s3://bucket-1 s3://bucket-2

но для некоторых файлов я получаю ошибки разрешения:

copy failed: s3://bucket-1/dirname/file.flac to s3://bucket-2/dirname/file.flac An error occurred (AccessDenied) when calling the UploadPartCopy operation: Access Denied

(в некоторых случаях неудачная операция CopyObject)

это только кажется .flac файлы. все остальные файлы .mp3s, поэтому единственная разница, которую я могу придумать, - это размер файла.


поскольку я использую для этого пользователя с полными разрешениями s3, я не понимаю, почему это происходит (или как это можно исправить).

Может быть, объект принадлежит другой учетной записи?

Это может произойти, когда корзина в учетной записи AWS AAA доступна для записи учетной записи AWS BBB, например через BucketPolicy, но автор (BBB) ​​не указал --acl bucket-owner-full-control разрешение при загрузке.

Проверьте ACL объекта, используя:

aws s3api get-object-acl --bucket bucket-1 --key dirname/file.flac

Аналогично для пункта назначения - если существующий объект принадлежит другой учетной записи, вы не сможете его перезаписать. Поэтому UploadPartCopy потерпит неудачу.

Надеюсь, это поможет.