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

Настройки, бренд, аудит, лицензия и система

Инструкция для администратора Zentro: что настраивается в разделах Настройки, Аудит, Лицензия и Система и что стоит проверить после установки.

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

  • Сохранить — нужен подтверждённый вход (панель попросит второй фактор) и право IDENTITY:SETTINGS:MANAGE.
  • Сбросить — вернуть значение по умолчанию. Изменённые отмечены «изменено».
  • «после рестарта» — такие настройки применятся, только когда перезапустят Identity. Панель скажет об этом при сохранении; перезапуск — к тем, кто обслуживает сервер.
  • Если настройку одновременно поменял другой администратор, сохранение откажет — обновите страницу и повторите.

Личные настройки панели (язык, часовой пояс, тема, плотность) — отдельно: в шапке, «Язык и время»; они только в вашем браузере.

Настройки → Почта → «Настроить» — сервер, через который Zentro отправляет письма: подтверждение адреса, сброс пароля, коды входа. Если почта не настроена, в настройках это видно красным: письма не уходят, и сбросить забытый пароль пользователи не смогут.

  1. Возьмите у почтового провайдера параметры SMTP: сервер, шифрование (SSL/TLS — порт 465 или STARTTLS — порт 587), логин (обычно полный адрес ящика) и пароль. У Яндекса, Gmail, Mail.ru нужен пароль приложения, а не пароль от ящика.

  2. Отправитель — адрес, от которого придут письма: no-reply@example.ru или Компания <no-reply@example.ru>. Обычно это тот же ящик, что и логин — иначе сервер письмо не примет.

  3. «Проверить подключение» — проверяет форму до сохранения. Если не прошло, панель скажет, на каком шаге:

    Сообщение Что сделать
    Сервер недоступен Проверить адрес и порт; серверу Zentro нужен выход к почтовому серверу
    Не совпало шифрование 465 — SSL/TLS, 587 — STARTTLS; порт оставьте пустым — подставится сам
    Сервер не принял логин или пароль Пароль приложения вместо пароля ящика
    Сервер не принял письмо Отправитель — не адрес этого ящика, или получатель отклонён
  4. «Тестовое письмо» — отправить себе и проверить ящик (и «Спам»).

  5. «Сохранить» — действует сразу, без перезапуска. Нужен второй фактор.

  • Пароль панель не показывает никогда: «Сохранён» — оставьте поле пустым, чтобы не менять; «Убрать» — удалить сохранённый.
  • Почта из настроек сервера. Если её задали при установке (переменные SMTP_*), экран так и скажет. Сохранили форму — дальше действуют параметры из панели; пароль из настроек сервера в панель не переносится, введите его. «Вернуть настройки сервера» — удалить параметры панели.
  • «Отправлять письма» — снять, чтобы временно остановить отправку, не теряя параметров.

Самое важное — группа Безопасность:

Настройка По умолчанию Что решает
security.password_min_length 12 Минимальная длина пароля (не ниже 8) — для регистрации, смены, сброса и создания администратором
security.self_registration_enabled вкл. Могут ли люди регистрироваться сами («Нет аккаунта? Создать»). Выкл. — учётки заводит только администратор или внешний IdP
security.admin_min_aal AAL2 Уровень входа для всей панели. AAL3 — вся панель только с ключом (passkey). После рестарта
security.privileged_min_aal AAL2 Уровень для опасных операций (сброс паролей и факторов, роли, настройки, безвозвратное удаление). AAL3 — только ключом. Не выставится, если у вас самого нет ключа
security.trusted_device_ttl 720h (30 дней) Сколько устройство, отмеченное доверенным, пускает без второго фактора
security.pending_registration_ttl 168h (7 дней) Через сколько удаляется самостоятельная регистрация без подтверждённой почты
security.email_change_requires_confirmation вкл. Смена почты — только через ссылку на новый адрес
security.pii_encryption_at_rest выкл. Шифровать логины и почту в базе. Включить можно, выключить потом — нет. Поиск по части слова станет приблизительным, сортировки по логину и почте не будет
security.user_hard_delete.* 1 одобрение, IDENTITY_ADMIN Согласования на безвозвратное удаление — Роли и права
security.user_rate_limit_by_role пусто Квоты по ролям — Роли и права
security.client_secret_hash sha256 Как хранить секреты приложений. argon2id — только по требованию регламента: каждое обращение приложения станет стоить ~0.1 с процессора. Сервис и приложение могут переопределить — Выбор настроек
security.rate_limit_*, *_throttle_* — Лимиты запросов и частоты писем/кодов. Трогать, если легитимные пользователи в них упираются

