4.4.6.4. 为 Kafka 组件配置 OAuth 2.0
这个步骤描述了如何将 Kafka 组件配置为使用授权服务器的 OAuth 2.0 身份验证。
您可以为以下对象配置身份验证:
- Kafka Connect
- Kafka MirrorMaker
- Kafka Bridge
在这种情况下,Kafka 组件和授权服务器会在同一集群中运行。
开始前
有关为 Kafka 组件配置 OAuth 2.0 身份验证的更多信息,请参阅:
先决条件
- AMQ Streams 和 Kafka 正在运行
- 为对 Kafka 代理的 OAuth 访问部署并配置了 OAuth 授权服务器
- 为 OAuth 2.0 配置 Kafka 代理
步骤
创建客户端机密,并将它作为环境变量挂载到组件上。
例如,此处我们为 Kafka Bridge 创建客户端
Secret
:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
clientSecret
键必须采用 base64 格式。
为 Kafka 组件创建或编辑资源,以便为身份验证属性配置 OAuth 2.0 身份验证。
对于 OAuth 2.0 身份验证,您可以使用:
- 客户端 ID 和 secret
- 客户端 ID 和刷新令牌
- 访问令牌
- TLS
KafkaClientAuthenticationOAuth 模式参考提供了每个模式的示例。
例如,此处的 OAuth 2.0 使用客户端 ID 和 secret 分配给 Kafka Bridge 客户端,以及 TLS:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 根据您应用 OAuth 2.0 身份验证的方式以及授权服务器的类型,您可以使用额外的配置选项:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将更改应用到 Kafka 资源的部署。
oc apply -f your-file
oc apply -f your-file
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 检查日志中的更新,或者查看 pod 状态转换:
oc logs -f ${POD_NAME} -c ${CONTAINER_NAME} oc get pod -w
oc logs -f ${POD_NAME} -c ${CONTAINER_NAME} oc get pod -w
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 滚动更新配置组件,以使用 OAuth 2.0 身份验证与 Kafka 代理交互。