4.4.6. 配置 OAuth 2.0 身份验证

OAuth 2.0 用于 Kafka 客户端和 AMQ Streams 组件之间的交互。

要将 OAuth 2.0 用于 AMQ Streams,您必须:

4.4.6.1. 将红帽单点登录配置为 OAuth 2.0 授权服务器

这个步骤描述了如何将 Red Hat Single Sign-On 部署为授权服务器,并将其配置为与 AMQ Streams 集成。

授权服务器为身份验证和授权以及用户、客户端和权限的管理提供中央点。红帽单点登录有一个域概念,其中 代表一组单独的用户、客户端、权限和其他配置。您可以使用默认的 master 域,或者创建一个新域。每个域公开自己的 OAuth 2.0 端点,这意味着应用客户端和应用服务器都需要使用相同的域。

要将 OAuth 2.0 与 AMQ Streams 搭配使用,您可以使用 Red Hat Single Sign-On 部署来创建和管理身份验证域。

注意

如果您已经部署了红帽单点登录,您可以跳过部署步骤并使用当前的部署。

开始前

您需要熟悉使用红帽单点登录。

有关部署和管理说明,请参阅:

先决条件

  • AMQ Streams 和 Kafka 正在运行

对于 Red Hat Single Sign-On 部署:

流程

  1. 将红帽单点登录部署到您的 OpenShift 集群。

    在 OpenShift Web 控制台中检查部署的进度。

  2. 登录红帽单点登录管理控制台,为 AMQ Streams 创建 OAuth 2.0 策略。

    部署 Red Hat Single Sign-On 时会提供登录详情。

  3. 创建和启用域。

    您可以使用现有的 master 域。

  4. 如果需要,调整域的会话和令牌超时。
  5. 创建名为 kafka-broker 的客户端。
  6. Settings 选项卡中设置:

    • 访问类型机密
    • 标准流启用OFF,以禁用此客户端的 Web 登录
    • 支持服务于 ON,允许此客户端使用自己的名称进行身份验证
  7. 单击 Save,然后再继续。
  8. Credentials 选项卡中,记下 AMQ Streams Kafka 集群配置中使用的 secret。
  9. 为要连接到 Kafka 代理的任何应用程序客户端重复客户端创建步骤。

    为每个新客户端创建定义。

    在配置中,您将使用名称作为客户端 ID。

接下来要做什么

部署和配置授权服务器后,将 Kafka 代理配置为使用 OAuth 2.0