2015-02-15 3 views
0

Я работаю на приложение, которое загружает файлы в s3, следуя этому примеруAWS, IOS, Cognito, спутанность

https://github.com/awslabs/aws-sdk-ios-samples/tree/master/S3BackgroundTransfer-Sample/Objective-C

В читать мне это говорит

In the Amazon Cognito console, use Amazon Cognito to create a new identity 
pool. Obtain the PoolID constant. Make sure the role has full permissions for 
the bucket you created. 

Это сбивает с толку для меня, Когда я иду на роли IAM, и чтобы управлять пользователями, я вижу, что могу добавить политику AmazonS3FullAccess, но я не могу указать фактическое имя ведра !! При нажатии на шоу политики я получаю это всплывающее

{ 
"Version": "2012-10-17", 
"Statement": [ 
    { 
    "Effect": "Allow", 
    "Action": "s3:*", 
    "Resource": "*" 
    } 
] 
} 

и его только для чтения. У меня есть ведро s3 и хочу, чтобы пользователь IAM мог получить к нему доступ, но не может понять, как это сделать на веб-сайте AWS.

ответ

0

ОК после копания, я нашел способ создать пользовательскую политику и обновить ведро s3 в ней и прикрепить ее к роли. в IAM под панелью инструментов перейти к политикам -> создать политику -> скопировать управляемую политику AWS (я рекомендую) и создать там ее. Надеюсь, что это помогает другим, по-прежнему считают, что сайт должен быть лучше документирован.

0

Предварительно настроенная политика AmazonS3FullAccess предоставляет полный доступ к Amazon S3, поэтому нет ограничений на имя ведра.

Вот пример политики, которая ограничивает конкретное ведро и «каталог» в S3 только в том случае, если имя каталога совпадает с идентификатором пользователя Cognito пользователя.

Вы ограничиваете доступ к определенному ведро/директории/файлу с помощью раздела политики Resource.

{ 
     "Effect": "Allow", 
     "Action": [ 
      "s3:PutObject", 
      "s3:GetObject", 
      "s3:DeleteObject" 
     ], 
     "Resource": [ 
      "arn:aws:s3:::iosdemo-upload/pictures/${cognito-identity.amazonaws.com:sub}/*" 
     ] 
     } 

Чтобы узнать больше о политике Amazon S3, я хотел бы предложить вам пройти через эти шаги http://docs.aws.amazon.com/AmazonS3/latest/dev/walkthrough1.html

Смежные вопросы