Berechtigungen für den Zugriff auf ElasticSearch von Lambda?

Ich versuche, Elasticsearch für Datenhaltung für eine Lambda-Funktion verbunden Alexa Fähigkeiten-Kit. Die Lambda funktioniert gut ohne Elasticsearch, aber ES bietet die dringend benötigten fuzzy-matching.

Nur so, ich habe Zugriff auf die von Lambda ist von Elasticsearch ermöglicht global access, aber das ist eine wirklich schlechte Idee. Ich habe auch in der Lage gewesen, um Zugriff von meinem computer über die open-access-policy oder die IP-Adresse der Politik. Gibt es eine Möglichkeit zu tun, nur-lese-Zugriff über Lambda und Lesen-schreiben-über-IP?

Auf IAM gewährt ich meine Lambda Rolle AmazonESReadOnlyAccess. Auf der ES-Seite, die ich versuchte dieses aber es funktioniert nur für IP-Adresse:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": [
          "arn:aws:iam::NUMBER:root",
          "arn:aws:iam::NUMBER:role/lambda_basic_execution"
        ]
      },
      "Action": "es:*",
      "Resource": "arn:aws:es:us-east-1:NUMBER:domain/NAME/*"
    },
    {
      "Sid": "",
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": "es:*",
      "Resource": "arn:aws:es:us-east-1:NUMBER:domain/NAME/*",
      "Condition": {
        "IpAddress": {
          "aws:SourceIp": "MY IP"
        }
      }
    }
  ]
}

Diese forum post fragt die gleiche Frage aber unbeantwortet.

InformationsquelleAutor Keith | 2016-06-07
Schreibe einen Kommentar