Сколько живут вход и токены, задаёт только Identity: панель, кабинет и подключённые приложения берут сроки из его ответов. Все настройки ниже действуют без перезапуска. Формат — 15m, 12h, 720h (минуты, часы).

Вход в Identity (панель, личный кабинет, единый вход для приложений):

Настройка По умолчанию Что решает
security.session_idle_timeout 12h Сколько вход живёт без действий пользователя. Дольше — вход завершается, нужен новый. От 5 минут до 30 дней, не больше предела
security.session_max_lifetime 720h (30 дней) Предел от момента входа, как бы активно ни пользовались. Не меньше простоя
security.session_persistent вкл. Вход переживает закрытие браузера. Выкл. — после закрытия браузера нужно войти заново

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

Токены и сессии приложений — значения по умолчанию; сервис и приложение могут задать свои (Подключение сервиса, Подключение приложения):

Настройка По умолчанию Что решает
security.access_token_ttl 15m Срок токена доступа: и для входа в панель и кабинет, и для приложений. От 1 минуты до 24 часов
security.refresh_idle_timeout 720h (30 дней) Сколько сессия приложения живёт, если приложение не обновляет токены
security.refresh_max_lifetime 0 Предел сессии приложения от входа. 0 — без предела: сессия живёт, пока приложение обновляет токены; иначе не меньше 5 минут

Чем длиннее срок токена доступа, тем дольше API, которые проверяют токен у себя, пускают по нему после отзыва роли или выхода пользователя. Новый срок применяется к следующим выданным токенам; сессии приложений получают новый простой и предел при ближайшем обновлении токенов.

