Logto v1.44.0 уже здесь. В нем добавлены доверенные устройства для MFA, пользовательские и длинные идентификаторы пользователей для миграций, Cap как CAPTCHA с самостоятельным размещением, политики аутентификации для SAML-приложений, параметр аутентификации `theme` и обновляемые токены для динамических клиентов приложений, таких как ChatGPT и Codex.
YijunDeveloper
Хватит тратить недели на аутентификацию пользователей
Запускайте безопасные приложения быстрее с Logto. Интегрируйте аутентификацию пользователей за считанные минуты и сосредоточьтесь на вашем основном продукте.
Logto v1.44.0 добавляет доверенные устройства для MFA, пользовательские идентификаторы для миграций, Cap как CAPTCHA с самостоятельным размещением и обновляемые токены для динамических клиентов приложений. Вот что нового.
Пользователи, проходящие MFA, теперь могут доверять своему браузеру и пропускать MFA до истечения срока доверия.
Включите это в Консоль > Многофакторная аутентификация и установите срок доверия (от 1 до 365 дней, по умолчанию 30).
Организации могут запретить доверенные устройства для своих участников.
Администраторы управляют доверенными устройствами пользователя в Консоли или через Management API. Пользователи управляют своими в Account Center или через Account API.
Подпишитесь на вебхуки TrustedDevice.Created и TrustedDevice.Deleted.
Доверенное устройство покрывает только этап MFA при входе. Проверка личности и другие чувствительные операции по-прежнему требуют подтверждения. См. руководство по доверенным устройствам MFA.
Сохраняйте свои идентификаторы пользователей при миграции#
Идентификаторы пользователей теперь могут быть длиной до 128 символов, ранее было 12 или 21.
Если Cloudflare Turnstile или Google reCAPTCHA заблокированы или ненадежны для твоих пользователей, теперь можно использовать Cap — открытую CAPTCHA на доказательстве работы, размещаемую самостоятельно. Разверните Cap Standalone и добавьте ее в Консоль > Безопасность > CAPTCHA.
В reCAPTCHA Enterprise теперь также можно установить порог оценки (от 0.0 до 1.0) вместо фиксированного значения 0.5.
Обновляемые токены для динамических клиентов приложений#
MCP-клиенты, такие как ChatGPT и Codex, запрашивают offline_access без prompt=consent, поэтому по протоколу OpenID Connect они не получают refresh-токен, и пользователям приходится повторно входить, когда истекает срок действия access-токена. Включите Добавить окно согласия для offline access в настройках динамического приложения в разделе Client compatibility, и Logto добавит соответствующее окно согласия.
Это касается только динамических приложений (CIMD-клиентов). Настройка является экспериментальной и по умолчанию выключена.
SAML-приложения могут использовать существующую сессию Logto: выключите Всегда требовать аутентификацию (по умолчанию остается свежая аутентификация). Также можно требовать подписанные запросы на аутентификацию, а утверждения теперь указывают реальное время аутентификации.
Параметр аутентификации theme: Передайте theme=light или theme=dark, чтобы отрисовать окно входа в соответствующей теме для всего процесса вместо использования настройки ОС. См. параметры аутентификации.
В SDK @logto/api теперь есть paginate() — типизированный асинхронный итератор для страниц, а также тайм-ауты запросов и более надежная обработка токенов.
Страница входа больше не становится пустой при автоматическом переводе браузером.
Социальная регистрация предлагает "связать и продолжить" только когда конфликтующий идентификатор может войти с помощью кода подтверждения.
OIDC SSO-issuer с завершающим слэшем теперь обрабатываются корректно.
В настройке OIDC больше нельзя использовать комбинацию none с другими значениями prompt.
Тексты ошибок API возвращаются на базовом языке, если региональная версия недоступна.
Результаты тестов вебхуков больше не отображаются на страницах других вебхуков.
Коннектор Apple: более прозрачная настройка Services ID и устранение проблем.
Коннектор DingTalk (web): corpId теперь сохраняется в rawData.
Требуется миграция базы данных: Перед запуском v1.44.0 выполните logto db alteration deploy (или npm run alteration deploy в core-образе). Этот релиз расширяет столбцы идентификаторов пользователей до 128 символов и добавляет столбец конфигурации SAML. Откат невозможен, если хотя бы один идентификатор пользователя превышает старый лимит.
Остаточные роли PostgreSQL: Теперь команда logto db seed проверяет роли, оставшиеся после предыдущей базы Logto, перед созданием любых таблиц, и объясняет, почему удаление базы не убрало их. (Благодарность @ryanchou1994)