Вызов API Elasticsearch/X-Pack из приложения узла js
Я разработал службу 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.certificate: <path_to_elasticsearch>/config/certificates/server.crt
xpack.ssl.key: <path_to_elasticsearch>/config/certificates/server.key
xpack.ssl.certificate_authorities: ["<path_to_elasticsearch>/elasticsearch/config/certificates/ca1.cer","<path_to_elasticsearch>/elasticsearch/config/certificates/ca2.cer"]
Пожалуйста, подтвердите, если
Значение 'key' в параметрах запроса моего приложения должно быть путем к тому же ключу сервера, который настроен в xpack.ssl.key? Значение 'cert' в параметрах запроса моего приложения должно быть путем к тому же сертификату сервера, который настроен в xpack.ssl.certificate? Значение 'ca' в параметрах запроса моего приложения должно быть путем для CA, настроенным в xpack.ssl.certificate_authorities? Спасибо, Виньеш Рави