Вызов API Elasticsearch / X-Pack из приложения узла js - PullRequest
0 голосов
/ 28 октября 2018

Я разработал службу js узла, которая будет вызывать API-интерфейсы Elasticsearch для выполнения различных операций, таких как создание ролей, создание пользователей, установление сопоставления ролей пользователей и т. Д. Экземпляр Elasticsearch был настроен так, чтобы HTTPS мог обращаться к API-интерфейсам Elasticsearch.

Когда мое приложение вызывает API, появляется показанное ниже сообщение об ошибке

{Ошибка: невозможно проверить первый сертификат в TLSSocket.(_tls_wrap.js: 1103: 38) в emitNone (events.js: 106: 13) в TLSSocket.emit (events.js: 208: 7) в TLSSocket._finishInit (_tls_wrap.js: 637: 8) в TLSWrap.ssl.onhandshakedone (_tls_wrap.js: 467: 38) code: 'UNABLE_TO_VERIFY_LEAF_SIGNATURE'} {Ошибка: зависание сокета при createHangUpError (_http_client.js: 331: 15)

Вот параметры запроса дляВызов API из моего приложения узла.Пожалуйста, дайте мне знать, если ключ, сертификат и CA являются единственными необходимыми опциями, которые нужно добавить для вызова конечной точки HTTP?

var optionspost = {
    host: utilities.elastic.host,
    path: utilities.elasticAPIS.createUserRole+roleName,
    port: utilities.elastic.port,
    method: 'PUT',
    key: <path_to_elasticsearch_client_key>, encoding),
    cert: <path_to_elasticsearch_client_cert>, encoding),
    ca: HPECAs.All_HPE_CAs,
    headers: postheaders
};

Настройки SSL вasticsearch.yml следующие:

Пожалуйста, подтвердите, если-

Значением 'ключа' в параметрах запроса моего приложения должен быть путь к тому же ключу сервера, который настроен в xpack.ssl.key?Значение 'cert' в параметрах запроса моего приложения должно быть путем к тому же сертификату сервера, который настроен в xpack.ssl.certificate?Значение 'ca' в параметрах запроса моего приложения должно быть путем для CA, настроенным в xpack.ssl.certificate_authorities?Спасибо, Виньеш Рави

...