К основному содержимому

Журналы аудита

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

Автор: Perplexity Support
Обновлено более 2 мес. назад

Perplexity Enterprise предоставляет комплексные возможности ведения журнала аудита, позволяющие организациям отслеживать действия пользователей и административные операции.

Журналы аудита фиксируют сквозные запросы: ввод пользователя, действия агента и ответы, а также любые изменения настроек, внесенные администратором. Каждая запись журнала фиксирует важную информацию, включая «тип события» (действие, выполненное «пользователем»), время события и данные пользователя, такие как адрес электронной почты и IP‑адрес. Ниже представлен пример.

Журналы аудита в режиме реального времени передаются на конечную точку вебхука, настроенную с помощью HTTP‑POST‑запросов, и предоставляют подробную хронологическую запись всех действий пользователей и системных событий в вашей организации.

Журналы аудита доступны только для организаций Enterprise с 50 и более местами или хотя бы с одним пользователем Enterprise Max.

Включение журналов аудита

Чтобы включить Audit Logs для вашей организации:

  1. Перейдите в Настройки организации на портале Perplexity Enterprise.

  2. Прокрутите вниз до Настройки журнала аудита и Включите ведение журнала аудита

  3. Настройте URL-адрес вебхука (должен быть HTTPS) и нажмите Сохранить.

  4. Для дополнительной безопасности вы можете настроить заголовок Authorization, который будет использоваться для аутентификации всех запросов к URL-адресу вашего вебхука. Если вы не укажете схему авторизации, введенное значение будет отправлено как токен Bearer

Аутентификация вебхука

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

Токен Bearer

Укажите токен без пробелов. Система автоматически добавит Bearer в заголовок.

  • Пример: ваш-секретный-токен-123

  • Отправлено как: Authorization: Bearer your-secret-token-123

Пользовательский заголовок авторизации

Укажите полное значение заголовка авторизации (должно содержать пробел).

  • Пример: Splunk xyz-token-456

  • Отправлено как: Authorization: Splunk xyz-token-456

Доставка вебхуков

Формат запроса

Журналы аудита доставляются на URL-адрес вашего вебхука через HTTP-запросы POST с:

  • Метод: POST

  • Тип содержимого: application/json

Заголовок аутентификации

Если вы настроили токен заголовка аутентификации, он будет включен в запрос:

Authorization: Bearer your-token-123

Или для пользовательских заголовков:

Authorization: Splunk your-token-456

Обработка ответов

  • Ваша конечная точка вебхука должна отвечать кодами состояния HTTP 2xx, чтобы подтвердить успешное получение.

  • Коды состояния HTTP 4xx или 5xx будут зарегистрированы как ошибки в системе Perplexity.

Схема журнала аудита

Все события журнала аудита соответствуют следующему стандартному шаблону:

Поле

Тип

Обязательно

Описание

UUID

строка

Да

Уникальный идентификатор события журнала аудита (автоматически сгенерированный UUID v4)

timestamp

строка

Да

Метка времени ISO 8601 в формате RFC3339 (например, 2024-01-15T10:30:45+00:00)

event_type

строка

Да

Тип произошедшего события (см. Типы событий)

user_email

строка

Да

Адрес электронной почты пользователя, выполнившего действие

ip_address

строка

Да

IP-адрес клиента, инициировавшего действие

user_agent

строка

Да

Строка User-Agent браузера или приложения клиента

session_id

строка

Нет

Идентификатор сеанса для отслеживания связанных действий (может быть пустым)

metadata

объект

Нет

Дополнительные данные по событию (структура зависит от типа события)

Типы событий

Ниже приведены определения для каждого типа события, которые вы можете встретить в своих журналах аудита:

События активности пользователей

Тип события

Описание

login

Пользователь успешно прошёл аутентификацию и вошёл в систему.

запрос

Пользователь отправил запрос на поиск

answer_generated

Пользователю был возвращён ответ, сгенерированный ИИ.

file_upload

Пользователь загрузил файл в пространство

file_download

Пользователь скачал файл из пространства

Административные события

Тип события

Описание

organization_settings_update

Настройки организации изменены администратором

admin_activity

Выполнено внутреннее действие администратора (для использования сотрудниками Perplexity)

bulk_member_add_batch

В организацию добавлено несколько пользователей.

bulk_member_remove_batch

Из организации удалено несколько пользователей

События агента

