Доступ запрещен, невозможно загрузить изображение из aws s3 - PullRequest
0 голосов
/ 07 декабря 2018

У нас есть учетная запись AWS, в которой мы используем корзину S3 для хранения зашифрованных изображений (jpgs).Эта корзина является общедоступной, и, хотя мы можем успешно загрузить все наши изображения в эту корзину, 1 из ~ 200-300 загруженных / загруженных нами изображений, похоже, не удается загрузить со следующей ошибкой:

Ошибка загрузки: Необязательно («images / xxxxxxx / xxxxxxx.jpg") Ошибка: Ошибка Domain = com.amazonaws.AWSServiceErrorDomain Code = 11 "(null)" UserInfo = {HostId = xxxxxxx / xxxxxxx =, Сообщение = Доступ запрещен, Code = AccessDenied, RequestId = xxxxxxx}

Это изображение (которое не удается загрузить) всегда загружается с использованием тех же функций и параметров, что и все остальные, и загружается одинаково. Единственная уникальная вещь она этом изображении это фотография профиля в нашем приложении (android и iOS), и она просто используется в другом месте. Ничто больше не отличается в этом изображении от других, которые успешно загружаются.

Эта проблема имеетнас смущает, что мы можем делать неправильно, если вообще что-то делаем. Я новичок в AWS.

1 Ответ

0 голосов
/ 07 декабря 2018

Возможно, вы загружаете изображения в корзину, доступную только для чтения, и только администраторы могут получить к ней доступ, в этом случае;добавьте это перед выполнением запроса:

s3PutObjectRequest.cannedACL = S3CannedACL.authenticatedRead()

Это предоставит вам.разрешение на загрузку файлов в приватное хранилище

Существует множество причин для ошибки отказа в доступе, например, вы могли забыть об этом, добавить это в свой список и предоставить ему соответствующую информацию:

<dict>
<key>CredentialsProvider</key>
<dict>
    <key>CognitoIdentity</key>
    <dict>
        <key>Default</key>
        <dict>
            <key>PoolId</key>
            <string>"My poll ID string"</string>
            <key>Region</key>
            <string>"PoolID Resign"</string>
        </dict>
    </dict>
</dict>
<key>S3TransferManager</key>
<dict>
    <key>Default</key>
    <dict>
        <key>Region</key>
        <string>"PoolID Resign"</string>
    </dict>
</dict>

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