API сертификатов SSL
API certificates позволяет получить информацию о сертификатах X.509, используемых для шифрования коммуникаций в кластере Elasticsearch.
Запрос
GET /_ssl/certificates
Предварительные условия
- При включенных функциях безопасности вам необходимо иметь
monitorправа кластера для использования данного API. Дополнительную информацию можно найти в Правах безопасности.
Описание
Дополнительную информацию о настройке сертификатов в сочетании с Transport Layer Security (TLS) см. в разделе Зашифровать межузловые коммуникации с помощью TLS.
API возвращает список, включающий сертификаты всех контекстов TLS, включая:
- Настройки транспортного и HTTP интерфейсов
- Настройки TLS, используемые в рамках сфер аутентификации
- Настройки TLS для экспортеров удалённого мониторинга
Список включает сертификаты, используемые для настройки доверия, такие как те, которые настроены в параметрах xpack.security.transport.ssl.truststore и xpack.security.transport.ssl.certificate_authorities. Он также включает сертификаты, используемые для настройки идентичности сервера, такие как xpack.security.http.ssl.keystore и xpack.security.http.ssl.certificate настройки.
Список не включает сертификаты, взятые из контекста SSL по умолчанию Java Runtime Environment (JRE), даже если эти сертификаты используются в Elasticsearch.
Когда токен PKCS#11 настроен как хранилище доверия JRE, API вернет все сертификаты, включенные в токен PKCS#11, независимо от того, используются ли они в конфигурации Elasticsearch TLS или нет.
Если Elasticsearch настроен на использование хранилища ключей или хранилища доверия, вывод API включает все сертификаты в этом хранилище, даже если некоторые из них могут не использоваться в кластере.
Тело ответа
Ответ представляет собой массив объектов, каждый из которых представляет отдельный сертификат. Поля каждого объекта:
-
path - (строка) Путь к сертификату, как он настроен в файле
elasticsearch.yml. -
format - (строка) Формат файла. Один из:
jks,PKCS12,PEM. -
alias - (строка) Если путь относится к контейнерному файлу (jks хранилище ключей или PKCS#12 файл), псевдоним сертификата. В противном случае null.
-
subject_dn - (строка) Имя Distinguished Name субъекта сертификата.
-
serial_number - (строка) Шестнадцатеричное представление серийного номера сертификата.
-
has_private_key - (Булево значение) Указывает, имеет ли Elasticsearch доступ к закрытому ключу для этого сертификата.
-
expiry - (строка) Дата истечения (not-after) сертификата в формате ISO.
-
issuer - (строка) Имя Distinguished Name издателя сертификата.
Примеры
Следующий пример предоставляет информацию о сертификатах на одном узле Elasticsearch:
resp = client.ssl.certificates() print(resp)
const response = await client.ssl.certificates(); console.log(response);
GET /_ssl/certificates
API возвращает следующие результаты:
[
{
"path": "certs/elastic-certificates.p12",
"format": "PKCS12",
"alias": "instance",
"subject_dn": "CN=Elastic Certificate Tool Autogenerated CA",
"serial_number": "a20f0ee901e8f69dc633ff633e5cd5437cdb4137",
"has_private_key": false,
"expiry": "2021-01-15T20:42:49.000Z"
},
{
"path": "certs/elastic-certificates.p12",
"format": "PKCS12",
"alias": "ca",
"subject_dn": "CN=Elastic Certificate Tool Autogenerated CA",
"serial_number": "a20f0ee901e8f69dc633ff633e5cd5437cdb4137",
"has_private_key": false,
"expiry": "2021-01-15T20:42:49.000Z"
},
{
"path": "certs/elastic-certificates.p12",
"format": "PKCS12",
"alias": "instance",
"subject_dn": "CN=instance",
"serial_number": "fc1905e1494dc5230218d079c47a617088f84ce0",
"has_private_key": true,
"expiry": "2021-01-15T20:44:32.000Z"
}
]
© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/8.17/security-api-ssl.html