我目前有一个AWS API Gateway,客户端正在将其用作客户端API应用程序的依赖项资源。客户端的API应用程序当前托管在Azure中,并且已实现负载平衡。
鉴于AWS API Gateway的资源策略根据源IP地址或范围应用了Allow / Deny API通信,我可以使用客户端的托管DNS而不是实际IP地址作为该策略上的IP项目条目(请参阅下面的策略示例) )?
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "execute-api:Invoke",
"Resource": [
"arn:aws:execute-api:region:account-id:api-id/*"
]
},
{
"Effect": "Allow",
"Principal": "*",
"Action": "execute-api:Invoke",
"Resource": [
"arn:aws:execute-api:region:account-id:api-id/*"
],
"Condition" : {
"IpAddress": {
"aws:SourceIp": ["192.0.2.0/24", "clientsite.azurewebsites.net" ]
}
}
}
]
}
如果没有,允许云托管应用程序访问AWS API Gateway资源的更好方法是什么?
非常感谢!
答案 0 :(得分:1)
AWS文档规定
aws:SourceIp键。该值必须采用标准的CIDR格式(例如203.0.113.0/24或2001:DB8:1234:5678 :: // 64)
所以我怀疑它不起作用。
在API网关级别保护请求的其他方法