Keycloak массовый импорт пользователей

Есть ли у кого-нибудь мысли о том, как можно импортировать очень большое количество пользователей в Keycloak.

Мы находимся в процессе обновления с 2.5.5 до 4.0.0, и нам пришлось перейти с MongoDB на MySQL. Мы смогли экспортировать нашу пользовательскую базу, но более 280 тысяч пользователей были импортированы обратно в Keycloak. Процесс импорта занимает 25 минут, чтобы импортировать один файл с 500 пользователями, что на самом деле не кажется практичным, поскольку это заняло бы около 9/10 дней, чтобы импортировать базу пользователей, если бы мы работали 24/7.

Любые мысли или идеи будут оценены.


person Chris Latta    schedule 21.05.2018    source источник
comment
Вы смогли найти какое-нибудь решение? Сейчас мы также боремся с производительностью пользовательской синхронизации из внешней базы данных. Вроде все в KC приводит к n + 1 проблеме ...   -  person malejpavouk    schedule 23.01.2019
comment
В итоге мы написали специальный импорт, который напрямую записывал в новую таблицу MySQL Keycloak. Немного мучительно, потребовались месяцы устранения неполадок и настройки, но в конце концов все получилось.   -  person Chris Latta    schedule 24.01.2019
comment
На всякий случай, если кто-то сюда смотрит: в конце концов мы получили EntityManager из Keycloak (session.getProvider (JpaConnectionProvider.class) .getEntityManager ()) и одним нажатием загрузили все сопоставления ролей и групп, которые помогли нам n + 1 выпуск.   -  person malejpavouk    schedule 24.01.2019


Ответы (1)


Я понимаю, что немного опаздываю на вечеринку здесь ...

Keycloak 8 (и новее) имеет механизм массового импорта пользователей через файл .json: https://www.keycloak.org/docs/8.0/server_admin/index.html#_export_import

Если у вас есть какой-то механизм для выгрузки существующих пользователей в файл .json, это значительно упростит импорт.

person Joel B    schedule 19.02.2020