Сервис единого входа (SSO) по OpenID Connect с многофакторной аутентификацией, корпоративным каталогом, ролями и журналом аудита. Вы устанавливаете его на свои серверы: учётные записи, сессии и журнал хранятся в вашей базе.
Установка из готового комплекта в Docker, Docker Compose, Docker Swarm или на виртуальной машине. Пользователи, роли, приложения, корпоративный каталог и журнал аудита настраиваются в панели администратора; доступ администратора при необходимости восстанавливается командой на сервере.
Разработчикам
Стандартный OpenID Connect: Discovery, Authorization Code с PKCE, обновление токенов и client_credentials для сервисов. Бэкенды проверяют токены у себя по ключам JWKS и не обращаются к Zentro на каждый запрос.
Бизнесу и ИБ
Сотрудники входят один раз во все приложения организации, по умолчанию администраторы работают только со вторым фактором, действия записываются в журнал. Zentro Identity работает на ваших серверах: учётные записи, сессии и журнал хранятся в вашей базе.
Возможности Zentro Identity
БизнесКорпоративный Метки показывают, с какого варианта лицензии доступна функция. Подробнее — в разделе «Тарифы». Тарифы →
Вход и сессии
Вход по логину или подтверждённой почте, политика паролей, блокировка после неудачных попыток.
Один вход во все приложения организации; выход может завершать сессию только в приложении, на устройстве или везде.
Пользователь видит свои входы и приложения под ними и может завершить любой из них.
Самостоятельная регистрация с подтверждением почты включается и выключается в настройках.
Журнал «кто что сделал» с поиском по учётной записи, операции, результату, IP и периоду.
Записи связаны цепочкой хешей; проверка целостности — в панели.Корпоративный
Согласия, выгрузка своих данных и удаление аккаунта — в личном кабинете.
Логины и почту можно хранить в базе в зашифрованном виде: в рабочем режиме шифрование включается с первой записи на новой базе, выключить его потом нельзя.
Zentro Identity — провайдер OpenID Connect. Приложение берёт все адреса из Discovery, а токены проверяет само по ключам JWKS. Всё, что делают панель и личный кабинет, доступно и через API (OpenAPI, Swagger на /docs): можно сделать свою панель администратора, форму входа или кабинет пользователя поверх API, не меняя сервер.
Сценарий
Что поддерживается
Вход пользователей
OpenID Connect, Authorization Code с PKCE (S256, обязателен для всех приложений), обновление токенов с ротацией
Для популярных систем есть пошаговые инструкции. Любое другое приложение с OpenID Connect (Authorization Code + PKCE S256) подключается по общему сценарию.
для рабочей установки — HashiCorp Vault: подпись токенов, ключи шифрования персональных данных, сертификаты для внутренних сервисов. Для личного стенда или пилота можно без него: ключи хранятся файлом на диске сервера, это менее безопасно.
TLS-прокси
например, nginx с настоящим HTTPS-сертификатом: сервис отдаёт HTTP, HTTPS обеспечивает прокси. Без HTTPS не работают ключи доступа (passkey). Готовый конфиг есть в комплекте.
Почтовый сервер (SMTP)
без него не уходят письма подтверждения почты и сброса пароля.
Redis
только если экземпляров сервиса больше одного. Брокер событий Kafka не обязателен.
Окружение
для виртуальной машины — любой Linux с systemd, для Docker — любой Linux с Docker 24+ и Docker Compose v2; Ubuntu 24.04 LTS и Debian 12 — рекомендация, а не требование. Точное время (NTP) обязательно: от него зависят коды второго фактора и сроки токенов.
Адреса
три поддомена одного вашего домена: Identity и личный кабинет доступны пользователям, панель администратора — только из внутренней сети или VPN.
Резервные копии
базы и ключей ежедневно и на другую площадку: без ключей резервная копия базы бесполезна.
Размер сервера
Профиль
Сервер
Личный стенд или пилот: до 10 человек
2 vCPU · 4 ГБ RAM · 40–60 ГБ SSD, один сервер
Малая организация: до 200 сотрудников и до 10 000 внешних пользователей
Обновляет и откатывает администратор установки сам, на своём сервере: вендор удалённо ничего не делает.
Обновление одной командой (Docker Compose и виртуальная машина): скрипт проверяет подпись вендора и контрольные суммы, проверяет совместимость базы, делает резервную копию и запускает новую версию. При сбое миграций запускается прежняя версия. В Docker Swarm обновление выполняется по шагам из инструкции.
Откат на прежнюю версию: без восстановления базы — только если обновление не меняло её схему; если схема менялась, откат возможен только с базой из резервной копии, и всё, что изменилось после неё, теряется.
Панель показывает установленную версию, совместимость схемы базы и историю обновлений.
Безопасность и приватность
Данные в вашей базе
Учётные записи, сессии и журнал хранятся в вашей базе PostgreSQL. Ключи подписи токенов и шифрования персональных данных можно держать во внешнем хранилище секретов.
Шифрование персональных данных
Логины и почту можно хранить в базе в зашифрованном виде, с отдельным ключом для каждого пользователя: в рабочем режиме шифрование включается с первой записи на новой базе, выключить его потом нельзя. Пароли и резервные коды хранятся только в виде хеша argon2id.
Второй фактор для администраторов
По умолчанию без второго фактора панель администратора не открывается (порог настраивается). Для опасных операций порог можно поднять до входа только по ключу доступа (passkey; регистрация passkey — с тарифа Бизнес).
Журнал только на добавление
В рабочей установке сервис может только добавлять записи: изменить записи не позволяют права базы, а старые удаляются только по сроку хранения из настроек (приложение работает под отдельной ролью БД, как в рабочем комплекте). В Корпоративном тарифе записи связаны цепочкой хешей, и целостность проверяется в панели.
Панель отдельно от кабинета
Личный кабинет открыт пользователям, а панель администратора рекомендуется держать во внутренней сети или за VPN. Через кабинет запросы к административному API не проходят.
Защита от перебора и подмены адреса
Ограничение частоты запросов, блокировка после неудачных попыток входа, реальный IP только от доверенных прокси. В рабочем режиме сервис проверяет конфигурацию при запуске и не стартует с ошибками.
Права пользователя на свои данные
Согласия, выгрузка всех данных о себе (файлом JSON) и удаление аккаунта — в личном кабинете. После удаления данные становятся нечитаемыми, затем стираются окончательно в сроки, заданные в настройках.
Варианты лицензии
Состав возможностей зависит от лицензии. Вход, второй фактор и уже заведённые пользователи от неё не зависят никогда; без ключа действует бесплатный тариф. Подробно о вариантах лицензии — в разделе «Тарифы».
Лицензия проверяется на вашем сервере; если установка подключена к серверу лицензий (ключ или бесплатная регистрация), раз в час она сверяется с сервером. Без ключа и регистрации к вендору она не обращается. Что при этом передаётся и как работать в закрытом контуре — в разделе «Сверка лицензии».
Сверка лицензии и работа без связи
Что передаётся
Если установка подключена к серверу лицензий (ключ или бесплатная регистрация), раз в час она сверяет лицензию с сервером Zentro. Передаются идентификатор установки, токен лицензии, версия и счётчики использования (например, число учётных записей); при активации дополнительно имя хоста.
Что не передаётся
Учётные записи и почта пользователей, пароли, сессии и журнал аудита. При регистрации — только указанные вами название организации и контактная почта. Без ключа и регистрации установка к вендору не обращается.
Без связи
Лицензия проверяется на вашем сервере и без связи работает в течение срока, указанного в лицензии. После окончания срока вход, второй фактор, пользователи и уже подключённые приложения и каталоги продолжают работать. Действуют лимиты бесплатного тарифа: новые учётные записи, приложения и каталоги сверх них не создаются. Функции Корпоративного (цепочка аудита, SIEM, согласования «двух пар глаз») приостанавливаются до продления.
Закрытый контур
Для установок без доступа в интернет есть активация без связи: вы передаёте менеджеру идентификатор установки и применяете в панели подписанный токен лицензии. Новые версии в этом случае вендор передаёт архивом, обновление выполняется тем же скриптом.
Вопросы и ответы
Где хранятся данные?
Zentro Identity работает на ваших серверах: учётные записи, сессии и журнал хранятся в вашей базе PostgreSQL. Ключи подписи и шифрования персональных данных хранятся в хранилище секретов (HashiCorp Vault) или, для пилота, на диске сервера.
Что передаётся вендору?
Только если установка подключена к серверу лицензий (ключ или бесплатная регистрация): раз в час при сверке — идентификатор установки, токен лицензии, версия и счётчики использования; при активации ещё имя хоста. Учётные записи и почта пользователей, пароли, сессии и журнал аудита не передаются. При регистрации — только указанные вами название организации и контактная почта. Без ключа и регистрации установка к вендору не обращается.
Работает ли Zentro Identity без интернета?
Да. Бесплатный тариф не обращается к вендору. Платная лицензия без связи действует срок, указанный в лицензии; в закрытом контуре её продлевают, вставляя подписанный токен в панели.
Как обновлять и откатывать версии?
Обновляет администратор установки сам одной командой: скрипт проверяет подпись вендора, делает резервную копию базы и при сбое возвращает прежнюю версию. Откат на прежнюю версию без восстановления базы возможен, только если обновление не меняло её схему; иначе — с базой из резервной копии. В Docker Swarm обновление выполняется по шагам из инструкции, одной команды нет.
Какие протоколы поддерживаются?
OpenID Connect и OAuth 2.0: Authorization Code с PKCE (S256), обновление токенов, client_credentials, Discovery, JWKS, отзыв и интроспекция токенов, единый выход. SAML 2.0 и SCIM 2.0 появятся в следующих версиях.
Как подключить приложение без поддержки SSO?
Перед ним ставится шлюз (oauth2-proxy): он пускает к приложению только тех, кто вошёл в Zentro и у кого есть нужная роль. Собственный вход приложения при этом остаётся, а прямой доступ в обход шлюза нужно закрыть на уровне сети.
Как подключить корпоративный каталог?
В панели администратора добавляется внешний провайдер: Active Directory, LDAP, Keycloak или корпоративный OIDC-провайдер. Учётная запись в Zentro может создаваться при первом входе, а права выдаются ролями Zentro.
Какие способы развёртывания есть?
Docker, Docker Compose, Docker Swarm или виртуальная машина с systemd, на серверах linux/amd64 и linux/arm64.
Как устроена работа с персональными данными?
В личном кабинете пользователь управляет согласиями, выгружает копию своих данных (файлом JSON) и удаляет аккаунт. После удаления данные становятся нечитаемыми, а затем стираются окончательно в сроки из настроек; логины и почту можно хранить в базе в зашифрованном виде.
Что будет, если лицензия закончится?
Вход, второй фактор, пользователи и уже подключённые приложения и каталоги продолжают работать. Действуют лимиты бесплатного тарифа: новые учётные записи, приложения и каталоги сверх них не создаются. Функции Корпоративного (цепочка аудита, SIEM, согласования «двух пар глаз») приостанавливаются до продления.
Установите Zentro Identity на свой сервер
Начните с требований к серверу и инструкции по установке. Если нужна помощь с выбором конфигурации или лицензией, напишите нам.