Перейти к содержимому

Глоссарий

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

Когда с аккаунтом беда, полезен ровно один вопрос: чья рука это сделала и откуда. На него отвечает запись, сделанная в момент действия, а память и переписка в чате на него не отвечают.

Журнал действий это запись о том, кто и что сделал в аккаунте, которая ведётся по ходу дела и только дописывается.

Что попадает в запись

События пишутся там, где происходят, а не собираются потом, поэтому строка есть и тогда, когда на экран никто не смотрел.

  • Входы и адрес входа

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

  • Профили

    Заведены, поправлены, открыты, закрыты, отправлены в корзину и возвращены, с тем именем, какое профиль носил в тот день.

  • Адреса

    Заведены, поправлены, снесены и проверены. Взятие рабочего пароля для запуска это отдельная строка.

  • Люди и деньги

    Приглашения, вступления, смены ступени, выдача папок, исключения, смены тарифа и решения по сроку доступа, принятые руками поддержки.

  • Ключи и машины

    Ключ выдан или отозван, машина привязана или отвязана, второй шаг входа включён или снят.

Три вида на одни и те же строки

Хранилище одно, а читается тремя способами, потому что и вопросов к нему задают три разных.

  1. 1

    Всё подряд

    Целое пространство по порядку, от свежего к старому, и вместо внутреннего номера стоит почта человека.

  2. 2

    Запуски

    Только открытия и закрытия окон браузера: вид для вопроса о том, кто и когда работал.

  3. 3

    Адреса и страны

    Входы и привязки машин с адресом, страной и именем машины, с которой это сделали.

Чего в строке нет

Запись, несущая в себе секреты, становится самым удобным местом, чтобы их украсть, поэтому в строке лежит факт, а не значение.

Правка называет поля, которые изменились. Заметки, метки и пароли пишутся одним фактом правки, без значения за ним, а адрес пишется без логина и пароля.

История принадлежит пространству

Владелец пространства пишется в саму строку в момент события, а не вычисляется потом по тому, кто сегодня числится в команде.

Поэтому исключение человека оставляет его историю на месте, а ушедший перестаёт видеть пространство, из которого ушёл.

Когда запись предупреждает

Те же строки читают три правила, которые ищут приметы, идущие перед потерей аккаунта.

  • Вход из новой страны

    Либо человек уехал, либо его пароль у чужого, и то и другое стоит увидеть в тот же день, а не через неделю.

  • Кластер на одном адресе

    Несколько профилей с одним выходом, и неважно, взят он из общей библиотеки или вписан в каждый профиль руками.

  • Залп запусков

    Череда открытий в одну минуту читается площадкой как один сценарий, стоящий за всеми сразу.

С чем это путают

  • История посещений внутри профиля

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

  • Корзина

    Корзина возвращает удалённый профиль обратно. Запись отвечает, кто его туда отправил и когда, и несёт имя, которое профиль носил в тот день.

  • Поток событий на чужой сервер

    Те же события можно отправлять на свой адрес по ходу дела. Такой поток это уходящая копия, а запись в любом случае остаётся здесь.

Чего это не делает

  • Это не хранилище с защитой от подделки. Строки лежат в той же базе, что и всё остальное, без цепочки подписей и без носителя, на который пишут один раз.
  • Это не отбор по условиям. Вид пространства листается от свежей строки к старым, а поиск идёт по той странице, что у вас перед глазами, а не по всей истории.
  • Это открыто не каждому. Историю пространства читает администратор или владелец, а управляющему и оператору эта дверь не открывается вовсе.
  • Это не записывает читателей. Взятие рабочего пароля от адреса оставляет строку, а открытие самой истории не оставляет ничего.

Проверить

И сама запись, и её границы это файлы, которые можно открыть.

Все имена событий, какие продукт пишет, одним списком
apps/server/src/common/audit/audit.service.ts
Чтение истории пространства начинается с администратора
apps/server/src/logs/logs.controller.ts
Пароль от адреса в строку не попадает, а взятие его попадает
apps/server/test/audit-filters.js · apps/server/test/proxy-secret.js
Три предупреждения это чистый расчёт по уже накопленным строкам
apps/server/src/logs/suspicion.ts · apps/server/test/подозрительная-активность.js

Вопросы

Сколько строки хранятся?
Срока нет. Ничто в программе не подрезает старые строки и не предлагает строку поправить или удалить.
Видны ли в записи пароли?
Нет. Пишется сам факт смены пароля, а значение не пишется, и то же правило держится для пароля адреса, взятого на запуск.
Видно ли, человек это сделал или программа?
Да. Если запрос пришёл с ключом для программ, номер этого ключа записывается в строку рядом с человеком.
Что видит исключённый сотрудник?
Из пространства ничего. Его строки остаются читаемыми владельцу, а нужны они как раз в такие дни.
Можно ли выгрузить историю?
Отдельным файлом нет. Её читают в программе и в кабинете постранично или запросом извне, ключом, которому чтение истории разрешено.

Посмотрите свою историю

Запись читается внутри программы и в кабинете, от свежей строки к старым.