Получение лога аудита: различия между версиями

Материал из Документация Ключ-АСТРОМ
Строка 145: Строка 145:
!Описание
!Описание
|-
|-
|общее количество
|totalCount
|целое число
|integer
|Общее количество записей в результате.
|Общее количество записей в результате.
|-
|-
|размер страницы
|pageSize
|целое число
|integer
|Количество записей на странице.
|Количество записей на странице.


Может быть <code>null</code>.
Может быть <code>null</code>.
|-
|-
|ключ следующей страницы
|nextPageKey
|нить
|string
|Курсор для следующей страницы результатов. Имеет значение <code>null</code>на последней странице.
|Курсор для следующей страницы результатов. Имеет значение <code>null</code>на последней странице.


Строка 163: Строка 163:
Может быть <code>null</code>.
Может быть <code>null</code>.
|-
|-
|журналы аудита
|auditLogs
|Запись в журнале аудита [ ]
|AuditLogEntry[]
|Список записей журнала аудита, упорядоченных по отметке времени создания.
|Список записей журнала аудита, упорядоченных по отметке времени создания.


Строка 178: Строка 178:
|-
|-
|logId
|logId
|нить
|string
|Идентификатор записи журнала.
|Идентификатор записи журнала.
|-
|-
|тип события
|eventType
|нить
|string
|Тип записываемой операции.
|Тип записываемой операции.


Строка 203: Строка 203:
* <code>UPDATE</code>
* <code>UPDATE</code>
|-
|-
|категория
|category
|нить
|string
|Категория записываемой операции.
|Категория записываемой операции.


Строка 215: Строка 215:
* <code>WEB_UI</code>
* <code>WEB_UI</code>
|-
|-
|идентификатор сущности
|entityId
|нить
|string
|ID объекта из категории .
|ID объекта из категории .


Строка 223: Строка 223:
Может быть <code>null</code>.
Может быть <code>null</code>.
|-
|-
|идентификатор среды
|environmentId
|нить
|string
|Идентификатор среды Ключ-АСТРОМ, в которой произошла записанная операция.
|Идентификатор среды Ключ-АСТРОМ, в которой произошла записанная операция.
|-
|-
|Пользователь
|user
|нить
|string
|Идентификатор пользователя, выполнившего записанную операцию.
|Идентификатор пользователя, выполнившего записанную операцию.
|-
|-
|тип пользователя
|userType
|нить
|string
|Тип аутентификации пользователя .
|Тип аутентификации пользователя .


Строка 243: Строка 243:
* <code>USER_NAME</code>
* <code>USER_NAME</code>
|-
|-
|пользователь Origin
|userOrigin
|нить
|string
|Происхождение и IP-адрес пользователя .
|Происхождение и IP-адрес пользователя .


Может быть <code>null</code>.
Может быть <code>null</code>.
|-
|-
|отметка времени
|timestamp
|целое число
|integer
|Отметка времени создания записи в миллисекундах UTC.
|Отметка времени создания записи в миллисекундах UTC.
|-
|-
|успех
|success
|логический
|boolean
|Записанная операция выполнена успешно ( <code>true</code>) или неудачно ( <code>false</code>).
|Записанная операция выполнена успешно ( <code>true</code>) или неудачно ( <code>false</code>).
|-
|-
|сообщение
|message
|нить
|string
|Зарегистрированное сообщение.
|Зарегистрированное сообщение.


Может быть <code>null</code>.
Может быть <code>null</code>.
|-
|-
|пластырь
|patch
|объект
|object
|Патч записанной операции в виде JSON-представления.
|Патч записанной операции в виде JSON-представления.



Версия 08:14, 10 марта 2022

Данная функция извлекает журнал аудита вашей среды Ключ-АСТРОМ.

Полный список может быть длинным, поэтому вы можете сузить его, указав параметры фильтра, такие как теги. См. раздел Параметры для более подробной информации.

Вы можете ограничить вывод, используя нумерацию страниц:

  1. Укажите количество результатов на странице в параметре запроса pageSize .
  2. Затем используйте курсор из поля nextPageKey предыдущего ответа в параметре запроса nextPageKey для получения последующих страниц.
GET Managed https://{your-domain}/e/{your-environment-id}/api/v2/auditlogs
SaaS https://{your-environment-id}.live.dynatrace.com/api/v2/auditlogs
Environment Ключ-АСТРОМ https://{your-activegate-domain}/e/{your-environment-id}/api/v2/auditlogs

Аутентификация

Чтобы выполнить этот запрос, вам необходимо разрешение на чтение журналов аудита ( auditLogs.read) , назначенное вашему токену API. Чтобы узнать, как его получить и использовать, см. раздел Токены и аутентификация .

