Обновление продукта Logto: Статус соответствия, настраиваемый JWT, API ресурсы для ролей организации и многое другое
Мы рады поделиться последними обновлениями по вопросам соответствия и новыми функциями. Для команды Logto это был продуктивный месяц, так что убедитесь, что вы заварили свой любимый кофе перед тем, как начать изучение.
Статус соответствия
Logto Cloud теперь проходит все проверки SOC 2 на платформе автоматизации соответствия. Мы запланировали аудит SOC 2 Type I и работаем над аудитом SOC 2 Type II.
Настраиваемый JWT
JWT токены доступа теперь можно настраивать с использованием дополнительных данных путём добавления кода на языке JavaScript. Эта функция полезна, когда вам нужно включить в токен дополнительные данные для совместимости с другими системами.
Чтобы использовать эту функцию, перейдите на вкладку "Custom JWT" в Консоли. Настраивать можно как пользовательские, так и M2M (machine-to-machine) токены.
Перед внесением изменений вы можете использовать кнопку "Run test" для того, чтобы увидеть, как будет выглядеть токен с пользовательскими данными.
Смотрите 🎫 Настраиваемые данные JWT для получения дополнительной информации.
API ресурсы для ролей организации
Теперь вы можете назначать права доступа (scopes) от API ресурсов ролям организаций. Как и другие права доступа в шаблоне организации, эти права действуют на уровне организации, то есть они применяются только к конкретной орга низации.
Давайте рассмотрим пример:
- Есть API ресурс под названием
https://shopping.api/
. - У ресурса API есть два уровня доступа:
read
иwrite
. - Есть две роли в организации:
admin
иuser
. - Роль
admin
имеет оба уровня доступаread
иwrite
; рольuser
имеет только уровень доступаread
. - Пользователь Алиса назначена на роль
admin
в организацииfoo
, и на рольuser
в организацииbar
.
Когда Алиса пытается обменять организационный токен на ресурс https://shopping.api/
, она получит токен с правами доступа в зависимости от того, для какой организации она запрашивает токен.
Для организации foo
Алиса получит токен с правами доступа как на read
, так и на write
. Для организации bar
она получит токен только с правом доступа read
.
Смотрите 🏢 Организации (Мульти-арендность) для подробного введения в организации.
Разрешения для сторонних приложений
Организационные ресурсы API также могут использоваться при настройке разрешений для сторонних приложений. Пользователю будет предложено выбрать организацию при настройке разрешений для стороннего приложения.
Пользовательские данные организации
Теперь вы можете сохранять дополнительные данные, связанные с организацией, с помощью поля customData
на уровне организации, через:
- Редактирование на странице деталей организации в Консоли.
- Указание поля
customData
при использовании Management APIs организации.
Коннекторы
- Добавлен коннектор Hugging Face.
- В коннектор GitHub добавлен параметр
user:email
в состав стандартных настроек для получения списка приватных email адресов аккаунта GitHub.- Теперь действует выбор проверенного основного email среди списка приватных email адресов в случае, если пользователь не указал публичный email для аккаунта GitHub.
- Удален знак плюса перед номером телефона в коннекторе feishu (#5801). Спасибо @kamto7.
Улучшения
- Добавлена поддержка Redis Cluster и дополнительные опции TLS для соединений с Redis (#5619). Спасибо @alekitto.
- Коннекторы OIDC и OAuth 2 теперь поддерживают клиентские методы аутентификации
client_secret_basic
иclient_secret_jwt
для конечной точки токена. - Когда пользователь удаляется или блокируется через Management API, он будет выведен из системы в Logto и его сеансы будут немедленно аннулированы.
- Поддержка параметра
resource
, разделенного запятыми, так как некоторые библиотеки не поддерживают массивы ресурсов. - Добавлен API для получения организационных прав пользователя на основе ролей пользователя в организации ().
GET /api/organizations/:id/users/:userId/scopes
- Добавлено руководство по интеграции Java Spring Boot для веб-приложений.
- Добавлены фразы на
zh-cn
на странице со гласия OIDC (#5606). Спасибо @the-pawn-2017.
Исправления
- API приглашений организации теперь обрабатывает email приглашенного без учета регистра.
- Management API не будет возвращать статус 500 в продакшене для кодов состояния, не указанных в спецификации OpenAPI.
- Отныне возвращается код 403 вместо 400, когда Logto пытается выдать токен доступа пользователю, не имеющему необходимых прав, особенно при предоставлении доступа к ресурсам, связанным с организацией.
- Исправлена неправильная обратная связь социальной авторизации, которая отправлялась в нативный контейнер (например, WKWebView в iOS).
- Исправлена ошибка, из-за которой событие hook регистрации нового пользователя от SSO не срабатывало.
- Исправлена ошибка, при которой индикатор ресурса API не работал, если индикатор не сопровождался слэшем или именем пути.