无法为 IBM Visual Recognition 生成刷新令牌 API

Unable to generate refresh token for IBM Visual Recognition API

我正在尝试使用基于 IAM 令牌的身份验证。我能够生成 'access token' 并且可以使用 'access token' 进行操作。现在我在生成 'refresh token' 时遇到问题。我正在关注这个 link https://cloud.ibm.com/docs/services/watson?topic=watson-iam.

我正在使用以下命令生成刷新令牌。这里授权 header 值使用用户名作为 'apikey' 获得,值作为我的密钥。我在生成 'access token'.

时收到的 {refreh-token} 值

curl -k -X POST --header "Authorization: Basic Yng6Yng=" --data-urlencode "grant_type=refresh_token" \ --data-urlencode "refresh_token={refresh-token}" "https://iam.bluemix.net/identity/token"

我希望获得刷新令牌但出现错误 {"context":"requestId":"021c3482...""},"errorCode":"BXNIM0507E","errorMessage":"For OpenID Connect related APIs, you need to send your client credentials as basic authorization header"}

有人可以帮助我了解问题所在吗

https://cloud.ibm.com/docs/services/watson?topic=watson-iam中的描述对刷新情况的描述不正确。我将 follow-up 与文档团队一起更新该部分。 这是如何获取 API 键的令牌的一般描述: https://cloud.ibm.com/docs/iam?topic=iam-iamtoken_from_apikey

对于 API 用法,IBM Cloud 允许您在不提供客户端 ID/密码的情况下生成访问令牌。在这种情况下,假定 default 客户端 ID 仅允许为 API 密钥创建令牌,但无权使用任何其他授权类型 - 包括 grant_type refresh_token.因此,只需在第一次调用中从 API 密钥授予的响应中消除刷新令牌 - 您将无法使用它。

在 API 密钥用例中,使用 grant_type refresh_token 与获取具有 API 密钥授权类型的新访问令牌没有任何好处- 所有在内部完成的验证步骤(用户是否仍然存在/用户是否仍在帐户中/......)都是相同的。但是刷新令牌最终会过期 - API 键不会。