【发布时间】:2022-01-22 04:55:13
【问题描述】:
我需要您帮助我制定正确的政策。我正在使用 ACloud Guru AWS Sandbox,并且我正在尝试使用 elasticsearch lib 来在 lambda 上运行 python 代码。但是对于 Opensearch,只能使用“配置域级别访问策略”。我通过策略为我的家庭 IP 开放了访问权限:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "es:*",
"Resource": "arn:aws:es:us-east-1:yyyyyyyyyyy:domain/test-es-1/*",
"Condition": {
"IpAddress": {
"aws:SourceIp": "xx.xx.xxx.xx/32"
}
}
}
]
}
它对我来说很好,现在我试图在 Lambda 上运行一些简单的代码并得到一个错误
"errorMessage": "AuthorizationException(403, '{"Message":"用户:匿名无权执行:es:ESHttpPut"}')","errorType": "AuthorizationException",
我决定打开区域 us-east-1 并添加部分:
{
"Effect": "Allow",
"Action": "es:*",
"Principal": {
"AWS": "*"
},
"Resource": "arn:aws:es:us-east-1:yyyyyyyyyyy:domain/test-es-1/*",
"Condition": {
"StringEquals": {
"aws:RequestedRegion": "us-east-1"
}
}
}
但我无法保存策略,出现错误:
UpdateDomainConfig: {"message":"对您的域应用限制性访问策略"}
也许我的方向错误,有人可以帮助我解决问题或推动我朝着正确的方向前进。
提前谢谢你, BR 阿列克谢。
【问题讨论】:
标签: python amazon-web-services aws-lambda amazon-iam opensearch