Тип события

Описание

comet_agent_action

Агент Comet выполнил автоматическое действие

Примеры полезных данных

Следующая запись регистрируется, когда пользователь отправляет поисковый запрос:

{
"uuid": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"timestamp": "2024-01-15T14:25:12.345678+00:00",
"event_type": "query",
"user_email": "[alice@company.com](<mailto:alice@company.com>)",
"ip_address": "203.0.113.45",
"user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",
"session_id": "query_xyz789",
"metadata": {
"query_str": "Каковы лучшие практики обеспечения безопасности API?"
}
}

Форматирование для конкретной платформы

Вебхуки Slack

Если URL вашего вебхука — это вебхук Slack ([https://hooks.slack.com/](<https://hooks.slack.com/>)...), журналы аудита автоматически форматируются в формате Block Kit от Slack для наглядного отображения:

{
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "*Event Type:* Answer Generated"
}
},
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "*User:* [alice@company.com](<mailto:alice@company.com>)\n*IP Address:* 203.0.113.45\n*User Agent:* Mozilla/5.0...\n*Session ID:* query_xyz789\n*Timestamp:* 2024-01-15T14:25:18.987654+00:00"
}
},
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "\n*Metadata:*\n• *answer:* API security best practices include...\n• *model:* claude-3-opus"
}
}
]
}

Примечание: Форматирование Slack включает:

  • Тип события переводится в Title Case с удалением подчёркиваний

  • Значения метаданных усекаются до 500 символов, если они превышают этот лимит.

  • Весь раздел метаданных усекается до 2500 символов, чтобы соответствовать ограничению Slack в 3000 символов.

  • Длинные значения отображают уведомление об усечении с указанием исходной длины.

Сборщик событий Splunk HTTP (HEC)

Если заголовок аутентификации начинается с «Splunk», журналы аудита автоматически оформляются в требуемом формате Splunk:

{
"event": {
"uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"timestamp": "2024-01-15T10:30:45.123456+00:00",
"event_type": "login",
"user_email": "[user@company.com](<mailto:user@company.com>)",
"ip_address": "192.168.1.100",
"user_agent": "Mozilla/5.0...",
"session_id": "session-abc-123",
"metadata": {}
}
}

Общие вебхуки

Для всех остальных URL-адресов вебхуков стандартная полезная нагрузка JSON (как показано в разделе «Примеры полезной нагрузки») отправляется без дополнительного форматирования.

Типичные сценарии

Отслеживание пользовательских исследовательских сессий

Чтобы отслеживать сеанс исследования пользователя от запроса до ответа:

  1. Событие запроса: Пользователь отправляет вопрос

    • Содержит query_str в метаданных

    • Имеет session_id, который связывает его с запросом

  2. Событие генерации ответа: ИИ возвращает ответ

    • Тот же session_id , что и у события запроса

    • Содержит полный текст answer и используемую модель ИИ model.

    • Может быть сопоставлено с событием запроса через session_id

Мониторинг доступа к файлам

Чтобы отслеживать, к каким файлам осуществляется доступ:

  1. Событие загрузки файла: Пользователь добавляет файл в пространство

    • Содержит filename, file_uuid, space_name и space_uuid.

  2. Событие скачивания файла: Пользователь скачивает файл

    • Тот же file_uuid можно использовать для сопоставления с загрузкой.

    • Показывает, кто и когда обращался к файлу

Аудит изменений конфигурации

Для отслеживания административных изменений:

Событие обновления настроек организации:

Администратор изменяет настройку

  • Содержит key настройки, которая была изменена

  • Показывает old_value и new_value для сравнения

  • Можно отфильтровать по user_email, чтобы отслеживать, какие администраторы вносили изменения.

Рекомендации

Реализация конечной точки вебхука

  • Отвечайте быстро: Ваша конечная точка должна отвечать в течение 1 секунды, чтобы избежать тайм-аутов.

  • Асинхронная обработка: помещайте журналы аудита в очередь для обработки и отвечайте немедленно

  • Проверка полезных данных: Проверяйте структуру и содержимое входящих полезных данных.

  • Защитите свою конечную точку: используйте HTTPS и проверяйте заголовок аутентификации

  • Элегантная обработка сбоев: регистрируйте ошибки, но не возвращайте ответы об ошибках, которые могут привести к повторным попыткам

