【发布时间】:2018-12-01 02:30:51
【问题描述】:
我的任务是对弹性搜索 api 进行 POST api 调用,
我以前没有任何对 AWS 服务进行 api 调用的经验。
所以,我尝试了这个 -
axios.post('https://search-test-search-fqa4l6ubylznt7is4d5yxlmbxy.us-west-2.es.amazonaws.com/klove-ddb/recipe/_search')
.then(res => res.data)
.then(res => console.log(res));
但我收到 {"Message":"User: anonymous is not authorized to perform: es:ESHttpPost"}
我还检查了一些 IAM 角色并将 AWSESFullAccess 策略添加到我的个人资料中。
我仍然无法解决任何问题。
请帮帮我。
【问题讨论】:
-
您需要将 lambda 函数的执行角色 ARN 添加到 ElasticSearch 集群访问策略以允许
es:eshttppost -
有一个执行角色:es:* 我认为这涵盖了所有内容?还是我应该专门加一个es:eshttppost
-
es:* 应该涵盖所有内容
-
但是,我仍然无法访问它。
-
您能否将您的 ES 集群策略添加到问题中?
标签: node.js amazon-web-services elasticsearch aws-lambda aws-sdk