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 に答える