Версия 1.7.1 — 2026-07-30
Мультифактор (Multifactor) остаётся обязательным только для админских учётных записей. Обычные пользователи (медсёстры) входят без второго фактора — быстрее и без телефона в руках.
Как работает
Раньше все входы шли через LDAP-прокси Мультифактора: bind → пуш «Подтвердите вход» → ожидание подтверждения. Теперь при вводе логина система смотрит на роли учётной записи:
- Админские роли (
super-admin,Admin+ добавленные черезMFA_REQUIRED_ROLES) — вход по-прежнему через Мультифактор, с подтверждением. - Все остальные — прямой bind в контроллер домена (
LDAP_DIRECT_HOST), второй фактор не запрашивается. - Неизвестный логин (учётки ещё нет в локальной БД — первый вход) — безопасный дефолт: через Мультифактор.
Реализация: app/Ldap/MfaConnectionSelector.php (выбор LDAP-соединения на этапе AuthPipeline), второе подключение direct в config/ldap.php.
Включение на проде
Фича выключена по умолчанию: пока LDAP_DIRECT_HOST не задан, все входы идут через Мультифактор, как раньше.
LDAP_DIRECT_HOST=<адрес контроллера домена напрямую, минуя прокси Мультифактора>
LDAP_DIRECT_PORT=636 # если отличается от LDAP_PORT
LDAP_DIRECT_SSL=true # если отличается от LDAP_SSL
MFA_REQUIRED_ROLES= # доп. роли с обязательным MFA, через запятую
После правки env — php artisan config:cache.
Если Мультифактор в вашей инсталляции навешан не через LDAP-прокси (например, политиками на стороне сервиса) — отключение для неадминов настраивается в админке Мультифактора, приложение к этому готово.
Технические детали
- Версия в
config/journals.php:1.7.0 → 1.7.1. - Новые файлы:
app/Ldap/MfaConnectionSelector.php, тестыtests/Unit/MfaConnectionSelectorTest.php(5 тестов: обычный юзер без MFA, админские роли с MFA, неизвестный логин с MFA, фича выключена без хоста, eloquent-режим не затронут). config/ldap.php: подключениеdirect+ списокmfa.admin_roles(база в коде, добавления через env).- Подсказка «Подтвердите вход в приложение Multifactor» и озвучка на странице входа показываются как раньше; для неадминов вход просто произойдёт сразу. Текст озвучки можно поменять в «Настройках озвучки входа».
Миграции
Не требуются.