58.3. API 用户


使用必要的权限,创建 REST API 用户来直接访问安全的 Cruise Control REST API。

这允许定义角色和权限,以允许高级用户和第三方应用程序访问 Cruise Control REST API,而无需禁用基本的 HTTP 身份验证。

以下用例可以在不禁用 API 安全性的情况下从访问 Cruise Control API 中受益:

  • 使用 Cruise Control 用户界面监控 Apache Kafka 管理的 Kafka 集群的流。
  • 通过流为 Apache Kafka 或 Cruise Control sensor 指标收集 Cruise Control 特定统计信息,如集群、分区加载和用户任务的详细信息。
  • 在安全环境中调试 Cruise Control。

Cruise Control 以 Jetty 的 HashLoginService 文件格式读取 API 用户的身份验证凭据。

支持标准 Cruise Control USERVIEWER 角色。* USER 可以访问除 bootstrap 和 training 以外的所有 GET 端点。* VIEWER 可以访问 kafka_cluster_stateuser_tasksreview_board 端点。在这个示例中,在名为 cruise-control-auth.txt 的文本文件中,以支持的格式定义两个自定义 API 用户:

userOne: passwordOne, USER
userTwo: passwordTwo, VIEWER
Copy to Clipboard Toggle word wrap

然后,使用以下命令使用此文件创建 secret:

oc create secret generic cruise-control-api-users-secret  --from-file=cruise-control-auth.txt=cruise-control-auth.txt
Copy to Clipboard Toggle word wrap

接下来,在 Kafka 资源的 spec.cruiseControl.apiUsers 部分中引用 secret:

Cruise Control apiUsers 配置示例

apiVersion: kafka.strimzi.io/v1beta2
kind: Kafka
metadata:
  name: my-cluster
spec:
  # ...
  cruiseControl:
    # ...
    apiUsers:
      type: hashloginservice
      valueFrom:
        secretKeyRef:
          name: cruise-control-api-users-secret
          key: cruise-control-auth.txt
     ...
Copy to Clipboard Toggle word wrap

Apache Kafka 的流会解码并使用此 secret 的内容来填充 Cruise Control 的 API 身份验证凭证文件。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat