Збереження ролей користувачів до Keycloak (Save user roles)

🌐 Цей документ доступний українською та англійською мовами. Використовуйте перемикач у правому верхньому куті, щоб змінити версію.
Таблиця 1. Короткі відомості про делегат
Назва Пояснення

Бізнес-назва

Save user roles

Службова назва

${keycloakSaveUserRoleConnectorDelegate}

Назва файлу у бібліотеці розширень

keycloakSaveUserRoleConnectorDelegate.json

1. Загальний опис

Загальне інтеграційне розширення-делегат надає можливість взаємодіяти із сервіс управління ідентифікацією та доступом Keycloak для зміни ролей користувача. Делегат налаштовується у сервісних задачах (Service Task) бізнес-процесу за допомогою шаблону Save user roles.

2. Налаштування шаблону у бізнес-процесі

  1. Створіть Service Task.

  2. У полі Name вкажіть назву сервісної задачі.

  3. Застосуйте шаблон делегата Save user roles зі списку доступних у каталозі.

  4. У секції Inputs > Roles передайте ролі, які необхідно призначити користувачу. Наприклад, officer.

    У нашому прикладі передається одна роль (officer) масивом (List).

    Доступні типи змінних, через які можна передати ролі:

    • List — список/масив;

    • Map — ключі-значення;

    • Script — скрипт;

    • String or expression — рядок або вираз.

    Приклад 1. Масив ролей, які необхідно призначити користувачу
    ['officer', 'manager1', 'manager2']
    • officer — системна роль, яка призначається користувачу після реєстрації.

    • manager1 та manager2 — можуть бути регламентними ролями у реєстрі.

  5. Вкажіть ім’я користувача (username) у системі Keycloak. Це можна зробити, наприклад, за допомогою juel-функції initiator():

    ${initiator().userName}
  6. Оберіть реалм Keycloak, до якого відноситься користувач. Наприклад, officer, при реєстрації посадових осіб.

    Доступні опції реалмів:

    • CITIZEN — реалм, в якому зберігаються отримувачі послуг та їх ролі.

    • OFFICER — реалм, в якому зберігаються посадові особи (надавачі послуг) та їх ролі.

  7. Вкажіть тип ролей, які можуть бути змінені для користувача. Доступні опції:

    • ALL ROLES — усі поточні ролі будуть заміщені переліком ролей, вказаних у секції Roles.

    • PLATFORM ROLES — поточні системні ролі, призначені користувачу, будуть заміщені переліком ролей, вказаних у секції Roles. Поточні регламентні/реєстрові ролі залишаться без змін.

    • REGISTRY ROLES — у користувача будуть заміщені лише регламентні/реєстрові ролі.

    • Якщо при налаштуванні делегата як input-параметри передати масив ролей, одна з яких — системна, а дві інші - регламентні (тут — officer та manager1 і manager2), то необхідно обрати опцію ALL ROLES.

    • Якщо при налаштуванні делегата передати системну роль (тут — officer), то необхідно обрати опцію PLATFORM ROLES.

    • Якщо при налаштуванні делегата передати регламентні ролі (тут — manager1 і manager2), то необхідно обрати опцію REGISTRY ROLES.

delegate save user roles 1