【发布时间】:2015-10-01 18:12:14
【问题描述】:
我正在构建一个受 Keycloak 保护的 AngularJS 应用程序。 每个用户都应在其用户配置文件中更新其密码。
调用 Keycloak API 获取密码
GET /auth/realms/{realm_name}/account/password
从 Keycloak 返回 HTML 内容。 我想构建自己的表单来更新用户的密码。
在我找到的 Keycloak 文档中
POST /auth/realms/{realm_name}/account/password
需要属性
{
'password' => user's current password
'password-new' => new password
'password-confirm' => new password again
'stateChecker' => token from keycloak
}
打电话
POST /auth/realms/{realm_name}/account/password
没有 'stateChecker' 属性会导致错误。该属性是必需的。
所以这是我的问题:
- 如何从登录用户的 keycloak 中获取
stateChecker的值(在 Keycloak 中它位于隐藏的输入字段中)? - 还有其他方法可以通过 REST API 调用更改用户密码吗?
提前致谢。
注意:
调用:
POST /auth/realms/{realm_name}/account/password
具有硬编码的属性和值
{
'password': 'somepasswd',
'password-new': 'someNEWpasswd',
'password-confirm': 'someNEWpasswd',
'stateChecker': '<token copied and pasted from keycloak>',
}
正在工作!
【问题讨论】:
-
你用的是什么版本的keycloak?
标签: angularjs rest authentication change-password keycloak