我想将 API 密钥限制为只能在我的 Elastic Beanstalk 环境中工作。我尝试使用 VPC 条件,但这不起作用,文档说它并不总是可用(所以我猜不在 EB 中)。
在某种程度上,通过将公共 IP 用于我的测试 EC2,我得到了它的工作,但是,随着 EB 的扩展,这并不好前进。
这是我目前适用于单一 IP 限制的关键政策:
{
"Version": "2012-10-17",
"Id": "key-consolepolicy-3",
"Statement": [
{
"Sid": "Allow access for Key Administrators",
<snip>
},
{
"Sid": "Allow use of the key by EB user",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::<account_id>:user/<my eb user>"
},
"Action": [
"kms:Encrypt",
"kms:Decrypt"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"aws:SourceIp": "<my test ec2 public ip>"
}
}
}
]
}
我怎样才能做到这一点?是否真的可以通过 VPC 进行限制,或者是否有其他方式只允许从我的 EB 环境中访问?