Параметры

Параметр Тип Описание In Необходимость
nextPageKey string Курсор для следующей страницы результатов. Вы можете найти его в поле nextPageKey предыдущего ответа.

Первая страница всегда возвращается, если вы не укажете параметр запроса nextPageKey .

Когда nextPageKey настроен на получение последующих страниц, вы должны опустить все остальные параметры запроса.

запрос необязательный
pageSize integer Количество записей журнала в полезной нагрузке одного ответа.

Максимально допустимый размер страницы — 5000.

Если не установлено, используется 1000.

запрос необязательный
filter string Фильтрует журнал аудита. Вы можете использовать следующие критерии:
  • Пользователь: user("userIdentification"). Оператор EQUALSобращается.
  • Тип события: eventType("value"). Оператор EQUALSобращается.
  • Категория регистрируемой операции: category("value"). Оператор EQUALSобращается.
  • Идентификатор объекта: entityId("id"). Оператор CONTAINSобращается.

Для каждого критерия можно указать несколько альтернатив со значениями, разделенными запятыми. В этом случае применяется логика ИЛИ. Например, eventType("CREATE","UPDATE")означает, что тип события может быть «СОЗДАТЬ» или «ОБНОВИТЬ».

Вы можете указать несколько критериев, разделенных запятыми, например eventType("CREATE","UPDATE"),category("CONFIG"). В ответ включаются только результаты, соответствующие всем критериям.

Укажите значение критерия в виде строки в кавычках. Следующие специальные символы должны быть экранированы тильдой ( ~) внутри кавычек:

  • Тильда~
  • Цитировать"
запрос необязательный
from string Начало запрошенного таймфрейма.

Вы можете использовать один из следующих форматов:

  • Отметка времени в миллисекундах UTC.
  • Человекочитаемый формат 2021-01-25T05:57:01.123+01:00. Если часовой пояс не указан, используется UTC. Вы можете использовать пробел вместо T. Секунды и доли секунды не являются обязательными.
  • Относительный таймфрейм, назад. Формат: now-NU/A, где Nколичество времени, Uединица времени и Aвыравнивание. Выравнивание округляет все меньшие значения до ближайшего нуля в прошлом. Например, now-1y/wэто один год назад, выровненный на неделю. Вы также можете указать относительный таймфрейм без выравнивания: now-NU. Поддерживаемые единицы времени для относительного таймфрейма:
    • m: минут
    • h: часы
    • d: дней
    • w: недели
    • M: месяцы
    • y: годы

Если не задано, используется относительный двухнедельный таймфрейм ( now-2w).

запрос необязательный
to string Конец запрошенного периода времени.

Вы можете использовать один из следующих форматов:

  • Отметка времени в миллисекундах UTC.
  • Человекочитаемый формат 2021-01-25T05:57:01.123+01:00. Если часовой пояс не указан, используется UTC. Вы можете использовать пробел вместо T. Секунды и доли секунды не являются обязательными.
  • Относительный таймфрейм, назад. Формат: now-NU/A, где Nколичество времени, Uединица времени и Aвыравнивание. Выравнивание округляет все меньшие значения до ближайшего нуля в прошлом. Например, now-1y/wэто один год назад, выровненный на неделю. Вы также можете указать относительный таймфрейм без выравнивания: now-NU. Поддерживаемые единицы времени для относительного таймфрейма:
    • m: минут
    • h: часы
    • d: дней
    • w: недели
    • M: месяцы
    • y: годы

Если не установлено, используется текущая метка времени.

запрос необязательный
sort string Сортировка записей журнала аудита:
  • timestamp: Старейший первый.
  • -timestamp: Новички вперед.

Если не установлено, применяется самая новая первая сортировка.

запрос необязательный

Ответ

Коды ответов

Код Тип Описание
200 Журнал аудита Успех

Объекты тела ответа

Объект _ AuditLog

Журнал аудита вашей среды.

Элемент Тип Описание
totalCount integer Общее количество записей в результате.
pageSize integer Количество записей на странице.

Может быть null.

nextPageKey string Курсор для следующей страницы результатов. Имеет значение nullна последней странице.

Используйте его в параметре запроса nextPageKey для получения последующих страниц результата.

Может быть null.

auditLogs AuditLogEntry[] Список записей журнала аудита, упорядоченных по отметке времени создания.

Может быть null.

Объект _ AuditLogEntry

Запись журнала аудита.

Элемент Тип Описание
logId string Идентификатор записи журнала.
eventType string Тип записываемой операции.

