Как открыть общий доступ к папке с помощью политики S3 Bucket в контексте федеративных идентификаторов? - PullRequest
0 голосов
/ 05 марта 2019

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

Однако я не понимаю, как сделать то же самое, если вы используете федеративные удостоверения (SAML).

Предположим, у вас есть учетные записи 111111111111 и 222222222222, ведущие запись в корзину на счете 999999999999. Для простоты, давайте будем ссылаться на них как A1, A2 и A9.

Кроме того, федеративные пользователи могут получить доступ к учетным записям А1 и А2, которым разрешено взять на себя роль ADMIN, а CloudTrails регистрируется в корзине ВЕДРО в A9.

Итак, у меня пока есть следующая политика корзины. Для простоты у блоков операторов есть Sids (идентификаторы операторов) 1,2,3 и 4.

Проблема:

  • ADMIN из A1 может исследовать структуру папок в папке корзины * AWSLogs / 111111111111 / **, но попытка загрузить объекты приводит к ошибке «Отказано в доступе».

Как получается? Чего не хватает?

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid":"1",
            "Effect": "Allow",
            "Principal": {
                "Service": "cloudtrail.amazonaws.com"
            },
            "Action": "s3:GetBucketAcl",
            "Resource": "arn:aws:s3:::BUCKET"
        },
        {
            "Sid":"2",
            "Effect": "Allow",
            "Principal": {
                "Service": "cloudtrail.amazonaws.com"
            },
            "Action": "s3:PutObject",
            "Resource": [
                "arn:aws:s3:::BUCKET/AWSLogs/111111111111/*",
                "arn:aws:s3:::BUCKET/AWSLogs/222222222222/*"
            ],
            "Condition": {
                "StringEquals": {
                    "s3:x-amz-acl": "bucket-owner-full-control"
                }
            }
        },
        {
            "Sid":"3",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111111111111:role/ADMIN"
            },
            "Action": [
                "s3:List*"
            ],
            "Resource": "arn:aws:s3:::BUCKET",
            "Condition": {
                "StringLike": {
                    "s3:prefix": "AWSLogs/111111111111/*"
                }
            }
        },
        {
            "Sid":"4",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111111111111:role/ADMIN"

            },
            "Action": [
                "s3:List*",
                "s3:Get*"
            ],
            "Resource": "arn:aws:s3:::BUCKET/AWSLogs/111111111111/*"
        }

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