Сбой запроса AWS S3 с учетными данными, полученными от клиента TVM

В моем приложении для iOS я недавно изменил AWS iOS Библиотека до 1.7.0 (с 1.6.0), которая поддерживает возобновление / приостановку многоэтапной загрузки. В результате все загрузки файлов превышают 5MB не удается, который использует temporary AWS credentials obtained from TVM, (Оригинальные учетные данные работают без проблем). Ошибка HTTP: 403, S3 Error Code: AccessDenied,

Запрос, который терпит неудачу, является следующим: GET https://s3.amazonaws.com/<my.bucket.name>/?uploads Я не уверен, для чего предназначен этот запрос или почему существует проблема с разрешением, потому что мой TVM get_federation_token имеет GET а также PUT доступ.

{
"Version": "2012-10-17",
  "Statement": [
    {
      "Action": ["s3:PutObject","s3:GetObject"],
      "Resource": ["arn:aws:s3:::my.bucket.name/*"],
      "Effect": "Allow"
    }
  ]
}

Загрузка происходит в местоположение /<my.bucket.name>/, Есть идеи, что происходит?

Спасибо

1 ответ

Решение

ОБНОВЛЕНИЕ Первоначальная политика, которую я разместил, была неправильной, s3:ListBucketMultipartUploads действует только на ведро.

S3TransferManager использует многоэтапную загрузку для файлов размером более 5 МБ, поэтому вам нужно будет включить операции, необходимые для многоэтапной загрузки, в свою политику TVM.

{
"Version": "2012-10-17",
  "Statement": [
    {
      "Action":"s3:ListBucketMultipartUploads",
      "Resource":"arn:aws:s3:::my.bucket.name",
      "Effect": "Allow"
    },
    {
      "Action": ["s3:PutObject","s3:GetObject","s3:ListMultipartUploadParts","s3:AbortMultipartUpload"],
      "Resource": ["arn:aws:s3:::my.bucket.name/*"],
      "Effect": "Allow"
    }
  ]
}
Другие вопросы по тегам