我试图允许任何人向我的AWS Elasticsearch域发送HTTP请求。并将所有其他请求(例如CREATE,DELETE)限制为仅限IAM用户。我尝试使用以下策略,并能够通过使用我的用户凭据签名请求(使用aws-es-proxy工具)成功创建,删除索引。但是,从公共计算机向域发出的HTTP请求失败。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "es:ESHttpGet",
"Resource": "arn:aws:es:ap-south-1:356298639800:domain/*"
},
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::356298639800:root"
},
"Action": "es:*",
"Resource": "arn:aws:es:ap-south-1:356298639800:domain/myusername/*"
}
]
}
对ES域的公共HTTP请求失败,出现错误" Anonymous未获得授权"。 [上面提到的帐户ID是虚拟数字]