AWS Elasti c Проблема политики поиска в Angular - PullRequest
0 голосов
/ 31 марта 2020

Я реализовал AWS -Elasti c Поиск моего angular приложения с правами доступа publi c, так как любой пользователь может запрашивать данные с помощью моего веб-сайта. Поэтому он работает, как ожидалось. Я использовалasticsearch-browser клиент для реализации поиска, как показано ниже

import { Client } from 'elasticsearch-browser';

.....

this.client = new Client({
      host: 'https://search-XXXXXXXX.us-east-1.es.amazonaws.com/',
      apiVersion: '7.x'
    });


....

const results = await this.client.search({
              index: 'XXX',
              type: 'XXXXXXXX',
              body: {
                "query" : {
                  "match": {
                    "projectTitle": searchtearm
                  }
                },
              },

            },

            );

Поскольку это общедоступно c я думаю, что очень небезопасно предоставлять все права доступа es: ESHttpPost, es: ESHttpPut для любых неизвестных пользователей. поэтому я хотел предоставить только пользователям возможность поиска. Создание и изменение индекса с использованием только аутентифицированных пользователей

Это моя текущая политика доступа

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": "es:*",
      "Resource": "arn:aws:es:us-east-1:XXXXXXXXX:domain/CXDXXXX-dev/*"
    }
  ]
}

Как я могу изменить открытый доступ для всех и изменения только для аутентифицированных пользователей

я уже пробовал это ниже

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": "es:ESHttpGet",
      "Resource": "arn:aws:es:us-east-1:XXXXXdomain/XXXXXXXXev/*"
    }
  ]
}

, но это не сработало, спрашивая es: ESHttpPost доступ для поиска. Может кто-нибудь помочь с этим, пожалуйста ..!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...