Ограничить доступ к корзине s3 только для определенных экземпляров ec2
Я сгенерировал приведенную ниже политику, но она по-прежнему позволяет всем другим экземплярам ec2 получить доступ к моему ведру. какие изменения я должен внести в эту политику? я хочу, чтобы мое ведро было доступно только для экземпляра, о котором я говорил, а не для любого другого экземпляра
{
"Id": "Policy1507871740101",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1507871738318",
"Action": "s3:*",
"Effect": "Allow",
"Resource": "arn:aws:s3:::bucket/*,
"Principal": {
"AWS":"arn:aws:ec2:region:userid:instance/instanceid"
}
}
]
}
2 ответа
Вы не можете указать идентификатор экземпляра, но вы можете указать IP-адрес в политике S3.
Однако у вас есть другая проблема. Если ваши экземпляры EC2 уже могут получить доступ к S3, либо вы сделали корзину общедоступной, либо вы назначили роль для экземпляра, предоставляющего разрешение. Сначала просмотрите это. Сначала найдите ваши дыры в безопасности.
Ниже приведен пример политики для S3, использующей IP-адреса для предоставления или запрета доступа:
{
"Version": "2012-10-17",
"Id": "S3PolicyId1",
"Statement": [
{
"Sid": "IPAllow",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:*",
"Resource": "arn:aws:s3:::examplebucket/*",
"Condition": {
"IpAddress": {"aws:SourceIp": "54.240.143.0/24"},
"NotIpAddress": {"aws:SourceIp": "54.240.143.188/32"}
}
}
]
}
Просто чтобы прояснить ситуацию: как уже было сказано, вы должны:
- удалить политику ведра
- вместо этого создайте роль EC2
- прикрепите эту роль к экземплярам, к которым вы хотите иметь доступ
- изменить политику ролей
Образец ниже:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:DeleteObject",
"s3:GetObject",
"s3:PutObject"
],
"Resource": "arn:aws:s3:::bucket_name/*"
},
{
"Effect": "Allow",
"Action": "s3:ListBucket",
"Resource": "arn:aws:s3:::bucket_name"
},
{
"Effect": "Allow",
"Action": "s3:ListAllMyBuckets",
"Resource": "arn:aws:s3:::"
}
]
}
Не стесняйтесь редактировать первый оператор, чтобы добавить / удалить необходимые действия.