0

我在研究ELK協議棧和AWS網關。使用AWS通過網關訪問AWS ElasticSearch的Kibana IAM

我創建AWS ElasticSearch並將此訪問策略: { 「版本」: 「2012年10月17日」, 「聲明」:[{ 「效果」: 「允許」, 「校長」 :{ 「AWS」:「arn:aws:iam :: [AWS賬戶ID]:根」 }, 「Action」:「es:*」, 「Resource」:「arn:aws:es:sa -east-1:AWS賬戶ID]:域/ camarar-麋鹿/ *」 } ] }

PS:我嘗試過這個策略中使用: { 「版本」: 「2012年10月17日」, 「聲明」:[{ 「效果」: 「允許」, 「校長」:{ 「AWS」:「阿爾恩:AWS:IAM: [AWS賬戶ID]:用戶/ [用戶]「 }, 」Action「:」es:*「, 」Resource「:」arn:aws:es:sa-east- :域/ camarar-麋鹿/ *」 } ] }

後,我使用http代理和GET方法來路由所有請求Kibana URL創建的AWS API網關。在此網關中,我使用一個AWS IAM訪問Kibana。

最後,我使用此策略「AmazonESFullAccess」創建了AWS IAM的用戶。

所有我收到了同樣的錯誤的時間:{「消息」:「用戶:匿名無權執行ES:ESHttpGet資源:camarar-麋鹿」}

任何人都可以請幫我解決這個問題?

+0

你有沒有想過? –

+0

您也可以使用代理服務,如https://www,iamproxy.com披露:我是這個的作者。 –

回答

0

"Action": "es:",

我相信這是你的問題。您必須指定類似es的操作:ESHttpGet或允許所有操作使用es:*

1

我已經在使用此操作的策略(「Action」:「es:*」),因爲我寫錯了在我的問題。

我在Elasticsearch實際的政策:

{ 「版本」: 「2012年10月17日」, 「聲明」:[{ 「效果」: 「允許」, 「校長」:{ 「AWS」: 「arn:aws:iam :: [AWS賬戶ID]:root」},「Action」:「es:*」,「Resource」:「arn:aws:es:sa-east-1: :domain/camarar-elk/*「}]}