Я создаю приложение AngularJS, защищенное Keycloak. Каждый пользователь должен обновить свой пароль в своем профиле пользователя.
Вызов API Keycloak для получения пароля
ПОЛУЧИТЬ / auth / realms / {realm_name} / account / password
возвращает HTML-контент из Keycloak. Я хотел бы создать свою собственную форму для обновления пароля пользователя.
В документации Keycloak я нашел
POST / auth / realms / {realm_name} / account / пароль
что требует атрибутов
{
'password' => user's current password
'password-new' => new password
'password-confirm' => new password again
'stateChecker' => token from keycloak
}
Звонок
POST / auth / realms / {realm_name} / account / пароль
без атрибута stateChecker вызывает ошибку. Этот атрибут необходим.
Итак, вот мои вопросы:
- Как мне получить значение
stateChecker
из keycloak для вошедшего в систему пользователя (в Keycloak оно находится в скрытом поле ввода)? - Есть ли еще одна возможность изменить пароль пользователя с помощью вызова REST API?
Заранее спасибо.
Примечание.
Звонок:
POST / auth / realms / {realm_name} / account / пароль
с жестко заданными атрибутами и значениями
{
'password': 'somepasswd',
'password-new': 'someNEWpasswd',
'password-confirm': 'someNEWpasswd',
'stateChecker': '<token copied and pasted from keycloak>',
}
работает!