Кросс-аккаунт S3 доступ для пакета publi c - PullRequest
2 голосов
/ 09 мая 2020

Политика корзины

{
    "Version": "2012-10-17",
    "Id": "Policy1589032691178",
    "Statement": [
        {
            "Sid": "Stmt1589032265458",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::<BUCKET>/*"
        }
    ]
}

Это позволит читать объекты всем пользователям.

Политика IAM, прикрепленная к пользователю AB C в AWS Учетная запись 1

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "s3:ListBucket",
            "Resource": "arn:aws:s3:::<BUCKET>"
        },
        {
            "Sid": "VisualEditor1",
            "Effect": "Allow",
            "Action": [
                "s3:PutObject",
                "s3:GetObject",
                "s3:DeleteObject"
            ],
            "Resource": "arn:aws:s3:::<BUCKET>/*"
        }
    ]
}

При этой настройке publi c чтение объектов доступно для всех

И политика IAM привязана к пользователю AB C, поэтому AB C имеет доступ к списку, размещению, получению, удалению

Теперь вопрос в том, если кто-то в AWS Учетной записи 2 создаст пользователя XYZ и прикрепит ту же политику IAM, как указано выше. Сможет ли пользователь XYZ в AWS Учетной записи 2 перечислять, получать, помещать, удалять?

1 Ответ

2 голосов
/ 09 мая 2020

То, что вы опубликовали, выглядит как resource-based & IAM policies доступ к кросс-аккаунту.

Чтобы позволить пользователю XYZ в аккаунте 2 выполнять указанные действия в сегменте в аккаунте 1, помимо политики, указанной для пользователя XYZ, вы необходимо дополнительно указать разрешенные действия для пользователя XYZ в политике корзины.

Альтернативный способ - разрешить предположение о роли IAM между учетными записями, когда пользователь в учетной записи 2 может взять на себя роль в учетной записи 1, предоставляя желаемый доступ к сегменту S3 в счет 1.

Дополнительную информацию с примерами можно найти по адресу https://aws.amazon.com/premiumsupport/knowledge-center/cross-account-access-s3/

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