Политика Amazon S3, разрешающая доступ к одной и той же корзине - PullRequest
0 голосов
/ 25 апреля 2019

У меня проблема с написанием политики AWS, чтобы предоставить пользователю доступ на чтение / запись к одной корзине. Основываясь на примерах, которые я нашел в Интернете, это выглядит довольно просто:

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

Однако редактор политики возвращает ошибку Предоставленный документ политики не соответствует требованиям указанного типа политики.

Комментарий в редакторе политики также гласит:

Чтобы разрешить действия, включите операторы в формате «Эффект»: «Разрешить». Все остальные действия неявно запрещены. Чтобы явно запретить действия, включите операторы в формате «Эффект»: «Запретить». Только операторы Deny могут включать ресурсы и условия.

Этот комментарий противоречит каждому найденному мною примеру. Я не могу себе представить, как эффективно написать политику, в которой эффект «разрешить» используется глобально, без указания ресурса, а затем «запретить» является гранулированным и указывает на ресурсы, на которые он влияет.

...