Хранение и анализ данных

  • Храните в течение длительного времени: Сохраняйте журналы аудита для анализа соответствия требованиям и безопасности

  • Индексируйте ключевые поля: индексируйте event_type, user_email, timestamp и session_id для эффективного выполнения запросов.

  • Корреляция событий: Используйте session_id для связывания связанных событий (запросов и ответов)

  • Отслеживание паттернов: Следите за необычными паттернами доступа или подозрительной активностью

  • Регулярный экспорт: Храните резервные копии журналов аудита вне системы вебхуков.

Вопросы безопасности

  • Защита URL-адресов вебхуков: храните URL-адрес вебхука и токен аутентификации в тайне

  • Меняйте токены: периодически меняйте токены аутентификации

  • Мониторинг сбоев вебхуков: Отслеживайте неудачные доставки, чтобы выявлять проблемы с конечными точками.

  • Проверка IP-источников: Рекомендуется проверять, что запросы вебхуков поступают из IP-диапазонов Perplexity.

  • Обработка персональных данных: Журналы аудита содержат адреса электронной почты и IP-адреса пользователей — обращайтесь с ними в соответствии с вашей политикой конфиденциальности.

Часто задаваемые вопросы

Могу ли я использовать эту функцию, если в моей организации меньше 50 мест?

Если в вашей организации менее 50 мест, вы можете повысить хотя бы одно место до Enterprise Max, чтобы получить доступ к журналам аудита для вашей организации.

Я активировал(-а) функцию по ошибке, и с меня списали деньги за дополнительные места. Что мне делать?

Если вы случайно активировали Audit Logs и не готовы перейти на тариф с 50+ местами, мы можем скорректировать выставление счетов для вашей учетной записи и отменить любые дополнительные списания или платежи. Убедитесь, что вы отключили эту функцию, и свяжитесь с нами.

2. Введите URL-адрес вебхука и нажмите Сохранить.

3. Для дополнительной безопасности вы можете задать заголовок авторизации, который будет использоваться для аутентификации всех запросов к URL-адресу вашего вебхука. Если вы не укажете схему авторизации, введенное значение будет отправлено как токен Bearer.

Примеры полезных данных JSON для событий журнала аудита

/* Запрос */
{
event_type: "query"
timestamp: 2025-02-20T09:05:31
user_email: "john@perplexity.ai"
ip_address: "162.229.229.229"
user_agent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36"
metadata: {
query: "Каковы результаты нашего последнего отчета по пентесту?"
}
}

/* Загрузка файла */
{
event_type: "file_upload"
timestamp: 2025-02-20T09:05:31
user_email: "john@perplexity.ai"
ip_address: "162.229.229.229"
user_agent: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36"
metadata: {
file_name: "soc2_report.pdf"
file_uuid: "XXXXX"
space_name: "Security Reports"
space_uuid: "YYYYY"
}
}

Часто задаваемые вопросы

Могу ли я использовать эту функцию, если в моей организации меньше 50 мест?

Если в вашей организации меньше 50 мест, вы можете повысить как минимум одно место до Enterprise Max, чтобы получить доступ к журналам аудита для вашей организации.

Я активировал(-а) функцию по ошибке, и с меня списали деньги за дополнительные места.

Если вы активировали журналы аудита по ошибке и не готовы перейти на тарифный план с 50+ местами, мы можем скорректировать выставление счетов для вашей учетной записи и отменить любые дополнительные списания или платежи. Убедитесь, что вы отключили эту функцию, и свяжитесь с нами.

Включение журналов аудита
Аутентификация вебхука
Доставка вебхуков
Формат запроса
Заголовок аутентификации
Обработка ответов
Схема журнала аудита
Типы событий
Примеры полезных данных
Форматирование для конкретной платформы
Типичные сценарии
Отслеживание пользовательских исследовательских сессий
Мониторинг доступа к файлам
Аудит изменений конфигурации
Рекомендации
Реализация конечной точки вебхука
Хранение и анализ данных
Вопросы безопасности
Часто задаваемые вопросы
Могу ли я использовать эту функцию, если в моей организации меньше 50 мест?
Я активировал(-а) функцию по ошибке, и с меня списали деньги за дополнительные места. Что мне делать?
Часто задаваемые вопросы
Могу ли я использовать эту функцию, если в моей организации меньше 50 мест?
Я активировал(-а) функцию по ошибке, и с меня списали деньги за дополнительные места.