Невозможно взломать AWS S3 Publi c Bucket - PullRequest
0 голосов
/ 06 мая 2020

Я хочу создать корзину S3

Правила:

  1. Все пользователи с Inte rnet могут получить доступ к объектам в корзине, только если у них есть полная путь к объекту, нет доступа к структуре каталогов и перечислению элементов в каталоге

  2. Только один пользователь IAM будет иметь доступ на чтение, запись, список и удаление в сегменте

  3. Остальные все пользователи будут иметь доступ для чтения только в том случае, если они знают полный путь к объекту и не имеют доступа на запись или список.

Как добиться этого с максимальной безопасностью путь ? Таким образом, ни один хакер не может вставлять / редактировать / удалять данные в моей корзине

Как должны выглядеть мои настройки разрешений для корзины (Блокировать публикацию c Настройка доступа)? как выглядит?

Как должна выглядеть моя политика пользователя IAM?

Что, если я создам другого пользователя IAM в той же учетной записи aws с той же политикой? будет ли у этого пользователя IAM доступ для редактирования, вставки, удаления

Что, если я создам другого пользователя IAM в другой учетной записи aws с той же политикой? будет ли у этого пользователя IAM доступ к редактированию, вставке, удалению

1 Ответ

0 голосов
/ 06 мая 2020

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

{
    "Version": "2012-10-17",
    "Id": "Policy1588186664547",
    "Statement": [
        {
            "Sid": "Stmt1588186644754",
            "Effect": "Deny",
            "Principal": "*",
            "Action": [
                "s3:DeleteBucket",
                "s3:DeleteBucketPolicy",
                "s3:DeleteBucketWebsite",
                "s3:DeleteObject",
                "s3:DeleteObjectTagging",
                "s3:DeleteObjectVersion",
                "s3:DeleteObjectVersionTagging"
            ],
            "Resource": [
                "arn:aws:s3:::testpolycy4/*",
                "arn:aws:s3:::testpolycy4"
            ],
            "Condition": {
                "StringNotEquals": {
                    "aws:userid": "102345678910"
                }
            }
        }
    ]
}

Ответ на ваши вопросы:

  • Как должны выглядеть мои настройки разрешений для корзины например (Блокировать настройку общего доступа)?

ЗАБЛОКИРОВАНО все

  • Как должна выглядеть моя политика корзины?

Изменяйте эту политику, пока не получите желаемую политику.

Я думаю, вам не нужна политика IAM, просто с помощью политики корзины вы можете ограничить доступ к объекту и разрешить только пользователей, которых вы хотите.

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

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