Repository navigation
v0.1.0-beta.4 — Связи с пользователями и права приложений
Pre-releaseЧто изменилось
- Обычные коллекции поддерживают связь «Многие к одному» с системными пользователями. При создании поля выберите «Пользователи · системная»: например, так можно добавить руководителя отдела. В форме и таблице отображаются имя и почта, доступны поиск и фильтр; API и SDK сохраняют UUID.
- В OAuth-приложениях появился режим управления доступом через политики. В политике можно разрешить вход в приложение и назначить его отдельные права, включая права LavinMQ.
- Права приложения объединяются из политик пользователя и передаются в
resource_access[audience].roles. Изменение набора прав требует нового согласия; ожидающий обмен кода не получает права, добавленные после подтверждения. - Обновлены API-документация, переводы интерфейса и проверки ограничений доступа.
Для LavinMQ при включении управления через политики оставьте mgmt_scopes = openid profile email. Права вида lavinmq.tag:monitoring назначаются в политиках; audience и resource_server_id брокера должны совпадать с Audience приложения. До включения этого режима существующая конфигурация работает по-прежнему.
Обновление
Обновляйте Core и UI одной версией:
ghcr.io/asmblyr/collaborative-core:0.1.0-beta.4
ghcr.io/asmblyr/collaborative-ui:0.1.0-beta.4
Helm chart: oci://ghcr.io/asmblyr/charts/collaborative, версия 0.1.0-beta.4.
Релиз содержит две миграции. Перед обновлением сохраните резервную копию PostgreSQL; в Helm миграции выполняются отдельным Job. Новые пользовательские поля автоматически не создаются. Существующие OAuth-приложения сохраняют прежний режим доступа, пока управление через политики не включено в их настройках.
Поиск и назначение пользователей требуют права чтения раздела «Пользователи». Связь поддерживает запрет удаления пользователя или очистку ссылки; каскадное удаление, обратные поля и чтение внутренних полей профиля через /items недоступны. Уже выданный JWT внешнего сервиса может оставаться действительным до окончания своего срока — до пяти минут.