示例:用于基于 OAuth 2.0 的认证的 Credentials REST API

此示例显示如何使用云操作 Credentials REST API 来管理客户机应用程序的基于 OAuth 2.0 的认证的客户机凭证。

准备工作
  • 授权:API 的调用者必须具有帐户管理员角色。
  • 所有 API 调用都需要在 IBM® -CSRF-TOKEN 标头中输入有效的跨站点伪造请求(CSRF)令牌。 可使用 POST /instance/services/csrf_token 获取 CSRF 令牌。 有关更多信息,请参阅 防止跨站点请求伪造
检索 OAuth 2.0 客户机凭证列表
使用以下调用来显示预订的客户机凭证列表:
GET /instance/services/credentials/oauth_clients
将返回客户机凭证列表。 每个条目都包含客户机标识、凭证的创建者、创建时间和描述。 要向调用添加页面调度,请使用偏移量和大小参数:
GET /instance/services/credentials/oauth_clients?offset=11&size=10
创建一组 OAuth 2.0 客户机凭证
客户机凭证由客户机标识和客户机密钥组成。 通过在调用主体的 JSON 对象中指定的前缀来生成客户机标识。 最佳实践是同时还指定描述,以便您以后可轻松识别凭证的适用对象。
例如,如果想要为贷款应用程序创建凭证,请使用以下调用:
POST /instance/services/credentials/oauth_clients
...
{
  "id_prefix": "loanapp"
  "description": "OAuth credentials for loan application."  
}
返回的对象包含所生成的客户机标识和客户机密钥。 结合使用这些凭证与服务凭证,对贷款应用程序的云环境进行基于 OAuth 的访问控制。 更多信息,请参阅 《在客户端应用程序中使用基于 2.0 的OAuth认证 》。
删除一组 OAuth 2.0 客户机凭证
使用以下调用来删除客户机凭证:
DELETE /instance/services/credentials/{client_id}
将删除客户机标识和客户机密钥。 如果客户机应用程序仍在使用基于 OAuth 2.0 的认证的凭证,那么它们将无法获取新的刷新令牌:而是返回 HTTP BAD_REQUEST (400) 响应代码。 更多信息,请参阅 《在客户端应用程序中使用基于 2.0 的OAuth认证 》中的刷新步骤。