В платформе существует две встроенные сущности - команды и пользователи. Основным источником данных для авторизации является Dex, установленный в Deckhouse Kubernetes Platform. Создание встроенных пользователей и команд не поддерживается.
Принадлежность пользователя к командам определяется на основе информации из Dex и обновляется при каждой аутентификации пользователя.
Каждый пользователь может состоять в произвольном количестве команд. Принадлежность пользователя к командам определяется на основе групп в Dex.
Сихронизация
При первой авторизации пользователя в платформу для него создается внутренняя учетная запись. Команды пользователя синхронизируются при первой и каждой последующей авторизации пользователя.
Фильтрация групп при синхронизации
По умолчанию при синхронизации в DDP попадают все группы пользователя. Чтобы ограничить набор синхронизируемых команд, можно настроить правила фильтрации.
Настройка доступна в разделе «Администрирование» → «Команды» по кнопке «Правила синхронизации». Для настройки правил требуется разрешение edit:team-filter-rules.
Правила применяются по порядку цепочкой: каждое правило фильтрует результат предыдущего. Пустой список правил означает отсутствие фильтрации — синхронизируются все группы.
Режимы правил:
- Включить — оставить только команды, совпадающие с паттерном. Остальные исключаются.
- Исключить — оставить только команды, не совпадающие с паттерном. Совпадающие исключаются.
Паттерн задаётся в виде регулярного выражения (regex). Например:
^dev-.*— группы, начинающиеся сdev-;^team-(frontend|backend)$— группыteam-frontendиteam-backend;.*-prod$— группы, заканчивающиеся на-prod.
Порядок правил можно менять перетаскиванием. При пустом паттерне правило не применяется (пропускается).
Если пользователь входил в состав команды, а затем команда была отфильтрована правилами, то при следующей авторизации пользователь автоматически перестанет быть участником этой команды. Сама команда при этом останется в системе, её необходимо будет удалить вручную в разделе «Администрирование» → «Команды».
Параметры пользователей
Последняя активность
Время последней активности пользователя в платформе. Отображается в таблице пользователей в разделе «Администрирование» → «Пользователи». Обновляется при авторизации, либо при автоматической ротации JWT токена пользователя (интервал ротации зависит от конфигурации Dex и по умолчанию равен 10 минутам).
Время последней активности не обновляется при использовании API-токена, выписанного пользователем, либо при каких-либо действиях пользователя в платформе в интервале между автоматическими ротациями JWT токена.