Что делает Public Access on Buckets по сравнению с Public Access для объектов? - PullRequest
0 голосов
/ 14 ноября 2018

Я новичок в AWS S3 и пытаюсь понять, как он работает.

Похоже, что для того, чтобы сделать отдельные файлы общедоступными в Интернете, вы должны установить для параметра «Общий доступ» значение «Все» для конкретного объекта.

enter image description here

Однако само Bucket имеет те же разрешения;

enter image description here

Даже если я изменю «Общий доступ» на «Все» для Bucket, похоже, что все еще используются разрешения отдельного объекта (скриншот 1).

Если это так, что именно делает "Общий доступ" в Bucket?

Ответы [ 2 ]

0 голосов
/ 14 ноября 2018

Лучший способ предоставить публичный доступ к корзине Amazon S3 или ее части - это использовать Политика корзины .Это проще, чем предоставление публичного доступа каждому отдельному объекту.

Вот политика, которая предоставляет публичный доступ ко всей корзине:

{
  "Version":"2012-10-17",
  "Statement":[
    {
      "Sid":"AddPerm",
      "Effect":"Allow",
      "Principal": "*",
      "Action":["s3:GetObject"],
      "Resource":["arn:aws:s3:::examplebucket/*"]
    }
  ]
}
0 голосов
/ 14 ноября 2018

Разрешения доступа S3 - запутанное дело, главным образом потому, что нужно понять три «типа».

Полное обсуждение моделей разрешений (разрешений доступа к корзине, списков управления и политик) можно найти в документации (см .: Настройка разрешений доступа к корзинам и объектам - Amazon Simple Storage Service ). Но, как вы заметили:

Права на ведро и объект не зависят друг от друга. Объект не наследует разрешения от своего сегмента. Например, если вы создадите сегмент и предоставите пользователю доступ на запись, вы не сможете получить доступ к объектам этого пользователя, если пользователь явно не предоставит вам доступ.

«Публичный доступ» означает «пользователь из-за пределов вашей учетной записи, у которого нет доступа к IAM или S3 ACL».

Как и для всех разрешений доступа к корзине, это можно установить как для действий корзины (разрешить кому-либо перечислять объекты / разрешить кому-либо создавать объекты в вашей корзине; так же, как и списки управления доступом), так и для отдельных объектов ( чтение / запись / и т. д.)

n.b. если вы спрашиваете об этом, потому что вы пытаетесь сделать вашу корзину S3 общедоступной, руководство по этому вопросу можно найти в этом ответе . Просто постарайтесь не оказаться следующей компанией open-s3-bucket в новостях, пожалуйста!

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