Это сложно реализовать, однако следующие должны соответствовать требованиям.
Programmati c Только доступ
Вам необходимо определить какие именно действия следует запретить, вы не хотели бы полностью блокировать доступ, иначе вы можете потерять возможность что-либо делать.
Если вы находитесь в AWS, вы должны использовать роли IAM и VP C конечная точка для подключения к службе S3. Оба из них поддерживают возможность управления доступом в рамках вашей политики корзины сегментов S3.
Вы могли бы использовать это, чтобы запретить действия List *, где источником является , а не конечная точка VP C . Вы также можете запретить, если это не конкретное c подмножество ролей .
Это работает для всех программных c вариантов использования и для людей, которые входят в систему как пользователь IAM с консоли. , однако этот не запрещает доступ пользователю root.
Также имейте в виду, что для любого пользователя IAM / роли IAM у них нет доступа, если вы явно не дадите им это с помощью политики IAM.
Запрет доступа к Root пользователю
В настоящее время существует только один способ запретить доступ пользователю root AWS учетная запись (хотя вы должны поделиться этими учетными данными с кем-либо, даже в вашей компании), поскольку она использует политику управления службами.
Для этого учетная запись должна быть частью организации AWS (как организационная единица). Если / однажды вы создадите SCP, который отказывает в доступе к принципалу root
для определенных c действий, которые вы хотите .
Пример этой политики для вас: быть
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "RestrictS3ForRoot",
"Effect": "Deny",
"Action": [
"s3:List*"
],
"Resource": [
"*"
],
"Condition": {
"StringLike": {
"aws:PrincipalArn": [
"arn:aws:iam::*:root"
]
}
}
}
]
}