如何从 REST API(PUT 方法)更新 Keycloak 密码?

1 api rest put postman keycloak

我使用 LDAP 用户设置了一个 keycloak 服务器,以便在我的应用程序上利用 SSO。我想通过 Keycloak API 更改应用程序中登录用户的密码。因此,将来我的 Angular 应用程序将能够向 keycloak API 发出请求来更改登录用户的密码。

因此,我尝试执行文档中指示的操作(方法 PUT,重置密码),但没有成功......我用邮递员进行了测试,我想知道我的令牌是否是要使用的令牌?问题是否来自其他地方?

我有这个网址: PUT {url}/auth/admin/realms/{realm}/users/{id user}/reset-password/

我有这个标题:

Content-type application/json

我有这个身体:

{
    "pass" : {
        "type": "password",
        "temporary": false,
        "value": "my-new-password"
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我没有尝试快速更新令牌,我会收到 401 错误(这让我说问题可能不是来自令牌),而当我通过 postman oAuth 2.0 获得新令牌时,我会收到 403 或 400 错误

我有时会收到这样的消息:

Unrecognized field "pass" (class org.keycloak.representations.idm.CredentialRepresentation), not marked as ignorable

请帮我 !

你可以在这里看到我在邮递员中的授权,我不知道什么是“状态”

rav*_*iru 5

的主体PUT应该是 CredentialRepresentation,即

{
  "type":"password",
  "value":"my-new-password",
  "temporary":false
}
Run Code Online (Sandbox Code Playgroud)