Элемент может содержать эти значения

  • CREATE
  • DELETE
  • GENERAL
  • GET
  • LOGIN
  • LOGOUT
  • PATCH
  • POST
  • PUT
  • READ
  • REVOKE
  • TAG_ADD
  • TAG_REMOVE
  • TAG_UPDATE
  • UPDATE
category string Категория записываемой операции.

Элемент может содержать эти значения

  • CONFIG
  • DEBUG_UI
  • MANUAL_TAGGING_SERVICE
  • TOKEN
  • WEB_UI
entityId string ID объекта из категории .

Например, это может быть идентификатор конфигурации для CONFIGкатегории или идентификатор токена для TOKENкатегории.

Может быть null.

environmentId string Идентификатор среды Ключ-АСТРОМ, в которой произошла записанная операция.
user string Идентификатор пользователя, выполнившего записанную операцию.
userType string Тип аутентификации пользователя .

Элемент может содержать эти значения

  • PUBLIC_TOKEN_IDENTIFIER
  • REQUEST_ID
  • SERVICE_NAME
  • TOKEN_HASH
  • USER_NAME
userOrigin string Происхождение и IP-адрес пользователя .

Может быть null.

timestamp integer Отметка времени создания записи в миллисекундах UTC.
success boolean Записанная операция выполнена успешно ( true) или неудачно ( false).
message string Зарегистрированное сообщение.

Может быть null.

patch object Патч записанной операции в виде JSON-представления.

Формат представляет собой расширенный RFC 6902. Патч также содержит предыдущее значение в поле oldValue .

Может быть null.

JSON-модель тела ответа

{
  "totalCount": 10,
  "pageSize": 5,
  "nextPageKey": "___a7acX3q0AAAAAACJidWlsdGluOnNlcnZpY2lUVEJCUzBaNVIxVjJOSGt6Y3oyLTcwMUZWRkxlclH__9rtpxferQ",
  "auditLogs": [
    {
      "logId": "197425568800060000",
      "eventType": "UPDATE",
      "category": "CONFIG",
      "entityId": "MOBILE_RUM: MOBILE_APPLICATION-752C223D59734CD2",
      "environmentId": "prod-env-13",
      "user": "test.user@company.com",
      "userType": "USER_NAME",
      "userOrigin": "webui (192.168.0.2)",
      "timestamp": 1974255688445,
      "success": true,
      "patch": [
        {
          "op": "replace",
          "path": "/refreshTimeIntervalMillis",
          "value": 30000,
          "oldValue": 20000
        }
      ]
    }
  ]
}

Пример

В этом примере запрос извлекает все входы ( filter=eventType(LOGIN)) из журнала аудита среды mySampleEnv за последнюю неделю ( from=now-1w).

Маркер API передается в заголовке авторизации .

Ответ усекается до первых трех записей.

Завиток

curl -X GET \
  'https://mySampleEnv.live.dynatrace.com/api/v2/auditlogs?filter=eventType%28LOGIN%29&from=now-1w' \
  -H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890'

URL-адрес запроса

https://mySampleEnv.live.dynatrace.com/api/v2/auditlogs?filter=eventType%28LOGIN%29&from=now-1w

Тело ответа

{
  "totalCount": 5820,
  "nextPageKey": "vu8y3hPZ3q0AAAAAAi_neQJ8qUAAAAFu0T-ECgAAAW71TAgKAAAD6AAQZXZlbnRUeXBlKExPR0lOKQC-7zLeE9nerQ",
  "auditLogs": [
    {
      "logId": "157607341600050000",
      "eventType": "LOGIN",
      "category": "WEB_UI",
      "entityId": "240.204.62.255",
      "environmentId": "yasmuoujsw",
      "user": "Dynatrace support user #877988415",
      "userType": "USER_NAME",
      "userOrigin": "Forwarded: 240.204.62.255",
      "timestamp": 1576073415531,
      "success": true
    },
    {
      "logId": "157607338800050000",
      "eventType": "LOGIN",
      "category": "WEB_UI",
      "entityId": "55.199.177.119",
      "environmentId": "yasmuoujsw",
      "user": "Dynatrace support user #490812376",
      "userType": "USER_NAME",
      "userOrigin": "Forwarded: 55.199.177.119",
      "timestamp": 1576073388150,
      "success": true
    },
    {
      "logId": "157607338300060000",
      "eventType": "LOGIN",
      "category": "WEB_UI",
      "entityId": "75.16.11.184",
      "environmentId": "umsaywsjuo",
      "user": "Dynatrace support user #765684830",
      "userType": "USER_NAME",
      "userOrigin": "Forwarded: 75.16.11.184",
      "timestamp": 1576073381543,
      "success": true
    }
  ]
}

Код ответа

200