搜索

12.7. 集成示例

download PDF

3scale 中的服务 API 被配置为使用 OpenID Connect 身份验证。服务 API 上的 公共基本 URL 配置为 https://api.example.com专用基本 URL 配置为 https://internal-api.example.com

OpenID Connect Issuer 字段在 API 集成中被设置为 https://zync:/auth/realms/myrealm,而 realm myrealm 中的客户端 zync 具有正确的服务帐户角色。

3scale 中有一个具有 myclientid 客户端 ID、myclientsecret 客户端 secret 和 https://myapp.example.com 重定向 URL 的应用。

在 RH-SSO 域中,myrealm 域中也存在具有这些值的客户端:

  • 客户端 ID: myclientid
  • Secret: myclientsecret
  • 有效的 Redirect URIs:https://myapp.example.com

对于这个客户端,启用标准流。myrealm 域中配置了具有 myuser 用户名和 mypassword 密码的用户。

流程如下:

  1. 使用端点 https://idp.example.com/auth/realms/myrealm/protocol/openid-connect/auth,应用向 RH-SSO 发送授权请求。在请求中,应用程序提供了这些参数: myclientid 客户端 ID 和 https://myapp.example.com 重定向 URL。
  2. RH-SSO 显示登录窗口,其中用户必须提供用户的凭据:Username myuser 和密码 mypassword
  3. 根据配置,如果这是用户首次在此特定应用中进行身份验证,则将显示同意窗口。
  4. 用户进行身份验证后,应用会使用端点 https://idp.example.com/auth/realms/myrealm/protocol/openid-connect/token 向 RH-SSO 发送令牌请求,并提供客户端 ID myclientid、客户端 secret myclientsecret 和 Redirect URL https://myapp.example.com
  5. RH-SSO 返回带有 "access_token" 字段 eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lk…​xBArqF-A 的 JSON。
  6. 应用程序向 https://api.example.com 发送 API 请求到带有标头 Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lk…​xBArqF-A
  7. 应用程序应该从 https://internal-api.example.com 收到成功的响应。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.