0

我正在开发一个将 UAA-API 与我的 java 控制器链接的 java 客户端。我在实现密码更改功能时遇到了问题。即使使用 Postman,我也无法获得预期的结果。

以下是我提出请求的方式:我的 API 端点是:

https://2bcddc1b-01be-4d79-a2c4-ee583984f538.predix-uaa.run.aws-usw02-pr.ice.predix.io/Users/8f47875b-a1c8-47d4-bdde-79eb178eaed8/password

以下是标题:

Content-Type: application/json
Authorization: Bearer <user-access-token-generated after login>
Pragma: no-cache

每次我提出请求时,它都会给出以下响应:

{
    "error": "access_denied",
    "error_description": "Invalid token does not contain resource id (password)"
}

这是 API:

https://github.com/cloudfoundry/uaa/blob/master/docs/UAA-APIs.rst#change-password-put-users-id-password
4

1 回答 1

0

端点需要 password.write 范围。

访问令牌包含范围。为了使访问令牌包含 password.write 范围,客户端和用户都必须具有 password.write 范围

password.write 是默认用户范围 - 所有用户都拥有它

在您的情况下,收到令牌的客户端没有 password.write,因此您访问令牌也不会拥有它。

于 2016-05-16T14:32:01.707 回答