Группа Оформление:

  • ui.brand_name — имя, которое видят пользователи: шапка, заголовок вкладки, письма, имя при установке панели на рабочий стол.
  • Картинки бренда — «Загрузить…»: логотип, логотип для тёмной темы (необязателен), иконка вкладки. До 512 КБ. Файл хранится у Identity и отдаётся с вашего адреса. «Убрать» — вернуть знак по умолчанию.
  • ui.asset_allowed_hosts — если логотип должен браться с внешнего адреса (https://cdn…), а не загружаться: хост сюда и в CSP_IMG_HOSTS фронта (Установка панели и кабинета), иначе браузер его не покажет.

Группа с ключами oidc.* — срок запроса на вход, что завершает выход из приложения (только его, всё на этом устройстве или везде), внутренние сети для уведомлений о выходе; cors.* — для приложений целиком в браузере. Подробно — Единый вход, шаг 2.

Настройка По умолчанию Что решает
privacy.erasure_crypto_shred_after 720h (30 дней) Через сколько после удаления аккаунта по просьбе человека его данные становятся нечитаемыми
privacy.erasure_hard_delete_after 8760h (год) Через сколько затем стираются окончательно
privacy.sar_bundle_ttl 72h Сколько доступна подготовленная выгрузка данных
privacy.consent_text_version.* 1 Версия текста согласий (маркетинг, аналитика, cookie). Поменяли текст — поднимите версию: пользователи увидят, что их согласие дано на старый текст

Все действия пишутся в журнал. Аудит открывается журналом — кто что сделал; целостность и удержания — ссылкой «Целостность журнала и удержания» справа вверху.

Право IDENTITY:AUDIT:VIEW (роли аудитора и администратора). Новые записи сверху, «Показать ещё» — следующие. Общего числа записей и номеров страниц нет: журнал большой.

  • Строка: время (ссылка на запись), операция (identity.auth.login и т. п.; отказ — красной меткой с причиной), кто (учётка — ссылкой на карточку; «система» — фоновые процессы; «сервис» — машинный клиент), над кем / чем, IP. Удалённая учётка — «(удалена)», после стирания по GDPR — только id.
  • Учётная запись — введите логин или почту и «Найти»: покажется всё по учётке (что делала она и что делали с ней). Похожих несколько — выберите. Из строки — «всё по учётке»; из карточки пользователя — «Журнал аудита по учётке».
  • Операция — одна или целая группа (identity.auth.* — все входы и выходы). Результат, кто действовал, IP или подсеть (10.0.0.0/8), период с — по (включительно).
  • Фильтр — в адресе страницы: ссылкой на отфильтрованный журнал можно поделиться. Запись по ссылке — кнопка «Скопировать ссылку на запись» на её странице.
  • Тарифом журнал не ограничен; подписанная цепочка, удержания и SIEM — Корпоративный.

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

Целостность цепочки — «журнал не подделан?»

Заголовок раздела «Целостность цепочки — «журнал не подделан?»»

Каждая запись связана с предыдущей хешем: исправить или удалить запись задним числом незаметно нельзя — связь порвётся. Проверка идёт сама при открытии экрана; «Проверить заново» — повторить.

Что видно Что значит Что делать
«Цепочка цела» Расхождений нет Ничего
«ещё не построена» Новые записи пока не связаны Подождать минуту (связывает сервис) или «Достроить цепочку»
«нарушена» Журнал меняли в обход системы, например прямо в базе Это инцидент: базу не трогать, разбирать по номеру записи из отчёта

Рядом — подписан ли якорь и до какой записи: подпись доказывает, что записи существовали на момент подписи.

Сервис сам связывает новые записи каждую минуту и подписывает конец цепочки раз в час (если у Identity есть Vault Transit). Кнопки — для случаев, когда ждать нельзя:

  • «Достроить цепочку» — связать новые записи сейчас: проверка пишет «ещё не построена», а отчёт нужен немедленно;
  • «Подписать голову» — заверить журнал на текущий момент ключом из Vault: в начале расследования, перед выгрузкой для аудитора. После подписи журнал нельзя подменить целиком даже с доступом к базе. Без Vault Transit панель так и скажет.

Обе операции требуют подтверждения личности. Раздел виден только с правом IDENTITY:AUDIT:ANCHOR.

Юридические удержания — «не удалять, пока разбираемся»

Заголовок раздела «Юридические удержания — «не удалять, пока разбираемся»»

Журнал хранится ограниченный срок, старые записи удаляются. Удержание запрещает удалять записи за указанный период. Ставьте его, как только юристы, регулятор или служба безопасности попросили сохранить данные (проверка, судебное дело, расследование): «Поставить удержание» — основание и период; «Снять» — когда основание отпало. Список виден аудитору; ставить и снимать — с правом IDENTITY:AUDIT:HOLD и подтверждением личности.

Выборочный аудит (группа Аудит в настройках) — не писать рутинные события сервисных учёток и ролей, чтобы журнал не рос зря. Выключен по умолчанию (audit.selective_enabled). Вход, второй фактор, роли, смена настроек, удаления пишутся всегда — панель показывает этот список «Что пишется всегда»; сократить его нельзя.

Лицензия — тариф установки. Вход, второй фактор и уже заведённые пользователи от неё не зависят никогда: без лицензии перестаёт создаваться только новое платное (passkey, внешние IdP, бренд, подписанный аудит, SIEM, приложения и учётки сверх лимитов). Без ключа действует встроенный бесплатный тариф: 50 учётных записей, 2 приложения со входом через Zentro, 10 машинных клиентов.

Состояние Что значит Что сделать
лицензия действует Всё в порядке —
льготный период Оплата истекла, платное ещё работает (до даты в плашке) Продлить договор у менеджера
истекла Действует бесплатный тариф; настроенное работает, новое платное — нет К менеджеру
без лицензии Ключ не введён — бесплатный тариф Ввести ключ
отключена / отозвана вендором Платное выключил вендор; вход и пользователи работают К менеджеру (контакт — в плашке)
установка отвязана Отвязали от договора (переезд сервера) Ввести ключ заново
  • «Ввести ключ» — ключ активации выдаёт менеджер вендора по договору. Серверу нужен выход к серверу лицензий; дальше установка сама сверяется раз в час — продление и смена тарифа приходят без вас. «Сверить сейчас» — не ждать часа (например, сразу после оплаты).
    • «Это тестовый стенд» — отметьте для непродуктовой установки: она займёт непрод-место по договору, на экране входа появится «Тестовая установка». Не отмечено — тип места выберет вендор (прод, если свободно).
    • «Принимаю лицензионную политику vN» — если вендор её ведёт, без галочки ключ не отправить; «Прочитать» открывает текст. Принятая версия видна в карточке лицензии. «Вендор обновил лицензионную политику» — прочитайте новую версию и отметьте согласие заново.
  • «Бесплатная регистрация» — бесплатный тариф без ключа, у вендора (та же галочка политики). Если у организации у вендора уже платный договор — регистрация попросит ввести ключ.
  • Ручная вставка — для закрытых контуров: передать менеджеру ID установки (кнопка «Копировать» рядом), получить подписанный токен и «Применить токен».
  • «Отвязать» — при переезде сервера: место по договору освобождается, установка переходит на бесплатный тариф. На новом сервере — ввести тот же ключ.
  • Использование тарифа — полосы «занято из лимита». Превышение работу не останавливает: учётные записи перестают создаваться только сверх лимита на 10%. Плашка «Превышен лимит» — повод обратиться к менеджеру.
  • «Нет связи с сервером лицензий» — пока лицензия действует, ничего не меняется; проверьте выход сервера наружу.
  • «Режим наблюдения» — менеджер временно отключил блокировки тарифа: платное без права проходит, только отмечается.
  • «Тестовая установка» — место по договору непродуктовое; та же пометка — на экране входа.

Где тариф не пустит, панель предупредит заранее — у формы создания приложения, пользователя, внешнего входа, бренда, SIEM и подписанного аудита: «„Брендирование“ входит в тариф Бизнес» или «лимит исчерпан: 2 из 2» со ссылкой на Лицензию. Кнопка при этом остаётся — решает сервер (в режиме наблюдения он пропустит).

Если всё же нажали, панель скажет прямо: «„Брендирование“ входит в тариф Бизнес» или «Лимит тарифа „Учётные записи“: использовано 50 из 50». Подробности — на экране Лицензия.

Система — версия Identity, обновления и состояние установки. Только просмотр (право IDENTITY:SETTINGS:VIEW).

Версия и обновления

  • «Доступна версия X» — вендор выпустил новую; «Что нового» — описание. Сведения приходят со сверкой лицензии; без связи с сервером лицензий блока нет.
  • «Схема базы отстаёт от версии» — сервер обновили, а миграции не применили: часть возможностей может не работать. На сервере: identity-migrate up или скрипт обновления.
  • Команды — проверить совместимость, обновить, откатить — выполняются на сервере Identity, из панели их не запустить; «Копировать» рядом с каждой. Подробно — Установка сервера поставки Identity.
  • Откуда взять новую версию — скрипт скачивает её с сайта Zentro сам (upgrade.sh --latest), проверяя подпись вендора, и обновляет заодно панель и кабинет. Без интернета на сервере — архив с сайта, скачанный на другом компьютере: upgrade.sh <архив>. Команда «Обновить» на экране уже подставлена.
  • История установки — когда ставили, обновляли и откатывали, со схемой до и после.

Диагностика — состояние компонентов на этот момент: база (и реплика), подпись токенов, кэш, почта, очередь событий, фоновые задачи (воркер), лицензия. «Требует внимания» — работает с оговоркой (подробность в строке), «не работает» — разбираться, «не настроено» — компонент не используется, это не ошибка. Ниже — изменённые настройки и последние ошибки сервера.

  • Очередь событий «не настроено» — очередь событий для других сервисов не подключена; для работы Identity она не нужна, это не ошибка. Отправку аудита в SIEM без очереди событий включить нельзя — настройка откажет с этим пояснением.
  • Фоновые задачи «не работает» — не запущен identity-worker: не чистятся старые записи, не строится цепочка аудита, не уходят уведомления о выходе. «Требует внимания» — часть задач не идёт, какие — в строке, причина — в логах воркера.
  • «Скачать для поддержки» — файл с этим отчётом; отправьте его вендору при обращении. Секретов в нём нет.
  1. Почта: настроена, тестовое письмо дошло.
  2. Безопасность: длина пароля, нужна ли самостоятельная регистрация, пороги уровня входа, сроки входа и токенов (по умолчанию: вход — 12 часов без действий, токен доступа — 15 минут).
  3. Оформление: имя бренда, логотип, иконка.
  4. Аудит → Целостность журнала и удержания: «Проверить заново» — цепочка цела или построена.
  5. Лицензия: ключ введён, статус «лицензия действует», сверка проходит.
  6. Приватность — если меняли тексты согласий, подняли версии.
  7. Система: диагностика без «не работает», схема базы актуальна.
Что видно Причина Что сделать
Сохранил, а не работает Настройка «после рестарта» Перезапустить Identity
Пользователи часто входят заново Короткий security.session_idle_timeout Увеличить простой (не больше предела)
Не сохраняется простой входа Он больше security.session_max_lifetime Сначала увеличить предел
Не приходят письма сброса пароля и подтверждения Почта не настроена или отправка выключена Настройки → Почта: настроить, «Тестовое письмо»
«Сохранение прервано: без подтверждения личности настройки не меняются» Отменили подтверждение Сохранить снова и подтвердить
Не даёт поставить privileged_min_aal = AAL3 У вас нет ключа (passkey) — вы бы заперли себя Завести passkey (Личный кабинет → Безопасность)
«Картинка больше 512 КБ» Размер Уменьшить и загрузить снова
Логотип с внешнего адреса не показывается Хоста нет в ui.asset_allowed_hosts или в CSP_IMG_HOSTS фронта Добавить в оба места
«Подписывать якорь нечем» Нет Vault Transit у Identity Вопрос к администратору инфраструктуры
«Цепочка нарушена» Записи журнала меняли напрямую в базе Инцидент безопасности: не трогать базу, разбирать по номеру записи из отчёта