События аудита
Когда вы проводите аудит событий безопасности, один запрос клиента может генерировать несколько событий аудита на нескольких узлах кластера. Атрибут request.id может использоваться для сопоставления связанных событий.
Используйте параметр xpack.security.audit.logfile.events.include в elasticsearch.yml, чтобы указать тип событий, которые вы хотите включить в вывод аудита.
Для некоторых событий аудита требуется тип события security_config_change для аудита связанного действия события. Описание затронутых событий аудита указывает, требуется ли этот тип события.
-
access_denied -
Записывается, когда аутентифицированный пользователь пытается выполнить действие, для которого у него нет необходимых прав.
Пример
{"type":"audit", "timestamp":"2020-12-30T22:30:06,949+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"transport", "event.action": "access_denied", "authentication.type":"REALM", "user.name":"user1", "user.realm":"default_native", "user.roles":["test_role"], "origin.type": "rest", "origin.address":"[::1]:52434", "request.id":"yKOgWn2CRQCKYgZRz3phJw", "action":"indices:admin/auto_create", "request.name":"CreateIndexRequest", "indices":["<index-{now/d+1d}>"]}
-
access_granted -
Записывается, когда аутентифицированный пользователь пытается выполнить действие, для которого у него есть необходимые права. Эти события будут регистрироваться только для пользователей, не являющихся системными.
Если вы хотите включить события
access_grantedдля всех пользователей (включая внутренних пользователей, таких как_xpack), добавьтеsystem_access_grantedв список типов событий в дополнение кaccess_granted. Праваsystem_access_grantedпо умолчанию не включены, чтобы избежать загромождения журналов.Пример
{"type":"audit", "timestamp":"2020-12-30T22:30:06,947+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"transport", "event.action": "access_granted", "authentication.type":"REALM", "user.name":"user1", "user realm":"default_native", "user.roles":["test_role"], "origin.type":"rest", "origin.address":"[::1]:52434", "request.id":"yKOgWn2CRQCKYgZRz3phJw", "action":"indices:data/write/bulk", "request.name":"BulkRequest"}
-
anonymous_access_denied -
Записывается, когда запрос отклоняется из-за отсутствия учетных данных для аутентификации.
Пример
{"type":"audit", "timestamp":"2020-12-30T21:56:43,608+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"rest", "event.action": "anonymous_access_denied", "origin.type":"rest", "origin.address": "[::1]:50543", "url.path":"/twitter/_async_search", "url.query":"pretty", "request.method":"POST", "request.id":"TqA9OisyQ8WTl1ivJUV1AA"}
-
authentication_failed -
Записывается, когда учетные данные для аутентификации не соответствуют известному пользователю.
Пример
{"type":"audit", "timestamp":"2020-12-30T22:10:15,510+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"rest", "event.action": "authentication_failed", "user.name":"elastic", "origin.type":"rest", "origin.address":"[::1]:51504", "url.path":"/_security/user/user1", "url.query":"pretty", "request.method":"POST", "request.id":"POv8p_qeTl2tb5xoFl0HIg"}
-
authentication_success -
Записывается, когда пользователь успешно проходит аутентификацию.
Пример
{"type":"audit", "timestamp":"2020-12-30T22:03:35,018+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"rest", "event.action": "authentication_success", "authentication.type":"REALM", "user.name": "elastic", "user.realm":"reserved", "origin.type":"rest", "origin.address": "[::1]:51014", "realm":"reserved", "url.path":"/twitter/_search", "url.query":"pretty", "request.method":"POST", "request.id":"nHV3UMOoSiu-TaSPWCfxGg"}
-
change_disable_user -
Записывается, когда вызывается API включения пользователя для отключения собственного или встроенного пользователя.
Необходимо включить тип события
security_config_changeдля аудита связанного действия события.Пример
{"type":"audit", "timestamp":"2020-12-30T23:17:28,308+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"security_config_change", "event. action":"change_disable_user", "request.id":"qvLIgw_eTvyK3cgV-GaLVg", "change":{"disable":{"user":{"name":"user1"}}}}
-
change_enable_user -
Записывается, когда вызывается API включения пользователя для включения собственного или встроенного пользователя.
Необходимо включить тип события
security_config_changeдля аудита связанного действия события.Пример
{"type":"audit", "timestamp":"2020-12-30T23:17:34,843+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"security_config_change", "event. action":"change_enable_user", "request.id":"BO3QU3qeTb-Ei0G0rUOalQ", "change":{"enable":{"user":{"name":"user1"}}}}
-
change_password -
Записывается, когда вызывается API изменения пароля для изменения пароля собственного или встроенного пользователя.
Необходимо включить тип события
security_config_changeдля аудита связанного действия события.Пример
{"type":"audit", "timestamp":"2019-12-30T22:19:41,345+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"security_config_change", "event. action":"change_password", "request.id":"bz5a1Cc3RrebDMitMGGNCw", "change":{"password":{"user":{"name":"user1"}}}}
-
create_service_token -
Записывается, когда вызывается API создания токена учетной записи службы для создания нового токена на основе индекса для учетной записи службы.
Необходимо включить тип события
security_config_changeдля аудита связанного действия события.Пример
{"type":"audit", "timestamp":"2021-04-30T23:17:42,952+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"security_config_change", "event. action":"create_service_token", "request.id":"az9a1Db5QrebDMacQ8yGKc", "create":{"service_token":{"namespace":"elastic","service":"fleet-server","name":"token1"}}}`
-
connection_denied -
Записывается, когда входящее TCP-соединение не проходит IP-фильтр для определенного профиля.
Пример
{"type":"audit", "timestamp":"2020-12-30T21:47:31,526+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"ip_filter", "event.action": "connection_denied", "origin.type":"rest", "origin.address":"10.10.0.20:52314", "transport.profile":".http", "rule":"deny 10.10.0.0/16"}
-
connection_granted -
Записывается, когда входящее TCP-соединение проходит IP-фильтр для определенного профиля.
Пример
{"type":"audit", "timestamp":"2020-12-30T21:47:31,526+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"ip_filter", "event.action": "connection_granted", "origin.type":"rest", "origin.address":"[::1]:52314", "transport.profile":".http", "rule":"allow ::1,127.0.0.1"}
-
create_apikey -
Записывается, когда вызываются API создания API-ключа или предоставления API-ключа для создания нового API-ключа.
Необходимо включить тип события
security_config_changeдля аудита связанного действия события.Пример
{"type":"audit", "timestamp":"2020-12-31T00:33:52,521+0200", "node.id": "9clhpgjJRR-iKzOw20xBNQ", "event.type":"security_config_change", "event.action": "create_apikey", "request.id":"9FteCmovTzWHVI-9Gpa_vQ", "create":{"apikey": {"name":"test-api-key-1","expiration":"10d","role_descriptors":[{"cluster": ["monitor","manage_ilm"],"indices":[{"names":["index-a*"],"privileges": ["read","maintenance"]},{"names":["in*","alias*"],"privileges":["read"], "field_security":{"grant":["field1*","@timestamp"],"except":["field11"]}}], "applications":[],"run_as":[]},{"cluster":["all"],"indices":[{"names": ["index-b*"],"privileges":["all"]}],"applications":[],"run_as":[]}]}}}
-
delete_privileges -
Записывается, когда вызывается API удаления прав приложения для удаления одного или нескольких прав приложения.
Необходимо включить тип события
security_config_changeдля аудита связанного действия события.Пример
{"type":"audit", "timestamp":"2020-12-31T00:39:30,246+0200", "node.id": "9clhpgjJRR-iKzOw20xBNQ", "event.type":"security_config_change", "event. action":"delete_privileges", "request.id":"7wRWVxxqTzCKEspeSP7J8g", "delete":{"privileges":{"application":"myapp","privileges":["read"]}}}
-
delete_role -
Записывается, когда вызывается API удаления роли для удаления роли.
Необходимо включить тип события
security_config_changeдля аудита связанного действия события.Пример
{"type":"audit", "timestamp":"2020-12-31T00:08:11,678+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"security_config_change", "event.action": "delete_role", "request.id":"155IKq3zQdWq-12dgKZRnw", "delete":{"role":{"name":"my_admin_role"}}}
-
delete_role_mapping -
Записывается, когда вызывается API удаления сопоставления ролей для удаления сопоставления ролей.
Необходимо включить тип события
security_config_changeдля аудита связанного действия события.Пример
{"type":"audit", "timestamp":"2020-12-31T00:12:09,349+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"security_config_change", "event. action":"delete_role_mapping", "request.id":"Stim-DuoSTCWom0S_xhf8g", "delete":{"role_mapping":{"name":"mapping1"}}}
-
delete_service_token -
Записывается, когда вызывается API удаления токена учетной записи службы для удаления токена на основе индекса для учетной записи службы.
Необходимо включить тип события
security_config_changeдля аудита связанного действия события.Пример
{"type":"audit", "timestamp":"2021-04-30T23:17:42,952+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"security_config_change", "event. action":"delete_service_token", "request.id":"az9a1Db5QrebDMacQ8yGKc", "delete":{"service_token":{"namespace":"elastic","service":"fleet-server","name":"token1"}}}
-
delete_user -
Записывается, когда вызывается API удаления пользователя для удаления определенного собственного пользователя.
Необходимо включить тип события
security_config_changeдля аудита связанного действия события.Пример
{"type":"audit", "timestamp":"2020-12-30T22:19:41,345+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"security_config_change", "event.action":"delete_user", "request.id":"au5a1Cc3RrebDMitMGGNCw", "delete":{"user":{"name":"jacknich"}}}
-
invalidate_apikeys -
Записывается, когда вызывается API аннулирования API-ключа для аннулирования одного или нескольких API-ключей.
Необходимо включить тип события
security_config_changeдля аудита связанного действия события.Пример
{"type":"audit", "timestamp":"2020-12-31T00:36:30,247+0200", "node.id": "9clhpgjJRR-iKzOw20xBNQ", "event.type":"security_config_change", "event. action":"invalidate_apikeys", "request.id":"7lyIQU9QTFqSrTxD0CqnTQ", "invalidate":{"apikeys":{"owned_by_authenticated_user":false, "user":{"name":"myuser","realm":"native1"}}}}
-
put_privileges -
Записывается, когда вызывается API создания или обновления прав приложения для добавления или обновления одного или нескольких прав приложения.
Необходимо включить тип события
security_config_changeдля аудита связанного действия события.Пример
{"type":"audit", "timestamp":"2020-12-31T00:39:07,779+0200", "node.id": "9clhpgjJRR-iKzOw20xBNQ", "event.type":"security_config_change", "event.action":"put_privileges", "request.id":"1X2VVtNgRYO7FmE0nR_BGA", "put":{"privileges":[{"application":"myapp","name":"read","actions": ["data:read/*","action:login"],"metadata":{"description":"Read access to myapp"}}]}}
-
put_role -
Записывается при вызове API создания или обновления роли для создания или обновления роли.
Вы должны включить тип события
security_config_changeдля аудита связанного действия события.Пример
{"type":"audit", "timestamp":"2020-12-30T22:27:01,978+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"security_config_change", "event.action":"put_role", "request.id":"tDYQhv5CRMWM4Sc5Zkk2cQ", "put":{"role":{"name":"test_role","role_descriptor":{"cluster":["all"], "indices":[{"names":["apm*"],"privileges":["all"],"field_security": {"grant":["granted"]},"query":"{\"term\": {\"service.name\": \"bar\"}}"}, {"names":["apm-all*"],"privileges":["all"],"query":"{\"term\": {\"service.name\": \"bar2\"}}"}],"applications":[],"run_as":[]}}}}
-
put_role_mapping -
Записывается при вызове API создания или обновления сопоставления ролей для создания или обновления сопоставления ролей.
Вы должны включить тип события
security_config_changeдля аудита связанного действия события.Пример
{"type":"audit", "timestamp":"2020-12-31T00:11:13,932+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"security_config_change", "event. action":"put_role_mapping", "request.id":"kg4h1l_kTDegnLC-0A-XxA", "put":{"role_mapping":{"name":"mapping1","roles":["user"],"rules": {"field":{"username":"*"}},"enabled":true,"metadata":{"version":1}}}}
-
put_user -
Записывается при вызове API создания или обновления пользователя для создания или обновления системного пользователя. Обратите внимание, что обновление пользователя также может изменить пароль пользователя.
Вы должны включить тип события
security_config_changeдля аудита связанного действия события.Пример
{"type":"audit", "timestamp":"2020-12-30T22:10:09,749+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"security_config_change", "event.action":"put_user", "request.id":"VIiSvhp4Riim_tpkQCVSQA", "put":{"user":{"name":"user1","enabled":false,"roles":["admin","other_role1"], "full_name":"Jack Sparrow","email":"jack@blackpearl.com", "has_password":true,"metadata":{"cunning":10}}}}
-
realm_authentication_failed -
Записывается для каждого домена, который не может предоставить действительный токен аутентификации.
Пример
{"type":"audit", "timestamp":"2020-12-30T22:10:15,510+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"rest", "event.action": "realm_authentication_failed", "user.name":"elastic", "origin.type":"rest", "origin.address":"[::1]:51504", "realm":"myTestRealm1", "url.path": "/_security/user/user1", "url.query":"pretty", "request.method":"POST", "request.id":"POv8p_qeTl2tb5xoFl0HIg"}
-
run_as_denied -
Записывается, когда аутентифицированный пользователь пытается выполнить запрос от имени другого пользователя, у которого нет необходимых прав доступа.
Пример
{"type":"audit", "timestamp":"2020-12-30T22:49:34,859+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"transport", "event.action": "run_as_denied", "user.name":"user1", "user.run_as.name":"user1", "user.realm":"default_native", "user.run_as.realm":"default_native", "user.roles":["test_role"], "origin.type":"rest", "origin.address": "[::1]:52662", "request.id":"RcaSt872RG-R_WJBEGfYXA", "action":"indices:data/read/search", "request.name":"SearchRequest", "indices":["alias1"]}
-
run_as_granted -
Записывается, когда аутентифицированный пользователь пытается выполнить запрос от имени другого пользователя, у которого есть необходимые права доступа.
Пример
{"type":"audit", "timestamp":"2020-12-30T22:44:42,068+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type":"transport", "event.action": "run_as_granted", "user.name":"elastic", "user.run_as.name":"user1", "user.realm":"reserved", "user.run_as.realm":"default_native", "user.roles":["superuser"], "origin.type":"rest", "origin.address": "[::1]:52623", "request.id":"dGqPTdEQSX2TAPS3cvc1qA", "action": "indices:data/read/search", "request.name":"SearchRequest", "indices":["alias1"]}
-
system_access_granted -
Записывает события
access_grantedтолько для внутренних пользователей, таких как_xpack. Если вы включите эту настройку в дополнение кaccess_granted, то событияaccess_grantedбудут записываться для всех пользователей.Этот тип события по умолчанию отключен, чтобы избежать засорения журналов.
-
tampered_request -
Записывается, когда средства безопасности обнаруживают, что запрос был изменён. Обычно связано с запросами
search/scroll, когда предполагается, что идентификатор скролла был изменён.Пример
{"type":"audit", "timestamp":"2019-11-27T22:00:00,947+0200", "node.id": "0RMNyghkQYCc_gVd1G6tZQ", "event.type": "rest", "event.action": "tampered_request", "origin.address":"[::1]:50543", "url.path": "/twitter/_async_search", "url.query":"pretty", "request.method":"POST", "request.id":"TqA9OisyQ8WTl1ivJUV1AA"}
Атрибуты событий аудита
События аудита отформатированы как JSON-документы, и каждое событие печатается на отдельной строке в журнале аудита. Сами записи не содержат разделителя конца строки. Более подробную информацию см. в формате записи журнала.
Следующий список показывает атрибуты, общие для всех типов событий аудита:
-
@timestamp - Время события в формате ISO9601.
-
node.name - Имя узла. Это можно изменить в файле конфигурации
elasticsearch.yml. -
node.id - Идентификатор узла. Он автоматически генерируется и сохраняется при полном перезапуске кластера.
-
host.ip - Связанный IP-адрес узла, с которым можно связаться с узлом.
-
host.name - Неразрешённое имя хоста узла.
-
event.type - Внутренний уровень обработки, сгенерировавший событие:
rest,transport,ip_filterилиsecurity_config_change. Это отличается отorigin.type, так как запрос, исходящий из REST API, преобразуется в ряд транспортных сообщений, генерирующих события аудита сorigin.type: restиevent.type: transport. -
event.action -
Тип произошедшего события:
anonymous_access_denied,authentication_failed,authentication_success,realm_authentication_failed,access_denied,access_granted,connection_denied,connection_granted,tampered_request,run_as_deniedилиrun_as_granted.Кроме того, если
event.typeравноsecurity_config_change, атрибутevent.actionпринимает одно из следующих значений:put_user,change_password,put_role,put_role_mapping,change_enable_user,change_disable_user,put_privileges,create_apikey,delete_user,delete_role,delete_role_mapping,invalidate_apikeysилиdelete_privileges. -
request.id - Синтетический идентификатор, который можно использовать для сопоставления событий, связанных с определённым запросом REST.
Кроме того, все события типов rest, transport и ip_filter (но не security_config_change) имеют следующие дополнительные атрибуты, которые показывают более подробную информацию о запрашивающем клиенте:
-
origin.address - IP-адрес источника запроса, связанного с этим событием. Это может быть адрес удалённого клиента, адрес другого узла кластера или связанный адрес локального узла, если запрос исходил локально. Если удалённый клиент не подключается непосредственно к кластеру, то адрес клиента фактически будет адресом первого прокси OSI уровня 3 перед кластером.
-
origin.type - Тип происхождения запроса, связанного с этим событием:
rest(запрос исходил от REST API-запроса),transport(запрос был получен по транспортному каналу) илиlocal_node(локальный узел инициировал запрос). -
opaque_id - Значение HTTP-заголовка
X-Opaque-Id(если присутствует) запроса, связанного с этим событием. См. подробнее:X-Opaque-IdHTTP-заголовок - Справочник по API -
trace_id - Идентификатор, извлечённый из HTTP-заголовка
traceparent(если присутствует) запроса, связанного с этим событием. Он позволяет отображать журналы аудита в функции Trace Logs Elastic APM. -
x_forwarded_for - Дословное значение HTTP-заголовка
X-Forwarded-Forзапроса (если присутствует), связанного с событием аудита. Этот заголовок обычно добавляется прокси-серверами, когда они передают запросы, и значением является адрес прокси-клиента. Когда запрос проходит через несколько прокси-серверов, заголовок представляет собой список, разделённый запятыми, при этом последним значением является адрес второго с последнего прокси-сервера (адрес последнего прокси-сервера обозначен полемorigin.address).
Атрибуты событий аудита типа rest
События с event.type, равным rest, имеют одно из следующих значений атрибута event.action: authentication_success, anonymous_access_denied, authentication_failed, realm_authentication_failed, tampered_request или run_as_denied. Эти события также имеют следующие дополнительные атрибуты (кроме общих):
-
url.path - Часть пути URL (между портом и строкой запроса) REST-запроса, связанного с этим событием. Закодирован в URL.
-
url.query - Часть запроса URL (после "?") REST-запроса, связанного с этим событием. Закодирован в URL.
-
request.method - Метод HTTP REST-запроса, связанного с этим событием. Это одно из GET, POST, PUT, DELETE, OPTIONS, HEAD, PATCH, TRACE и CONNECT.
-
request.body - Полное содержимое REST-запроса, связанного с этим событием, если включено. Содержит тело HTTP-запроса. Тело экранируется как строковое значение в соответствии со спецификацией JSON RFC 4627.
Атрибуты события аудита типа transport
События с event.type, равным transport, имеют одно из следующих event.action значений атрибута: authentication_success, anonymous_access_denied, authentication_failed, realm_authentication_failed, access_granted, access_denied, run_as_granted, run_as_denied или tampered_request. Эти события также имеют следующие дополнительные атрибуты (кроме общих):
-
action - Название транспортного действия, которое было выполнено. Это, например, URL для REST-запроса.
-
indices - Массив имён индексов, к которым относится запрос, связанный с этим событием (если применимо).
-
request.name - Название обработчика запроса, который был выполнен.
Атрибуты события аудита типа ip_filter
События с event.type, равным ip_filter, имеют одно из следующих event.action значений атрибута: connection_granted или connection_denied. Эти события также имеют следующие дополнительные атрибуты (кроме общих):
-
transport_profile - Профиль транспорта, на который был нацелен запрос.
-
rule - Правило фильтрации IP-адресов, которое отклонило запрос.
Атрибуты события аудита типа security_config_change
События с атрибутом event.type, равным security_config_change, имеют одно из следующих event.action значений атрибута: put_user, change_password, put_role, put_role_mapping, change_enable_user, change_disable_user, put_privileges, create_apikey, delete_user, delete_role, delete_role_mapping, invalidate_apikeys или delete_privileges.
Эти события также имеют один из следующих дополнительных атрибутов (кроме общих), специфичный для атрибута event.type. Значение атрибута — вложенный JSON-объект:
-
put - Представление объекта конфигурации безопасности, который создаётся или перезаписывает существующую конфигурацию. Он содержит конфигурацию для
user,role,role_mappingили для приложенияprivileges. -
delete - Представление объекта конфигурации безопасности, который удаляется. Это может быть конфигурация для
user,role,role_mappingили для приложенияprivileges. -
change - Представление объекта конфигурации безопасности, который изменяется. Это может быть конфигурация
password,enableилиdisable, объект конфигурации для нативных или встроенных пользователей. -
create - Представление объекта новой конфигурации безопасности, который создаётся. В настоящее время используется только для аудита API-ключа. Если API-ключ создаётся с помощью API создания API-ключа, он содержит только объект конфигурации
apikey. Если API-ключ создаётся с помощью API предоставления API-ключа, он также содержит объект конфигурацииgrant. -
invalidate - Представление объекта конфигурации безопасности, который аннулируется. В настоящее время аннулирование поддерживается только для
apikeysс помощью API аннулирования API-ключа.
Схемы объектов конфигурации безопасности, упомянутых выше, приведены ниже. Они очень похожи на тела запросов соответствующих API безопасности.
-
user -
Объект, подобный:
`{"name": <string>, "enabled": <boolean>, "roles": <string_list>, "full_name": <string>, "email": <string>, "has_password": <boolean>, "metadata": <object>}`.Поля
full_name,emailиmetadataопушены, если они пусты. -
role -
Объект, подобный:
`{"name": <string>, "role_descriptor": {"cluster": <string_list>, "global": {"application":{"manage":{<string>:<string_list>}}}, "indices": [ {"names": <string_list>, "privileges": <string_list>, "field_security": {"grant": <string_list>, "except": <string_list>}, "query": <string>, "allow_restricted_indices": <boolean>}], "applications":[{"application": <string>, "privileges": <string_list>, "resources": <string_list>}], "run_as": <string_list>, "metadata": <object>}}`.Поля
global,field_security,except,query,allow_restricted_indicesиmetadataопушены, если они пусты. -
role_mapping -
Объект, подобный:
`{"name": <string>, "roles": <string_list>, "role_templates": [{"template": <string>, "format": <string>}], "rules": <object>, "enabled": <boolean>, "metadata": <object>}`.Поля
rolesиrole_templatesопушены, если они пусты. Объектrulesимеет рекурсивно вложенную схему, идентичную схеме, передаваемой в запросе API для сопоставления ролей. -
privileges -
Массив объектов, подобных:
`{"application": <string>, "name": <string>, "actions": <string_list>, "metadata": <object>}`. -
password -
Простой объект, подобный:
`{"user":{"name": <string>}}` -
enable -
Простой объект, подобный:
`{"user":{"name": <string>}}` -
disable -
Простой объект, подобный:
`{"user":{"name": <string>}}` -
apikey -
Объект, подобный:
`{"name": <string>, "expiration": <string>, "role_descriptors" [<object>]}`Объекты
role_descriptorsимеют ту же схему, что и объектrole_descriptor, который является частью вышеупомянутого объекта конфигурацииrole. -
grant -
Объект, подобный:
`{"type": <string>, "user": {"name": <string>, "has_password": <boolean>}, "has_access_token": <boolean>}` -
apikeys -
Объект, подобный:
`{"ids": <string_list>, "name": <string>, "owned_by_authenticated_user": <boolean>, "user":{"name": <string>, "realm": <string>}}` -
service_token -
Объект, подобный:
`{"namespace":<string>,"service":<string>,"name":<string>}`
Дополнительные атрибуты событий аудита для определенных событий
Некоторые события содержат дополнительные атрибуты помимо тех, которые были описаны ранее:
-
authentication_success:-
realm - Имя домена, который успешно выполнил аутентификацию пользователя. Если аутентификация выполнена с помощью API-ключа, это специальное значение
_es_api_key. Это сокращенный атрибут, содержащий ту же информацию, что и атрибутыuser.realm,user.run_by.realmиauthentication.type. -
user.name - Имя эффективного пользователя. Обычно это совпадает с именем аутентифицированного пользователя, но если используется функциональность разрешения run as, то это имя имитируемого пользователя. Если аутентификация выполнена с помощью API-ключа, это имя владельца API-ключа. Если аутентификация выполнена с помощью токена учетной записи сервиса, это принципал учетной записи сервиса, т.е.
namespace/service_name. -
user.realm - Имя домена, к которому принадлежит эффективный пользователь. Если аутентификация выполнена с помощью API-ключа, это имя домена, к которому принадлежит владелец API-ключа.
-
user.run_by.name - Этот атрибут присутствует только если запрос использует функциональность разрешения run as и обозначает имя аутентифицированного пользователя, также известного как имитатор.
-
user.run_by.realm - Имя домена, к которому принадлежит аутентифицированный (имитатор) пользователь. Этот атрибут предоставляется только в том случае, если запрос использует функциональность разрешения run as.
-
authentication.type - Метод, используемый для аутентификации пользователя. Возможные значения:
REALM,API_KEY,TOKEN,ANONYMOUSилиINTERNAL. -
apikey.id - Идентификатор API-ключа, возвращенный запросом создания API-ключа. Этот атрибут предоставляется только для аутентификации с помощью API-ключа.
-
apikey.name - Имя API-ключа, предоставленное в запросе создания API-ключа. Этот атрибут предоставляется только для аутентификации с помощью API-ключа.
-
authentication.token.name - Имя токена учетной записи сервиса. Этот атрибут предоставляется только для аутентификации с помощью токена учетной записи сервиса.
-
authentication.token.type - Тип токена учетной записи сервиса. Этот атрибут предоставляется только для аутентификации с помощью токена учетной записи сервиса.
-
-
authentication_failed:-
user.name - Имя пользователя, который не прошел аутентификацию. Если токен аутентификации запроса недействителен или неразборчив, эта информация может отсутствовать.
-
authentication.token.name - Имя токена учетной записи сервиса. Этот атрибут предоставляется только для аутентификации с помощью токена учетной записи сервиса. Если токен аутентификации запроса недействителен или неразборчив, эта информация может отсутствовать.
-
authentication.token.type - Тип токена учетной записи сервиса. Этот атрибут предоставляется только для аутентификации с помощью токена учетной записи сервиса. Если токен аутентификации запроса недействителен или неразборчив, эта информация может отсутствовать.
-
-
realm_authentication_failed:-
user.name - Имя пользователя, который не прошел аутентификацию.
-
realm - Имя домена, который отклонил данную аутентификацию. Это событие генерируется для каждого просмотренного домена в цепочке.
-
-
run_as_deniedиrun_as_granted:-
user.roles - Имена ролей аутентифицированного пользователя, которому предоставляется или отказывается доступ к действию имитации. Если аутентификация выполнена от имени учетной записи сервиса, это всегда пустой массив.
-
user.name - Имя аутентифицированного пользователя, которому предоставляется или отказывается доступ к действию имитации.
-
user.realm - Имя домена, к которому принадлежит аутентифицированный пользователь.
-
user.run_as.name - Имя пользователя, которому предоставляется или отказывается доступ к действию имитации.
-
user.run_as.realm - Имя домена, к которому принадлежит имитируемый пользователь.
-
-
access_grantedиaccess_denied:-
user.roles - Имена ролей пользователя в виде массива. Если аутентификация выполнена с помощью API-ключа, это имена ролей владельца API-ключа. Если аутентификация выполнена от имени учетной записи сервиса, это всегда пустой массив.
-
user.name - Имя эффективного пользователя. Обычно это совпадает с именем аутентифицированного пользователя, но если используется функциональность разрешения run as, то это имя имитируемого пользователя. Если аутентификация выполнена с помощью API-ключа, это имя владельца API-ключа.
-
user.realm - Имя домена, к которому принадлежит эффективный пользователь. Если аутентификация выполнена с помощью API-ключа, это имя домена, к которому принадлежит владелец API-ключа.
-
user.run_by.name - Этот атрибут присутствует только если запрос использует функциональность разрешения run as и обозначает имя аутентифицированного пользователя, также известного как имитатор.
-
user.run_by.realm - Этот атрибут присутствует только если запрос использует функциональность разрешения run as и обозначает имя домена, к которому принадлежит аутентифицированный (имитатор) пользователь.
-
authentication.type - Метод, используемый для аутентификации пользователя. Возможные значения:
REALM,API_KEY,TOKEN,ANONYMOUSилиINTERNAL. -
apikey.id - Идентификатор API-ключа, возвращенный запросом создания API-ключа. Этот атрибут предоставляется только для аутентификации с помощью API-ключа.
-
apikey.name - Имя API-ключа, предоставленное в запросе создания API-ключа. Этот атрибут предоставляется только для аутентификации с помощью API-ключа.
-
authentication.token.name - Имя токена учетной записи сервиса. Этот атрибут предоставляется только для аутентификации с помощью токена учетной записи сервиса.
-
authentication.token.type - Тип токена учетной записи сервиса. Этот атрибут предоставляется только для аутентификации с помощью токена учетной записи сервиса.
-
© 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/7.17/audit-event-types.html